network logging + client network timing work
Some checks failed
studiorailgun/Renderer/pipeline/head There was a failure building this commit
Some checks failed
studiorailgun/Renderer/pipeline/head There was a failure building this commit
This commit is contained in:
parent
5c5ba32df7
commit
63ed9fc06d
@ -278,6 +278,7 @@ public class ClientNetworking implements Runnable {
|
|||||||
//attempt poll incoming messages
|
//attempt poll incoming messages
|
||||||
long readStart = System.currentTimeMillis();
|
long readStart = System.currentTimeMillis();
|
||||||
try {
|
try {
|
||||||
|
LoggerInterface.loggerNetworking.DEBUG_LOOP("[CLIENT] Try to read messages in");
|
||||||
parser.readMessagesIn();
|
parser.readMessagesIn();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
LoggerInterface.loggerNetworking.ERROR(e);
|
LoggerInterface.loggerNetworking.ERROR(e);
|
||||||
@ -291,6 +292,7 @@ public class ClientNetworking implements Runnable {
|
|||||||
//
|
//
|
||||||
//outgoing messages
|
//outgoing messages
|
||||||
try {
|
try {
|
||||||
|
LoggerInterface.loggerNetworking.DEBUG_LOOP("[CLIENT] Try to write messages out");
|
||||||
parser.pushMessagesOut();
|
parser.pushMessagesOut();
|
||||||
} catch(IOException e){
|
} catch(IOException e){
|
||||||
LoggerInterface.loggerNetworking.ERROR(e);
|
LoggerInterface.loggerNetworking.ERROR(e);
|
||||||
@ -301,6 +303,7 @@ public class ClientNetworking implements Runnable {
|
|||||||
|
|
||||||
//
|
//
|
||||||
//parses messages asynchronously
|
//parses messages asynchronously
|
||||||
|
LoggerInterface.loggerNetworking.DEBUG_LOOP("[CLIENT] Parse asynchronous messages");
|
||||||
boolean foundMessages = this.parseMessagesAsynchronously();
|
boolean foundMessages = this.parseMessagesAsynchronously();
|
||||||
|
|
||||||
|
|
||||||
@ -333,6 +336,13 @@ public class ClientNetworking implements Runnable {
|
|||||||
//TODO: kick us back to the main menu
|
//TODO: kick us back to the main menu
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
try {
|
||||||
|
//sleep
|
||||||
|
TimeUnit.MILLISECONDS.sleep(1);
|
||||||
|
} catch (InterruptedException ex) {
|
||||||
|
//silently ignore
|
||||||
|
// CodeUtils.todo(ex, "Handle sleep interrupt on server connection");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(this.socket != null){
|
if(this.socket != null){
|
||||||
|
|||||||
@ -18,6 +18,7 @@ public class AuthProtocol implements ClientProtocolTemplate<AuthMessage> {
|
|||||||
case AUTHREQUEST: {
|
case AUTHREQUEST: {
|
||||||
//Try login
|
//Try login
|
||||||
Globals.clientState.clientConnection.queueOutgoingMessage(AuthMessage.constructAuthDetailsMessage(Globals.clientState.clientUsername,Globals.clientState.clientPassword));
|
Globals.clientState.clientConnection.queueOutgoingMessage(AuthMessage.constructAuthDetailsMessage(Globals.clientState.clientUsername,Globals.clientState.clientPassword));
|
||||||
|
LoggerInterface.loggerNetworking.INFO("[CLIENT] Received auth request");
|
||||||
} break;
|
} break;
|
||||||
case AUTHSUCCESS: {
|
case AUTHSUCCESS: {
|
||||||
//clean password hash from memory
|
//clean password hash from memory
|
||||||
@ -27,11 +28,11 @@ public class AuthProtocol implements ClientProtocolTemplate<AuthMessage> {
|
|||||||
//request characters available to this player
|
//request characters available to this player
|
||||||
Globals.clientState.clientConnection.queueOutgoingMessage(CharacterMessage.constructRequestCharacterListMessage());
|
Globals.clientState.clientConnection.queueOutgoingMessage(CharacterMessage.constructRequestCharacterListMessage());
|
||||||
//log that we succeeded
|
//log that we succeeded
|
||||||
LoggerInterface.loggerAuth.INFO("Successfully logged in");
|
LoggerInterface.loggerNetworking.INFO("[CLIENT] Successfully logged in");
|
||||||
} break;
|
} break;
|
||||||
case AUTHFAILURE: {
|
case AUTHFAILURE: {
|
||||||
//TODO: handle better
|
//TODO: handle better
|
||||||
LoggerInterface.loggerAuth.ERROR("Auth failure",new Exception("Auth failure"));
|
LoggerInterface.loggerNetworking.ERROR("Auth failure",new Exception("Auth failure"));
|
||||||
} break;
|
} break;
|
||||||
//ignore stack
|
//ignore stack
|
||||||
case AUTHDETAILS: {
|
case AUTHDETAILS: {
|
||||||
|
|||||||
@ -238,6 +238,7 @@ public class ServerConnectionHandler implements Runnable {
|
|||||||
//
|
//
|
||||||
//parse messages both incoming and outgoing
|
//parse messages both incoming and outgoing
|
||||||
try {
|
try {
|
||||||
|
LoggerInterface.loggerNetworking.DEBUG_LOOP("[SERVER] Try to read messages in");
|
||||||
receivedMessageThisLoop = this.parseMessages();
|
receivedMessageThisLoop = this.parseMessages();
|
||||||
} catch (SocketException e) {
|
} catch (SocketException e) {
|
||||||
//if we get a SocketException broken pipe (basically the client dc'd without telling us)
|
//if we get a SocketException broken pipe (basically the client dc'd without telling us)
|
||||||
@ -320,6 +321,7 @@ public class ServerConnectionHandler implements Runnable {
|
|||||||
//Read in messages
|
//Read in messages
|
||||||
//
|
//
|
||||||
//attempt poll incoming messages
|
//attempt poll incoming messages
|
||||||
|
LoggerInterface.loggerNetworking.DEBUG_LOOP("[SERVER] Try to read messages in");
|
||||||
networkParser.readMessagesIn();
|
networkParser.readMessagesIn();
|
||||||
rVal = networkParser.hasIncomingMessaage();
|
rVal = networkParser.hasIncomingMessaage();
|
||||||
|
|
||||||
@ -342,6 +344,7 @@ public class ServerConnectionHandler implements Runnable {
|
|||||||
//
|
//
|
||||||
//ponder incoming messages
|
//ponder incoming messages
|
||||||
while(networkParser.hasIncomingMessaage()){
|
while(networkParser.hasIncomingMessaage()){
|
||||||
|
LoggerInterface.loggerNetworking.DEBUG_LOOP("[SERVER] Handle async messages");
|
||||||
NetworkMessage message = networkParser.popIncomingMessage();
|
NetworkMessage message = networkParser.popIncomingMessage();
|
||||||
this.messageProtocol.handleAsyncMessage(message);
|
this.messageProtocol.handleAsyncMessage(message);
|
||||||
}
|
}
|
||||||
@ -363,6 +366,7 @@ public class ServerConnectionHandler implements Runnable {
|
|||||||
//Send out messages
|
//Send out messages
|
||||||
//
|
//
|
||||||
//push outgoing message
|
//push outgoing message
|
||||||
|
LoggerInterface.loggerNetworking.DEBUG_LOOP("[SERVER] Try to write messages out");
|
||||||
networkParser.pushMessagesOut();
|
networkParser.pushMessagesOut();
|
||||||
try {
|
try {
|
||||||
//sleep
|
//sleep
|
||||||
|
|||||||
@ -3,6 +3,7 @@ package electrosphere.net.server.protocol;
|
|||||||
import electrosphere.auth.AuthenticationManager;
|
import electrosphere.auth.AuthenticationManager;
|
||||||
import electrosphere.engine.EngineState;
|
import electrosphere.engine.EngineState;
|
||||||
import electrosphere.engine.Globals;
|
import electrosphere.engine.Globals;
|
||||||
|
import electrosphere.logger.LoggerInterface;
|
||||||
import electrosphere.net.parser.net.message.AuthMessage;
|
import electrosphere.net.parser.net.message.AuthMessage;
|
||||||
import electrosphere.net.parser.net.message.PlayerMessage;
|
import electrosphere.net.parser.net.message.PlayerMessage;
|
||||||
import electrosphere.net.server.ServerConnectionHandler;
|
import electrosphere.net.server.ServerConnectionHandler;
|
||||||
@ -17,7 +18,7 @@ public class AuthProtocol implements ServerProtocolTemplate<AuthMessage> {
|
|||||||
@Override
|
@Override
|
||||||
public AuthMessage handleAsyncMessage(ServerConnectionHandler connectionHandler, AuthMessage message) {
|
public AuthMessage handleAsyncMessage(ServerConnectionHandler connectionHandler, AuthMessage message) {
|
||||||
switch(message.getMessageSubtype()){
|
switch(message.getMessageSubtype()){
|
||||||
case AUTHDETAILS:
|
case AUTHDETAILS: {
|
||||||
//auth check
|
//auth check
|
||||||
int loginId = Globals.authenticationManager.authenticate(message.getuser(), message.getpass());
|
int loginId = Globals.authenticationManager.authenticate(message.getuser(), message.getpass());
|
||||||
if(loginId != AuthenticationManager.INVALID_LOGIN){
|
if(loginId != AuthenticationManager.INVALID_LOGIN){
|
||||||
@ -33,16 +34,13 @@ public class AuthProtocol implements ServerProtocolTemplate<AuthMessage> {
|
|||||||
} else {
|
} else {
|
||||||
connectionHandler.addMessagetoOutgoingQueue(AuthMessage.constructAuthFailureMessage());
|
connectionHandler.addMessagetoOutgoingQueue(AuthMessage.constructAuthFailureMessage());
|
||||||
}
|
}
|
||||||
break;
|
LoggerInterface.loggerNetworking.INFO("[SERVER] Received auth details");
|
||||||
|
} break;
|
||||||
case AUTHREQUEST:
|
case AUTHREQUEST:
|
||||||
//silently drop
|
|
||||||
break;
|
|
||||||
case AUTHSUCCESS:
|
case AUTHSUCCESS:
|
||||||
|
case AUTHFAILURE: {
|
||||||
//silently drop
|
//silently drop
|
||||||
break;
|
} break;
|
||||||
case AUTHFAILURE:
|
|
||||||
//silently drop
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user