Merge remote-tracking branch 'origin/master'

This commit is contained in:
Sebastian Lenzlinger 2022-03-26 13:14:53 +01:00
commit 8916d7f8b9
5 changed files with 147 additions and 143 deletions

BIN
java_pid21340.hprof Normal file

Binary file not shown.

View File

@ -5,18 +5,20 @@ import java.io.IOException;
import java.net.Socket; import java.net.Socket;
/** /**
* Sends a ping to the server ("CPING") every 2 seconds and checks if it has gotten a pingback. * Sends a ping to the server ("CPING") every 2 seconds and checks if it has gotten a pingback. The
* The actual logging of the pingback (via the gotPingBack boolean) has to be done elsewhere, * actual logging of the pingback (via the gotPingBack boolean) has to be done elsewhere, depends on
* depends on how the client receives and parses messages. * how the client receives and parses messages.
*/ */
public class ClientPinger implements Runnable { public class ClientPinger implements Runnable {
private boolean gotPingBack; //should be set to true (via setGotPingBack) as soon as the client gets a pingback.
private boolean gotPingBack; //should be set to true when client gets a pingback.
private boolean isConnected; //set to true unless the ClientPinger detects a connection loss. private boolean isConnected; //set to true unless the ClientPinger detects a connection loss.
BufferedWriter out; //the output of this client through which the pings are sent BufferedWriter out; //the output of this client through which the pings are sent
private Socket socket; private Socket socket;
/** /**
* @param socket the socket the Client is connected to which is used to end the thread if the connection is lost. * @param socket the socket the Client is connected to which is used to end the thread if the
* connection is lost.
* @param out the output through which the pings are sent. * @param out the output through which the pings are sent.
*/ */
public ClientPinger(BufferedWriter out, Socket socket) { public ClientPinger(BufferedWriter out, Socket socket) {

View File

@ -5,18 +5,20 @@ import java.io.IOException;
import java.net.Socket; import java.net.Socket;
/** /**
* Sends a ping to the client ("SPING") every 2 seconds and checks if it has gotten a pingback. * Sends a ping to the client ("SPING") every 2 seconds and checks if it has gotten a pingback. The
* The actual logging of the pingback (via the gotPingBack boolean) has to be done elsewhere, * actual logging of the pingback (via the gotPingBack boolean) has to be done elsewhere, depends on
* depends on how the server receives and parses messages. * how the server receives and parses messages.
*/ */
public class ServerPinger implements Runnable { public class ServerPinger implements Runnable {
private boolean gotPingBack; //should be set to true (via setGotPingBack) as soon as the server gets a pingback. private boolean gotPingBack; //should be set to true (via setGotPingBack) as soon as the server gets a pingback.
private boolean isConnected; //set to true unless the ServerPinger detects a connection loss. private boolean isConnected; //set to true unless the ServerPinger detects a connection loss.
BufferedWriter out; //the output of this client through which the pings are sent BufferedWriter out; //the output of this client through which the pings are sent
private Socket socket; private Socket socket;
/** /**
* @param socket the socket the ClientHandler is connected to; used to end the thread if the connection is lost. * @param socket the socket the ClientHandler is connected to; used to end the thread if the
* connection is lost.
* @param out the output through which the pings are sent. * @param out the output through which the pings are sent.
*/ */
public ServerPinger(BufferedWriter out, Socket socket) { public ServerPinger(BufferedWriter out, Socket socket) {

View File

@ -7,14 +7,14 @@
* LEAVG: leave a game * LEAVG: leave a game
* JOING: join a game * JOING: join a game
* VOTEG: ghost voting who to infect * VOTEG: ghost voting who to infect
* VOTEH: humans voting whos the ghost * VOTEH: humans voting who is the ghost
* QUITS: quit server/ leave servr * QUITS: quit server/ leave server
* LISTP: list players/clients in session with the Server * LISTP: list players/clients in session with the Server
* CPING: Ping from client to server. * CPING: Ping from client to server.
*/ */
/** /**
Server Commands: Server Commands:
* MSGRS: "Message recieved": Paramaters: a string detailing to the client that and what the server recieved as command. * MSGRS: "Message received": Paramaters: a string detailing to the client that and what the server received as command.
* SEROR: Server had an error. (used for debugging) * SEROR: Server had an error. (used for debugging)
* SPING: Ping from server to client; * SPING: Ping from server to client;
*/ */