|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.Thread
CLIENTPROZESS
class CLIENTPROZESS
serverseitig laufender Prozess je Client zur Bearbeitung der Kommunikation
einer Clientverbindung
- über die Startbotschaft, die im Konstruktor übergeben wird, kann das Senden des
Stoppsignals für den Client veranlasst werden.
- das frühere Serververhalten ist in diese Klasse integriert.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class java.lang.Thread |
---|
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler |
Field Summary | |
---|---|
private static int |
angemeldet
Konstante für den Zustand angemeldet (in der clientprozessliste des Servers aufgenommen) des Threads |
private java.net.Socket |
clientSocket
Socket des Clients |
private CHATSERVER |
server
Referenz auf den Server |
private java.lang.String |
spitzname
Spitzname des Clients, muss einmalig sein! |
private java.io.BufferedReader |
vomClient
Datenstrom vom Client |
private static int |
wartend
Konstante für den Zustand Wartend des Threads |
private java.io.PrintWriter |
zumClient
Datenstrom zum Client |
private int |
zustand
speichert den aktuellen Zustand des Clientprozesses |
Fields inherited from class java.lang.Thread |
---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
Constructor Summary | |
---|---|
CLIENTPROZESS(java.net.Socket clientSocket,
CHATSERVER server,
java.lang.String startbotschaft)
Konstruktor des Clientprozesses |
Method Summary | |
---|---|
private void |
ClientVerbindungBeenden()
beendet die Clientverbindung |
void |
ClientVerbindungStarten(java.lang.String startbotschaft)
Verbindung herstellen, falls die Startbotschaft "toomuchclients" lautet, wird das Beendensignal an den Client gesendet! |
private boolean |
EingabeVerarbeiten(java.lang.String textvomclient)
Implementierung des Zustandsdiagramms des Prozesses |
void |
run()
liest die Nachrichten vom Client, ermittelt die Antwort schickt die Antwort zum Client. |
void |
Senden(java.lang.String nachricht)
Nachricht an den zugehörigen Client senden. |
java.lang.String |
SpitznameHolen()
gibt den Spitznamen des Chatters zurück |
Methods inherited from class java.lang.Thread |
---|
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private CHATSERVER server
private java.net.Socket clientSocket
private java.io.PrintWriter zumClient
private java.io.BufferedReader vomClient
private java.lang.String spitzname
private static final int wartend
private static final int angemeldet
private int zustand
Constructor Detail |
---|
public CLIENTPROZESS(java.net.Socket clientSocket, CHATSERVER server, java.lang.String startbotschaft) throws java.io.IOException
clientSocket
- die Socketverbindung, über die die Kommunikation stattfindet.server
- Referenz auf den Server, wird beim Beenden des Prozesses benötigt.startbotschaft
- ist die Startbotschaft gleich "toomuchclients" so wird das Clientstopsignal
gesendet.
java.io.IOException
- eine Ausnahme tritt auf falls:Method Detail |
---|
public void ClientVerbindungStarten(java.lang.String startbotschaft) throws java.io.IOException
startbotschaft
-
java.io.IOException
private boolean EingabeVerarbeiten(java.lang.String textvomclient)
textvomclient
- der zu verarbeitende Text
public java.lang.String SpitznameHolen()
public void Senden(java.lang.String nachricht)
nachricht
- der Text der Nachrichtprivate void ClientVerbindungBeenden() throws java.io.IOException
java.io.IOException
public void run()
run
in interface java.lang.Runnable
run
in class java.lang.Thread
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |