|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.Thread
fr.lip6.sma.simulacion.server.http.HTTPClient
public class HTTPClient
Classe pour le client HTTP qui gère les échanges bidirectionnels avec le serveur (HTTP). Ce client HTTP est un Server au sens de Simulación, i.e. l'objet qui reçoit les requêtes des autres joueurs (via le serveur HTTP). Cette classe gère aussi la liste des agents.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class java.lang.Thread |
---|
Thread.State, Thread.UncaughtExceptionHandler |
Field Summary | |
---|---|
private HTTPAgentListManager |
mAgentListManager
Gestionnaire pour la liste des agents. |
private Integer |
mClientID
Référence sur notre identifiant en tant que client auprès du serveur. |
private LocalAgent |
mLocalAgent
Référence sur l'agent local. |
private Integer |
mLocalAgentLock
Verrou pour attendre l'agent local. |
private String |
mOurGameID
Notre version du jeu (doit correspondre à celle du serveur). |
private boolean |
mRunning
Si on tourne. |
private XmlRpcClient |
mXmlRpcClient
Client XML-RPC. |
Fields inherited from class java.lang.Thread |
---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
Constructor Summary | |
---|---|
HTTPClient()
Constructeur par défaut. |
Method Summary | |
---|---|
(package private) boolean |
configure(String inURL)
Méthode appelée par la fenêtre de configuration lorsque l'utilisateur clique sur le bouton de connexion. |
private void |
connect()
Connect to the server. |
(package private) Object |
doExecute(int inLeftAttempts,
String inMethodName,
List inParams)
Exécute une requête sur le serveur HTTP. |
(package private) Object |
execute(String inMethodName,
Object inArg1,
Object inArg2)
Exécute une requête sur le serveur HTTP avec deux paramètres. |
(package private) Object |
execute(String inMethodName,
Object inArg1,
Object inArg2,
Object inArg3,
Object inArg4)
Exécute une requête sur le serveur HTTP avec quatre paramètres. |
AgentListManager |
getAgentListManager()
Retourne l'interface pour la liste des agents. |
void |
handleError(Exception inException,
URL inURL,
String inMethod)
Méthode appelée lorsqu'une erreur est survenue avec notre requête listen. |
void |
handleResult(Object inResult,
URL inURL,
String inMethod)
Méthode appelée lorsque le serveur a répondu à notre requête listen. |
void |
processEvent(Map inEvent)
Méthode appelée pour gérer un événement. |
void |
run()
Point d'entrée du processus léger. |
(package private) void |
setLocalAgent(LocalAgent inLocalAgent)
Configure le serveur (Server) pour l'agent local. |
void |
shutdown()
Ferme le serveur. |
void |
start(Configuration inConfiguration)
Configure et démarre le serveur. |
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 XmlRpcClient mXmlRpcClient
private String mOurGameID
private Integer mClientID
private boolean mRunning
private LocalAgent mLocalAgent
private HTTPAgentListManager mAgentListManager
private final Integer mLocalAgentLock
Constructor Detail |
---|
public HTTPClient()
Method Detail |
---|
public void start(Configuration inConfiguration)
start
in interface Server
inConfiguration
- configuration de l'application.final boolean configure(String inURL)
inURL
- chaîne avec l'URL du serveur.
true
si la connexion a réussi.private void connect()
public final void run()
run
in interface Runnable
run
in class Thread
final void setLocalAgent(LocalAgent inLocalAgent)
inLocalAgent
- l'agent local.Server
public final void shutdown()
shutdown
in interface Server
public void handleResult(Object inResult, URL inURL, String inMethod)
handleResult
in interface AsyncCallback
inResult
- résultat de la méthode.inURL
- URL du serveur.inMethod
- méthode appelée (ici listen).public void handleError(Exception inException, URL inURL, String inMethod)
handleError
in interface AsyncCallback
inException
- exception survenue.inURL
- URL de la requête.inMethod
- méthode invoquée (listen).public void processEvent(Map inEvent)
inEvent
- dictionnaire représentant l'événement.public final AgentListManager getAgentListManager()
getAgentListManager
in interface Server
Object execute(String inMethodName, Object inArg1, Object inArg2) throws XmlRpcException
inMethodName
- nom de la méthode à invoquer.inArg1
- premier paramètre.inArg2
- deuxième paramètre.
XmlRpcException
- si le serveur a lancé une exception.Object execute(String inMethodName, Object inArg1, Object inArg2, Object inArg3, Object inArg4) throws XmlRpcException
inMethodName
- nom de la méthode à invoquer.inArg1
- premier paramètre.inArg2
- deuxième paramètre.inArg3
- troisième paramètre.inArg4
- quatrième paramètre.
XmlRpcException
- si le serveur a lancé une exception.Object doExecute(int inLeftAttempts, String inMethodName, List inParams) throws XmlRpcException
inLeftAttempts
- nombre de tentative à faire.inMethodName
- nom de la méthode à appeler.inParams
- paramètres pour la méthode.
XmlRpcException
- si le serveur a lancé une exception.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |