Class SERVER4

java.lang.Object
  extended by SERVER4

public class SERVER4
extends java.lang.Object

Serverimplementierung, Auslagerung der Clientprozesse in einen Thread
Vorlage für die Aufgabe 2 des Kapitels 2.3.3
Die Stellen, an denen eine Quelltextergänzung notwendig ist, sind mit "Quelltextergänzung" gekennzeichnet.


Field Summary
private  int plaetzevorhanden
          speichert die aktuelle Anzahl der noch vorhandenen Plätze
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
SERVER4()
          Konstruktor des Servers
 
Method Summary
private  void AufNeuenClientWarten()
          wartet auf eine neue Verbindung und lagert diese einen Thread aus
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

serverSocket

private java.net.ServerSocket serverSocket
bidirektionale Schnittstelle zur Netzwerkprotokoll-Implementierung des Servers


port

private int port
Portnummer des Ports, auf dem die Verbindungen etabliert sind


plaetzevorhanden

private int plaetzevorhanden
speichert die aktuelle Anzahl der noch vorhandenen Plätze

Constructor Detail

SERVER4

public SERVER4()
        throws java.io.IOException
Konstruktor des Servers

Throws:
java.io.IOException - eine Ausnahme tritt auf falls:
- der Server nicht gestartet werden kann (weil beispielsweise der Port nicht frei ist)
- die Clientverbindung gestört bzw. unterbrochen wurde.
Method Detail

AufNeuenClientWarten

private void AufNeuenClientWarten()
                           throws java.io.IOException
wartet auf eine neue Verbindung und lagert diese einen Thread aus

Throws:
java.io.IOException

PlaetzeVerfuegbar

public int PlaetzeVerfuegbar()
gibt die Anzahl der noch verfügbaren Plätze zurück

Returns:
Anzahl der verfügbaren Plätze

PlaetzeBuchen

public boolean PlaetzeBuchen(int anzahl)
die angegebene Anzahl an Plätzen buchen

Parameters:
anzahl, - die Anzahl der zu buchenden Plätze
Returns:
gibt false zurück, falls die Buchung aus Platzmangel nicht durchgeführt werden konnte

ServerStarten

private void ServerStarten()
                    throws java.io.IOException
fragt den Port ab und erzeugt den Serversocket

Throws:
java.io.IOException

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException
Hauptprogramm zum Erzeugen des Serverobjekts

Parameters:
args - keine Parameter beim Programmaufruf erforderlich
Throws:
java.io.IOException