|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.ObjectSERVERZ5
public class SERVERZ5
Serverimplementierung, Auslagerung der Clientprozesse in einen Thread
Dieser Server lässt nur eine bestimmte Anzahl an Clients zu.
Die Prozesse der verbundenen Clients werden in einer Liste verwaltet.
Es können Plätze gebucht werden.
Field Summary | |
---|---|
private java.util.ArrayList<CLIENTPROZESSZ2> |
clientprozesse
Liste der serverseitigen Prozesse, die über die Clientverbindung kommunizieren. |
private static int |
maximaleclientanzahl
die maximal mögliche Anzahl an Clients |
private int |
plaetzevorhanden
Anzahl der Plätze, die noch vorhanden sind |
private int |
port
Portnummer des Ports, auf dem die Verbindungen etabliert sind |
private java.net.ServerSocket |
serverSocket
bidirektionale Schnittstelle zur Netzwerkprotokoll-Implementierung des Servers |
Constructor Summary | |
---|---|
SERVERZ5()
Konstruktor des Servers |
Method Summary | |
---|---|
private void |
AufNeuenClientWarten()
wartet auf eine neue Verbindung und lagert diese, falls möglich, in einen Thread aus. |
void |
ClientProzessEntfernen(CLIENTPROZESSZ2 clientprozess)
entfernt einen Clientprozess aus der Liste der Clientprozesse In dieser Version synchronisiert! |
private void |
ClientProzessHinzufuegen(java.net.Socket clientSocket)
fügt einen Clientprozess falls die maximale Clientanzahl noch nicht erreicht ist. |
static void |
main(java.lang.String[] args)
Hauptprogramm zum Erzeugen des Serverobjekts |
boolean |
PlaetzeBuchen(int anzahl)
die angegebene Anzahl an Plätzen buchen |
int |
PlaetzeVerfuegbar()
gibt die Anzahl der noch verfügbaren Plätze zurück |
private void |
ServerStarten()
fragt den Port ab und erzeugt den Serversocket |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private java.net.ServerSocket serverSocket
private int port
private static int maximaleclientanzahl
private java.util.ArrayList<CLIENTPROZESSZ2> clientprozesse
private int plaetzevorhanden
Constructor Detail |
---|
public SERVERZ5() throws java.io.IOException
java.io.IOException
- eine Ausnahme tritt auf falls:Method Detail |
---|
private void AufNeuenClientWarten() throws java.io.IOException
java.io.IOException
private void ClientProzessHinzufuegen(java.net.Socket clientSocket) throws java.io.IOException
clientSocket
- der Socket über den der Clientprozess kommunizieren soll
java.io.IOException
public void ClientProzessEntfernen(CLIENTPROZESSZ2 clientprozess)
clientprozess
- der Clientprozess, der aus der Liste entfernt werden soll.private void ServerStarten() throws java.io.IOException
java.io.IOException
public int PlaetzeVerfuegbar()
public boolean PlaetzeBuchen(int anzahl)
anzahl,
- die Anzahl der zu buchenden Plätze
public static void main(java.lang.String[] args) throws java.io.IOException
args
- keine Parameter beim Programmaufruf erforderlich
java.io.IOException
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |