Further improved Java Docs 10 missing todos.
This commit is contained in:
parent
048dc36a7c
commit
154b9d435d
|
@ -251,7 +251,7 @@ public class ChatWindowController {
|
|||
}
|
||||
|
||||
/**
|
||||
* //TODO missing
|
||||
* Starts several new Listener for Connection Handler changes by using several observable properties.
|
||||
*/
|
||||
|
||||
public void startConnectionHandlerListener() {
|
||||
|
@ -285,7 +285,7 @@ public class ChatWindowController {
|
|||
}
|
||||
|
||||
/**
|
||||
* //TODO
|
||||
* Starts a new Listener for messages by using the observable Boolean.
|
||||
*/
|
||||
private void messageListener() {
|
||||
messages.getChangedProperty().addListener(new ChangeListener<Boolean>() {
|
||||
|
|
|
@ -12,7 +12,7 @@ public class Message {
|
|||
/**
|
||||
* Constructor of Message. Needs all Information about a Message to save them.
|
||||
*
|
||||
* @param type Message (if it's a message typed by a user), Error or Information (if it is generated automatically, in this case sender and reciever will be null)
|
||||
* @param type Message (if it's a message typed by a user), Error or Information (if it is generated automatically, in this case sender and receiver will be null)
|
||||
* @param sender The User who has sent the message.
|
||||
* @param receiver The User who should receive the message.
|
||||
* @param text The Text of the message.
|
||||
|
|
|
@ -29,7 +29,6 @@ public abstract class ConnectionHandler {
|
|||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {@link ConnectionHandler#DATA_TYPE_CONNECT}
|
||||
*/
|
||||
public static String getDataTypeConnect() {
|
||||
|
@ -37,7 +36,6 @@ public abstract class ConnectionHandler {
|
|||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {@link ConnectionHandler#DATA_TYPE_CONFIRM}
|
||||
*/
|
||||
public static String getDataTypeConfirm() {
|
||||
|
@ -45,7 +43,6 @@ public abstract class ConnectionHandler {
|
|||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {@link ConnectionHandler#DATA_TYPE_DISCONNECT}
|
||||
*/
|
||||
public static String getDataTypeDisconnect() {
|
||||
|
@ -53,7 +50,6 @@ public abstract class ConnectionHandler {
|
|||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {@link ConnectionHandler#DATA_TYPE_MESSAGE
|
||||
*/
|
||||
public static String getDataTypeMessage() {
|
||||
|
@ -61,7 +57,6 @@ public abstract class ConnectionHandler {
|
|||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {@link ConnectionHandler#DATA_TYPE_ERROR}
|
||||
*/
|
||||
public static String getDataTypeError() {
|
||||
|
@ -69,7 +64,6 @@ public abstract class ConnectionHandler {
|
|||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {@link NetworkHandler.NetworkConnection}
|
||||
*/
|
||||
public NetworkHandler.NetworkConnection<String> getConnection() {
|
||||
|
@ -78,6 +72,7 @@ public abstract class ConnectionHandler {
|
|||
|
||||
/**
|
||||
* This method sets the NetworkConnection used for the server <-> client connection
|
||||
*
|
||||
* @param connection NetworkConnection used for the server <-> client connection
|
||||
*/
|
||||
protected void setConnection(NetworkHandler.NetworkConnection<String> connection) {
|
||||
|
@ -85,26 +80,24 @@ public abstract class ConnectionHandler {
|
|||
}
|
||||
|
||||
/**
|
||||
* This method reads the data when a ConnectionHandler recieves it. It tries to read out the sender, reciever, type and payload.
|
||||
* This method reads the data when a ConnectionHandler receives it. It tries to read out the sender, receiver, type and payload.
|
||||
* If the data does not contain the expected number of lines, it throws a {@link ChatProtocolException}
|
||||
* @param scanner to read data
|
||||
* @param sender of the data
|
||||
* @param reciever for the data
|
||||
* @param type of data
|
||||
* @param payload the data sent
|
||||
*
|
||||
* @param scanner to read data
|
||||
* @param sender of the data
|
||||
* @param receiver for the data
|
||||
* @param type of data
|
||||
* @param payload the data sent
|
||||
* @throws ChatProtocolException if the data does not contain the expected number of lines
|
||||
*/
|
||||
protected void processData(Scanner scanner, StringBuilder sender, StringBuilder reciever, StringBuilder type, StringBuilder payload) throws ChatProtocolException {
|
||||
protected void processData(Scanner scanner, StringBuilder sender, StringBuilder receiver, StringBuilder type, StringBuilder payload) throws ChatProtocolException {
|
||||
// parse data content
|
||||
if (scanner.hasNextLine()) {
|
||||
sender.append(scanner.nextLine());
|
||||
} else if (scanner.hasNextLine()) {
|
||||
receiver.append(scanner.nextLine());
|
||||
} else {
|
||||
throw new ChatProtocolException("No Sender found");
|
||||
}
|
||||
if (scanner.hasNextLine()) {
|
||||
reciever.append(scanner.nextLine());
|
||||
} else {
|
||||
throw new ChatProtocolException("No Reciever found");
|
||||
throw new ChatProtocolException("No Receiver found");
|
||||
}
|
||||
if (scanner.hasNextLine()) {
|
||||
type.append(scanner.nextLine());
|
||||
|
@ -118,19 +111,20 @@ public abstract class ConnectionHandler {
|
|||
|
||||
/**
|
||||
* This method gets called to send data via the socket defined in the {@link NetworkHandler.NetworkConnection}
|
||||
* @param sender of the data
|
||||
*
|
||||
* @param sender of the data
|
||||
* @param receiver of the data
|
||||
* @param type of the data
|
||||
* @param payload of the data
|
||||
* @param type of the data
|
||||
* @param payload of the data
|
||||
*/
|
||||
protected void sendData(String sender, String receiver, String type, String payload) {
|
||||
if (connection.isAvailable()) {
|
||||
new StringBuilder();
|
||||
String data = new StringBuilder()
|
||||
.append(sender+"\n")
|
||||
.append(receiver+"\n")
|
||||
.append(type+"\n")
|
||||
.append(payload+"\n")
|
||||
.append(sender + "\n")
|
||||
.append(receiver + "\n")
|
||||
.append(type + "\n")
|
||||
.append(payload + "\n")
|
||||
.toString();
|
||||
try {
|
||||
connection.send(data);
|
||||
|
@ -138,7 +132,7 @@ public abstract class ConnectionHandler {
|
|||
System.err.println("Connection closed: " + e.getMessage());
|
||||
} catch (EOFException e) {
|
||||
System.out.println("Connection terminated by remote");
|
||||
} catch(IOException e) {
|
||||
} catch (IOException e) {
|
||||
System.err.println("Communication error: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,6 +25,19 @@ public class Server {
|
|||
// Connection registry
|
||||
private final Map<String, ServerConnectionHandler> connections = new HashMap<>();
|
||||
|
||||
/**
|
||||
* The Constructor to create a new instance.
|
||||
*
|
||||
* @param serverPort to listen for incoming connections.
|
||||
* @throws IOException thrown if an I/O error occurs when opening the socket.
|
||||
*/
|
||||
public Server(int serverPort) throws IOException {
|
||||
// Open server connection
|
||||
System.out.println("Create server connection");
|
||||
networkServer = NetworkHandler.createServer(serverPort);
|
||||
System.out.println("Listening on " + networkServer.getHostAddress() + ":" + networkServer.getHostPort());
|
||||
}
|
||||
|
||||
/**
|
||||
* @param args
|
||||
*/
|
||||
|
@ -66,19 +79,6 @@ public class Server {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* The Constructor to create a new instance.
|
||||
*
|
||||
* @param serverPort to listen for incoming connections.
|
||||
* @throws IOException thrown if an I/O error occurs when opening the socket.
|
||||
*/
|
||||
public Server(int serverPort) throws IOException {
|
||||
// Open server connection
|
||||
System.out.println("Create server connection");
|
||||
networkServer = NetworkHandler.createServer(serverPort);
|
||||
System.out.println("Listening on " + networkServer.getHostAddress() + ":" + networkServer.getHostPort());
|
||||
}
|
||||
|
||||
/**
|
||||
* With this methode the instance waits for incoming connections. If a client tries to connect to the server.
|
||||
* The connection will be registered in the connection registry if successful.
|
||||
|
|
|
@ -33,8 +33,8 @@ import java.util.concurrent.locks.ReentrantLock;
|
|||
* 1. Removing the connection from the {@link ServerConnectionHandler#connectionRegistry}
|
||||
* 2. Terminates the socket by calling {@link NetworkHandler.NetworkConnection#close()}
|
||||
* <p>
|
||||
* Processes Messages send from a client by:
|
||||
* 1. Evaluating the reciever by differentiating between broadcast or unicast.
|
||||
* Process Messages send from a client by:
|
||||
* 1. Evaluating the receiver by differentiating between broadcast or unicast.
|
||||
* 2. Sending the message accordingly.
|
||||
* <p>
|
||||
* To use this class, start a new instance and start it in a thread.
|
||||
|
@ -89,7 +89,7 @@ public class ServerConnectionHandler extends ConnectionHandler implements Runnab
|
|||
return this.userName;
|
||||
}
|
||||
|
||||
/**
|
||||
/** //TODO needed method?
|
||||
* @return state of the connection. Possible states are see {@link ch.zhaw.pm2.multichat.protocol.ConnectionHandler.State}
|
||||
*/
|
||||
public State getState() {
|
||||
|
@ -97,7 +97,7 @@ public class ServerConnectionHandler extends ConnectionHandler implements Runnab
|
|||
}
|
||||
|
||||
/**
|
||||
* This methods runs in a while-loop as long as the socket between server and client is available
|
||||
* These methods runs in a while-loop as long as the socket between server and client is available
|
||||
* and the connection State is not ERROR.
|
||||
*/
|
||||
private void startReceiving() {
|
||||
|
|
Loading…
Reference in New Issue