|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.rmi.server.RemoteObject | +--java.rmi.server.RemoteServer | +--java.rmi.server.UnicastRemoteObject | +--JavaQuest.Server.CClientThread
RMI-Kommunikations-Thread, fuer jeden Client wir ein Thread erzeugt
der Thread nimmt die RMI-Methodenaufrufe des Clients entgegen, und delegiert diese an die verantwortlichen Objekte.
CGame
,
IClientProxy
,
CPlayer
, Serialized FormField Summary | |
private boolean |
m_bOn
Run-Flag des Threads |
private IClientProxy |
m_oClient
Proxy fuer RMI-Aufrufe |
private CGame |
m_oGame
Zentrales Spiele-Objekt |
private CPlayer |
m_oPlayer
Playerobjekt des jeweiligen Threads |
private java.lang.String |
m_sName
Name des Clients |
Fields inherited from class java.rmi.server.UnicastRemoteObject |
csf, port, portFactoryParamTypes, portParamTypes, serialVersionUID, ssf |
Fields inherited from class java.rmi.server.RemoteServer |
log, logname |
Fields inherited from class java.rmi.server.RemoteObject |
ref |
Constructor Summary | |
CClientThread()
Default-Konstruktor |
|
CClientThread(CGame _oGame,
IClientProxy _oClient,
java.lang.String _sName,
CPlayer _oPlayer)
Konstruktor mit Game, ClientProxy, Name und Spieler |
Method Summary | |
boolean |
activateItem(int _iItemIndex)
Spieler will ein Gegenstand aktivieren wird an CPlayer weitergeleitet |
boolean |
activatePlayer(int _iTimeout)
startet die Runde des Spielers auf Clientseite wird an IClientProxy weitergeleitet |
void |
beenden()
Thread soll sich beenden, beendet die while-schleife |
boolean |
deactivateItem(int _iItemIndex)
Spieler will ein Gegenstand deaktivieren wird an CPlayer weitergeleitet |
boolean |
deactivatePlayer()
beendet die Runde des Spielers auf Clientseite wird an IClientProxy weitergeleitet |
void |
endTurn()
beendet die Runde des Spieler wird an CGame weitergeleitet |
boolean |
execute(int _iCmdIndex)
Spieler will ein Gegenstand aktivieren wird an CGame weitergeleitet |
void |
gameover()
Teilt dem Client mit fuer ihn das Spiel zu ende ist |
java.lang.String |
getInfo(CField _oField)
Liefert Informationen ueber ein Feld und der darauf befindlichen Objekte wird an CField weitergeleitet |
java.lang.String |
getInfo(CItem _oItem)
Liefert Informationen ueber einen Gegenstand wird an CItem weitergeleitet |
java.util.Vector |
getItemsActive()
Anforderung der Liste mit den aktiven Gegenstaenden des Spielers wird an CPlayer weitergeleitet |
java.util.Vector |
getItemsInactive()
Anforderung der Liste mit den inaktiven Gegenstaenden des Spielers wird an CPlayer weitergeleitet |
CPlayer |
getPlayer()
Gibt Referenz auf Spieler zurueck |
java.util.Vector |
getPossibleCommands(CField _oField)
Moegliche Kommandos erzeugen und dem Client geben, Funktion in Kommandofactory wird an CGame weitergeleitet |
void |
maprefresh(CMap _oMap)
die GUI vom Client aktualisieren |
void |
run()
'main' von Thread |
boolean |
SendMessageToPlayer(java.lang.String _sMessage,
boolean _bCritical)
sendet einen Nachricht an den Client |
void |
ShutDownClient()
Beendet Verbindung zum Client |
Methods inherited from class java.rmi.server.UnicastRemoteObject |
|
Methods inherited from class java.rmi.server.RemoteServer |
getClientHost, getLog, setLog |
Methods inherited from class java.rmi.server.RemoteObject |
equals, getRef, hashCode, toString, toStub, writeObject |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, registerNatives, wait, wait, wait |
Field Detail |
private CGame m_oGame
private IClientProxy m_oClient
private boolean m_bOn
private java.lang.String m_sName
private CPlayer m_oPlayer
Constructor Detail |
public CClientThread() throws java.rmi.RemoteException
public CClientThread(CGame _oGame, IClientProxy _oClient, java.lang.String _sName, CPlayer _oPlayer) throws java.rmi.RemoteException
_oGame
- Referenz auf das zentrale Spiel-Objekt_oClient
- Interface fuer Methodenaufrufe beim Client_sName
- Name(Alias) des Spielers vom Client_oPlayer
- Spielerobjekt das dem ClientThread zugeordnet istCGame
,
IClientProxy
,
CPlayer
Method Detail |
public void beenden()
public void maprefresh(CMap _oMap)
_oMap
- Kopier von der Map, diese und die darauf befindlichen Objekte werden beim Client gezeichnetCMap
public boolean activateItem(int _iItemIndex) throws java.rmi.RemoteException
activateItem
in interface IClientThreadProxy
_iItemIndex
- Index des Gegenstandes in der Liste der inaktiven Gegenstaendepublic boolean deactivateItem(int _iItemIndex) throws java.rmi.RemoteException
deactivateItem
in interface IClientThreadProxy
_iItemIndex
- Index des Gegenstandes in der Liste der aktiven Gegenstaendepublic boolean execute(int _iCmdIndex) throws java.rmi.RemoteException
execute
in interface IClientThreadProxy
_iCmdIndex
- Index des Kommandos in der Liste alles moeglichen Kommandospublic java.util.Vector getPossibleCommands(CField _oField) throws java.rmi.RemoteException
getPossibleCommands
in interface IClientThreadProxy
_oField
- Feld fuer das die Kommandos angefordert werdenCField
public java.lang.String getInfo(CItem _oItem) throws java.rmi.RemoteException
getInfo
in interface IClientThreadProxy
_oItem
- Gegenstand, von dem die Informationen abgerufen werden sollenCItem
public java.lang.String getInfo(CField _oField) throws java.rmi.RemoteException
getInfo
in interface IClientThreadProxy
_oField
- Feld, von dem die Informationen abgerufen werden sollenCField
public java.util.Vector getItemsActive() throws java.rmi.RemoteException
getItemsActive
in interface IClientThreadProxy
CItem
public java.util.Vector getItemsInactive() throws java.rmi.RemoteException
getItemsInactive
in interface IClientThreadProxy
CItem
public void endTurn() throws java.rmi.RemoteException
endTurn
in interface IClientThreadProxy
JavaQuest.Server.IClientThreadProxy
CClientThread
public boolean activatePlayer(int _iTimeout)
_iTimeout
- Dauer der Runde in Sekundenspublic boolean deactivatePlayer()
public CPlayer getPlayer()
getPlayer
in interface IClientThreadProxy
CPlayer
public boolean SendMessageToPlayer(java.lang.String _sMessage, boolean _bCritical)
_sMessage
- String, der die Nachricht enthaelt_bCritical
- boolean, ob die Meldung systemkritisch ist (dann Dialogbox, sonst Infofeld)public void ShutDownClient()
public void gameover()
public void run()
run
in interface java.lang.Runnable
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |