Hi zusammen,
ich habe die Aufgabe einen Server und einen Client zu programmieren. Ich frage mich nur, was folgende Anforderungen bedeuten sollen:
Irgendwie muss sich der Client beim Server ja registrieren, denn ansonsten kann der Server ja keine Nachrichten erhalten. Nur meine Frage: Wie soll das passieren?
Vielleicht habe ich auch einfach einen Denkfehler in der Implementierung der anderen Methoden gemacht. Die Anforderungen:
Meine bisherige Implementierung dazu:
Fehlt da eventuell in meiner bisherigen Implementierung etwas? Ich versteh nur nicht, wie der Client sich mit einem Index beim Server verbinden soll.
Gruß
Fenixx
ich habe die Aufgabe einen Server und einen Client zu programmieren. Ich frage mich nur, was folgende Anforderungen bedeuten sollen:
Java:
public abstract class AServer {
/**
* Sendet die Nachricht message an den Client mit Index index.
*
* @param index
* Index des Clients
* @param message
* Zu sendende Nachricht
* @throws IOException
*/
public abstract void sendMessage(int index, String message)
throws IOException;
/**
* Wartet auf und empfaengt eine Nachricht vom Client mit Index index.
*
* @param index
* Index des Clients
* @return erhaltene Nachricht
* @throws IOException
*/
public abstract String receiveMessage(int index) throws IOException;
}
Irgendwie muss sich der Client beim Server ja registrieren, denn ansonsten kann der Server ja keine Nachrichten erhalten. Nur meine Frage: Wie soll das passieren?
Vielleicht habe ich auch einfach einen Denkfehler in der Implementierung der anderen Methoden gemacht. Die Anforderungen:
Java:
abstract void acceptConnection() throws IOException;
abstract void openPort(int port) throws IOException;
abstract void disconnect();
abstract void disconnect(int index);
Meine bisherige Implementierung dazu:
Java:
public final class Server extends AServer {
private ServerSocket serverSocket;
private Socket server;
private boolean isConnected=false;
private int connectionCount=0;
@Override
void openPort(int port) throws IOException {
serverSocket = new ServerSocket(port);
}
@Override
void acceptConnection() throws IOException {
server = serverSocket.accept();
}
}
Fehlt da eventuell in meiner bisherigen Implementierung etwas? Ich versteh nur nicht, wie der Client sich mit einem Index beim Server verbinden soll.
Gruß
Fenixx