Overview | Package | Class | Tree | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## sum.netz
Class Server

    java.lang.Object
      sum.netz.Server

All Implemented Interfaces:
  Serializable

    public class Server

extends Object
implements Serializable

Ein Server ist ein vereinfachter ServerSocket, der zusätzliche Funktionen hat.
Es können beliebig viele Kontakte mit Clientverbindungen aufgebaut werden.
Der Dialog mit den Clients wird nebenläufig realisiert.

Version:
  7.5 vom 29.10.2013
Author:
  Bernard Schriek, Horst Hildebrecht
See Also:
  Serialized Form

Constructor Summary
`Server(int pPortNr, boolean pTestModus)` Der Server ist initialisiert.

Method Summary
`void` | `bearbeiteNachricht(String pClientIP, int pPartnerPort, String pNachricht)` Eine Nachricht von einem Client wurde bearbeitet.
`void` | `bearbeiteNachricht(String pClientIP, String pNachricht)` Eine Nachricht von einem Client wurde bearbeitet.
`void` | `bearbeiteVerbindungsaufbau(String pClientIP)` Ein neuer Client hat sich angemeldet.
`void` | `bearbeiteVerbindungsaufbau(String pClientIP, int pPartnerPort)` Ein neuer Client hat sich angemeldet.
`void` | `bearbeiteVerbindungsende(String pClientIP)` Die Verbindung mit einem Client wird durch den Server beendet.
`void` | `bearbeiteVerbindungsende(String pClientIP, int pPartnerPort)` Die Verbindung mit einem Client wird durch den Server beendet.
`void` | `bearbeiteVerbindungsverlust(String pClientIP)` Die Verbindung mit einem Client wurde verloren, z.
`void` | `bearbeiteVerbindungsverlust(String pClientIP, int pPartnerPort)` Die Verbindung mit einem Client wurde verloren, z.
`void` | `beendeVerbindung(String pClientIP)` Die Verbindung mit der angegebenen IP wurde beendet.
`void` | `beendeVerbindung(String pClientIP, int pPartnerPort)` Die Verbindung mit der angegebenen IP und dem angegebenen Port wurde beendet.
`protected Vector` | `clientListe()` Liefert die Liste der ServerClients.
`void` | `gibFrei()` Der Server wurde geschlossen.
`protected void` | `loescheVerbindung(Serververbindung pVerbindung)` Eine Verbindung wurde aus der Empfängerliste gelöscht.
`boolean` | `mitProtokoll()` gibt an, ob alle Operationen des Servers mitprotokolliert werden sollen.
`Serververbindung` | `neueSerververbindung()` Liefert eine neue Serververbindung, die in die Empfängerliste aufgenommen wird.
`int` | `port()` Liefert den Port, auf dem die Server Clients akzeptiert.
`protected void` | `schliesseVerbindung(String pClientIP)` Die Verbindung mit der angegebenen IP wurde geschlossen.
`protected void` | `schliesseVerbindung(String pClientIP, int pPartnerPort)` Die Verbindung mit der angegebenen IP und dem angegebenen Port wurde geschlossen.
`void` | `sendeAnAlle(String pText)` Eine Nachricht wurde an alle verbundenen Clients geschickt.
`void` | `sendeAnEinen(String pClientIP, int pPartnerPort, String pText)` Eine Nachricht wurde an einen Client geschickt.
`void` | `sendeAnEinen(String pClientIP, String pText)` Eine Nachricht wurde an einen Client geschickt.
`Serververbindung` | `SerververbindungVonIP(String pClientIP)` Liefert die Serververbindung der angegebenen IP, null falls nicht vorhanden.
`Serververbindung` | `SerververbindungVonIPUndPort(String pClientIP, int pPartnerPort)` Liefert die Serververbindung der angegebenen IP mit dem angegebenen Port, null falls nicht vorhanden.
`String` | `toString()`
`int` | `zahlDerVerbindungen()` Liefert die Zahl der noch offenen Verbindungen.

Methods inherited from class
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Server

    public Server(int pPortNr,
                  boolean pTestModus)

  Der Server ist initialisiert.

  Parameters:
    `pPortNr` - Portnummer des Sockets
    `pTestModus` - Wenn true, werden bei jeder Operation Meldungen auf der Konsole ausgegeben.

Method Detail

### bearbeiteNachricht

    public void bearbeiteNachricht(String pClientIP,
                                   int pPartnerPort,
                                   String pNachricht)

  Eine Nachricht von einem Client wurde bearbeitet.
  Diese leere Methode sollte in Unterklassen überschrieben werden.

  Parameters:
    `pClientIP` - IP-Nummer des Clients, der die Nachricht geschickt hat
    `pPartnerPort` - Port-Nummer des Clients, der die Nachricht geschickt hat
    `pNachricht` - die empfangene Nachricht, die bearbeitet werden soll

### bearbeiteNachricht

    public void bearbeiteNachricht(String pClientIP,
                                   String pNachricht)

  Eine Nachricht von einem Client wurde bearbeitet.
  Diese leere Methode sollte in Unterklassen überschrieben werden.

  Parameters:
    `pClientIP` - IP-Nummer des Clients, der die Nachricht geschickt hat
    `pNachricht` - die empfangene Nachricht, die bearbeitet werden soll

### bearbeiteVerbindungsaufbau

    public void bearbeiteVerbindungsaufbau(String pClientIP)

  Ein neuer Client hat sich angemeldet.
  Diese leere Methode kann in einer Unterklasse realisiert werden (Begrüßung).

  Parameters:
    `pClientIP` - IP-Nummer des Clients, der neu angemeldet ist

### bearbeiteVerbindungsaufbau

    public void bearbeiteVerbindungsaufbau(String pClientIP,
                                           int pPartnerPort)

  Ein neuer Client hat sich angemeldet.
  Diese leere Methode kann in einer Unterklasse realisiert werden (Begrüßung).

  Parameters:
    `pClientIP` - IP-Nummer des Clients, der neu angemeldet ist
    `pPartnerPort` - Port-Nummer des Clients, der neu angemeldet ist

### bearbeiteVerbindungsende

    public void bearbeiteVerbindungsende(String pClientIP)

  Die Verbindung mit einem Client wird durch den Server beendet.
  Es kann also noch vor dem Ende eine Nachricht versandt werden.
  Diese leere Methode kann in einer Unterklasse realisiert werden.

  Parameters:
    `pClientIP` - IP-Nummer des Clients, mit dem die Verbindung beendet wurde

### bearbeiteVerbindungsende

    public void bearbeiteVerbindungsende(String pClientIP,
                                         int pPartnerPort)

  Die Verbindung mit einem Client wird durch den Server beendet.
  Es kann also noch vor dem Ende eine Nachricht versandt werden.
  Diese leere Methode kann in einer Unterklasse realisiert werden.

  Parameters:
    `pClientIP` - IP-Nummer des Clients, mit dem die Verbindung beendet wurde
    `pPartnerPort` - Port-Nummer des Clients, mit dem die Verbindung beendet wurde

### bearbeiteVerbindungsverlust

    public void bearbeiteVerbindungsverlust(String pClientIP)

  Die Verbindung mit einem Client wurde verloren, z. B. durch Ausschalten des Rechners
  Es kann auch die Verbindung vom Client ohne eine Nachricht an den Server beendet worden sein.
  Diese leere Methode kann in einer Unterklasse realisiert werden.

  Parameters:
    `pClientIP` - IP-Nummer des Clients, mit dem die Verbindung beendet wurde

### bearbeiteVerbindungsverlust

    public void bearbeiteVerbindungsverlust(String pClientIP,
                                            int pPartnerPort)

  Die Verbindung mit einem Client wurde verloren, z. B. durch Ausschalten des Rechners
  Es kann auch die Verbindung vom Client ohne eine Nachricht an den Server beendet worden sein.
  Diese leere Methode kann in einer Unterklasse realisiert werden.

  Parameters:
    `pClientIP` - IP-Nummer des Clients, mit dem die Verbindung beendet wurde
    `pPartnerPort` - Port-Nummer des Clients, mit dem die Verbindung beendet wurde

### beendeVerbindung

    public void beendeVerbindung(String pClientIP)

  Die Verbindung mit der angegebenen IP wurde beendet.
  D.h. dass vor dem Ende noch ein Abschluss des Protokolls ermöglicht wurde.

  Parameters:
    `pClientIP` - IP-Nummer des Clients der zu beendenden Verbindung

### beendeVerbindung

    public void beendeVerbindung(String pClientIP,
                                 int pPartnerPort)

  Die Verbindung mit der angegebenen IP und dem angegebenen Port wurde beendet.
  D.h. dass vor dem Ende noch ein Abschluss des Protokolls ermöglicht wurde.

  Parameters:
    `pClientIP` - IP-Nummer des Clients der zu beendenden Verbindung
    `pPartnerPort` - Port-Nummer des Clients der zu beendenden Verbindung

### clientListe

    protected Vector clientListe()

  Liefert die Liste der ServerClients.

### gibFrei

    public void gibFrei()

  Der Server wurde geschlossen.

### loescheVerbindung

    protected void loescheVerbindung(Serververbindung pVerbindung)

  Eine Verbindung wurde aus der Empfängerliste gelöscht.

  Parameters:
    `pVerbindung` - die zu löschende Verbindung

### mitProtokoll

    public boolean mitProtokoll()

  gibt an, ob alle Operationen des Servers mitprotokolliert werden sollen.

### neueSerververbindung

    public Serververbindung neueSerververbindung()

  Liefert eine neue Serververbindung, die in die Empfängerliste aufgenommen wird.
  Kann in Unterklassen überschrieben werden, damit statt dessen ein neues Exemplar einer Unterklasse von Serververbindung in die Empfängerliste aufgenommen wird.

### port

    public int port()

  Liefert den Port, auf dem die Server Clients akzeptiert.

### schliesseVerbindung

    protected void schliesseVerbindung(String pClientIP)

  Die Verbindung mit der angegebenen IP wurde geschlossen.

  Parameters:
    `pClientIP` - IP-Nummer des Clients der zu beendenden Verbindung

### schliesseVerbindung

    protected void schliesseVerbindung(String pClientIP,
                                       int pPartnerPort)

  Die Verbindung mit der angegebenen IP und dem angegebenen Port wurde geschlossen.

  Parameters:
    `pClientIP` - IP-Nummer des Clients der zu beendenden Verbindung
    `pPartnerPort` - Port-Nummer des Clients der zu beendenden Verbindung

### sendeAnAlle

    public void sendeAnAlle(String pText)

  Eine Nachricht wurde an alle verbundenen Clients geschickt.

  Parameters:
    `pText` - die verschickte Nachricht

### sendeAnEinen

    public void sendeAnEinen(String pClientIP,
                             int pPartnerPort,
                             String pText)

  Eine Nachricht wurde an einen Client geschickt.

  Parameters:
    `pClientIP` - IP-Nummer des Empfängers
    `pPartnerPort` - Port-Nummer des Empfängers
    `pText` - die verschickte Nachricht

### sendeAnEinen

    public void sendeAnEinen(String pClientIP,
                             String pText)

  Eine Nachricht wurde an einen Client geschickt.

  Parameters:
    `pClientIP` - IP-Nummer des EmpfängerssendeAnEinen
    `pText` - die verschickte Nachricht

### SerververbindungVonIP

    public Serververbindung SerververbindungVonIP(String pClientIP)

  Liefert die Serververbindung der angegebenen IP, null falls nicht vorhanden.

  Parameters:
    `pClientIP` - IP-Nummer des Clients der gesuchten Verbindung

### SerververbindungVonIPUndPort

    public Serververbindung SerververbindungVonIPUndPort(String pClientIP,
                                                         int pPartnerPort)

  Liefert die Serververbindung der angegebenen IP mit dem angegebenen Port, null falls nicht vorhanden.

  Parameters:
    `pClientIP` - IP-Nummer des Clients der gesuchten Verbindung
    `pPartnerPort` - Port-Nummer des Clients der gesuchten Verbindung

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### zahlDerVerbindungen

    public int zahlDerVerbindungen()

  Liefert die Zahl der noch offenen Verbindungen.

Overview | Package | Class | Tree | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD