fixed a problem with the client restarting the login interface for ever

when the wrong password was typed
This commit is contained in:
daniel 2015-10-27 21:03:04 +01:00
parent 5d9215c493
commit 78e4e108c3

View file

@ -64,7 +64,7 @@ public class CoderClient extends Application{
public void start(Stage mainStage) throws Exception { public void start(Stage mainStage) throws Exception {
//setup logging //setup logging
LogUtil.setGlobalLevel(Level.INFO); LogUtil.setGlobalLevel(Level.FINE);
LogUtil.setGlobalFormatter(new CompactLogFormatter()); LogUtil.setGlobalFormatter(new CompactLogFormatter());
//setup GUI elements //setup GUI elements
@ -148,28 +148,6 @@ public class CoderClient extends Application{
selectServerDialog.showOnStage(mainStage); selectServerDialog.showOnStage(mainStage);
}else{ }else{
selectServerDialog.setErrorMessage(""); selectServerDialog.setErrorMessage("");
// create a guard for when the session is closed
new Thread(new Runnable(){
@Override
public void run() {
logger.fine("starting a session guard");
while(true){
if(session == null || !session.isConnected()){
logger.fine("session guard: no connection");
Platform.runLater(new Runnable() {
@Override
public void run() {
selectServerDialog.setErrorMessage("The current session was disconnected");
closeCurrentSession();
selectServerDialog.showOnStage(mainStage);
}
});
break;
}
Thread.yield();
}
logger.fine("terminating session guard");
}}).start();
loginDialog.showOnStage(mainStage); loginDialog.showOnStage(mainStage);
} }
} }
@ -199,6 +177,29 @@ public class CoderClient extends Application{
selectServerDialog.showOnStage(mainStage); selectServerDialog.showOnStage(mainStage);
return; return;
}else{ }else{
// create a guard for when the session is closed
new Thread(new Runnable(){
@Override
public void run() {
logger.fine("starting a session guard");
while(true){
if(session == null || !session.isConnected()){
logger.fine("session guard: no connection");
Platform.runLater(new Runnable() {
@Override
public void run() {
selectServerDialog.setErrorMessage("The current session was disconnected");
closeCurrentSession();
selectServerDialog.showOnStage(mainStage);
}
});
break;
}
Thread.yield();
}
logger.fine("terminating session guard");
}}).start();
loginDialog.setErrorMessage(""); loginDialog.setErrorMessage("");
setupSessionListener(); //resister a message listener to the session setupSessionListener(); //resister a message listener to the session
session.start(); //start receiving traffic from the server session.start(); //start receiving traffic from the server