Refactoring: splitting and renaming listeners
-Splitting ProjectListener into multiple event handlers -Renaming SessionListener to SessionEventHandler -Bug fixes
This commit is contained in:
parent
09d15b4a80
commit
b5e56ca2bf
14 changed files with 132 additions and 115 deletions
|
|
@ -9,14 +9,14 @@ import zutil.log.LogUtil;
|
|||
|
||||
import com.coder.client.session.ProjectMessageListener;
|
||||
import com.coder.client.session.Session;
|
||||
import com.coder.client.session.SessionListener;
|
||||
import com.coder.client.session.SessionEventHandler;
|
||||
import com.coder.server.message.CoderMessage;
|
||||
|
||||
public class SessionHandler{
|
||||
public static final Logger logger = LogUtil.getLogger();
|
||||
|
||||
private Session session;
|
||||
private HashSet<SessionListener> sessionListeners = new HashSet<SessionListener>();
|
||||
private HashSet<SessionEventHandler> sessionEventHandlers = new HashSet<SessionEventHandler>();
|
||||
private HashSet<ProjectMessageListener> messageListeners = new HashSet<ProjectMessageListener>();
|
||||
|
||||
public boolean setupConnection(String url, int port){
|
||||
|
|
@ -28,13 +28,13 @@ public class SessionHandler{
|
|||
for(ProjectMessageListener listener : messageListeners){
|
||||
session.addMessageListener(listener);
|
||||
}
|
||||
for(SessionListener listener : sessionListeners){
|
||||
listener.sessionConnectionSuccess();
|
||||
for(SessionEventHandler eventHandler : sessionEventHandlers){
|
||||
eventHandler.sessionConnectionSuccess();
|
||||
}
|
||||
return true;
|
||||
}else{
|
||||
for(SessionListener listener : sessionListeners){
|
||||
listener.sessionConnectionFailure();
|
||||
for(SessionEventHandler eventHandler : sessionEventHandlers){
|
||||
eventHandler.sessionConnectionFailure();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -46,14 +46,14 @@ public class SessionHandler{
|
|||
}else{
|
||||
boolean success = session.authenticate(username, clearTextPassword);
|
||||
if(success){
|
||||
for(SessionListener listener : sessionListeners){
|
||||
listener.sessionAuthenticationSuccess();
|
||||
for(SessionEventHandler eventHandler : sessionEventHandlers){
|
||||
eventHandler.sessionAuthenticationSuccess();
|
||||
}
|
||||
session.start();
|
||||
return true;
|
||||
}else{
|
||||
for(SessionListener listener : sessionListeners){
|
||||
listener.sessionAuthenticationFailure();
|
||||
for(SessionEventHandler eventHandler : sessionEventHandlers){
|
||||
eventHandler.sessionAuthenticationFailure();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -81,16 +81,16 @@ public class SessionHandler{
|
|||
logger.info("closing session to server");
|
||||
session.close();
|
||||
session = null;
|
||||
for(SessionListener listener : sessionListeners){
|
||||
listener.sessionDisconnected(retry);
|
||||
for(SessionEventHandler eventHandler : sessionEventHandlers){
|
||||
eventHandler.sessionDisconnected(retry);
|
||||
}
|
||||
}else{
|
||||
logger.fine("cannot close current session: session already terminated");
|
||||
}
|
||||
}
|
||||
|
||||
public void addSessionListener(SessionListener listener){
|
||||
this.sessionListeners.add(listener);
|
||||
public void addSessionEventHandler(SessionEventHandler eventHandler){
|
||||
this.sessionEventHandlers.add(eventHandler);
|
||||
}
|
||||
|
||||
public void addMessageListener(ProjectMessageListener listener) {
|
||||
|
|
@ -103,8 +103,8 @@ public class SessionHandler{
|
|||
public void triggerAuthenticationCancel() {
|
||||
if(session.isConnected() && !session.isAuthenticated()){
|
||||
closeCurrentSession(false);
|
||||
for(SessionListener listener : sessionListeners){
|
||||
listener.sessionAuthenticationCancel();
|
||||
for(SessionEventHandler eventHandler : sessionEventHandlers){
|
||||
eventHandler.sessionAuthenticationCancel();
|
||||
}
|
||||
}else{
|
||||
logger.warning("Can only cancel a connected but not yet authenticated authentication. ignoring call");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue