de.fhwiesbaden.jgamp001.thello.networking
Class Netzwerkserver
java.lang.Object
java.util.Observable
de.fhwiesbaden.jgamp001.thello.networking.Netzwerkserver
- All Implemented Interfaces:
- java.lang.Runnable
public class Netzwerkserver
- extends java.util.Observable
- implements java.lang.Runnable
Der Netzwerkserver
Im Grunde ist dies eine Bedienerklasse für einen ServerSocket. Es wäre noch mit
in die Klasse Netzwerkspieler eingegangen, wenn ich nicht einen separaten Thread
gewollt hätte, der auf eingehende Verbindungen wartet. (Deshalb Runnable)
Sie ist Observable. Die Netzwerk-GUI kann darüber erfahren, was der aktuelle
Status ist.
Sie ist 'Singleton'. Die Begründung ist identisch mit der 'Singleton'-
Implementierung von Netzwerkspieler.
| Methods inherited from class java.util.Observable |
addObserver, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
isServerInitialized
public boolean isServerInitialized()
isClientFound
public boolean isClientFound()
getClientSocket
public java.net.Socket getClientSocket()
getServerSocket
public java.net.ServerSocket getServerSocket()
getServer
public static Netzwerkserver getServer()
serverExists
public static boolean serverExists()
initServer
public void initServer(java.lang.Integer portnummer,
java.lang.Integer timeout)
throws java.io.IOException,
java.lang.Exception
- Throws:
java.io.IOException
java.lang.Exception
listenForClient
public void listenForClient()
throws java.lang.Exception
- Throws:
java.lang.Exception
run
public void run()
- Specified by:
run in interface java.lang.Runnable
closeServer
public void closeServer()
throws java.io.IOException
- Throws:
java.io.IOException
toString
public java.lang.String toString()
- Overrides:
toString in class java.lang.Object