islandev
Class IslandsEvolutionServerWrapper

java.lang.Object
  |
  +--islandev.IslandsEvolutionServerWrapper
All Implemented Interfaces:
distrit.InteractiveTaskServer, java.rmi.Remote

public abstract class IslandsEvolutionServerWrapper
extends java.lang.Object
implements distrit.InteractiveTaskServer


Field Summary
protected  IslandsEvolutionServer ies
           
 
Constructor Summary
IslandsEvolutionServerWrapper()
           
 
Method Summary
 java.lang.Object getID(java.lang.Object initialParameters)
          Called by clients the first time they connect.
 distrit.InteractiveTask getTask(java.lang.Object id)
          This will provide the client with the InteractiveTask it should run.
 java.lang.Object interact(java.lang.Object ID, java.lang.Object clientTaskOutput)
          Called by clients when they wish to interact.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ies

protected IslandsEvolutionServer ies
Constructor Detail

IslandsEvolutionServerWrapper

public IslandsEvolutionServerWrapper()
Method Detail

getID

public java.lang.Object getID(java.lang.Object initialParameters)
                       throws java.rmi.RemoteException
Called by clients the first time they connect.
Specified by:
getID in interface distrit.InteractiveTaskServer
Parameters:
initialParameters - Initial parameters from client local configuration. The current client implementation, see InteractiveTaskClient, provides the ip address of the client and the command line paramaters used to launch the client. These are packaged in a Vector.
Returns:
The ID of this client will from now on used for interaction with the server.

getTask

public distrit.InteractiveTask getTask(java.lang.Object id)
                                throws java.rmi.RemoteException
This will provide the client with the InteractiveTask it should run.
Specified by:
getTask in interface distrit.InteractiveTaskServer
Parameters:
id - The ID provided by the getID method by which the client will always refer to itself.
Returns:
The task this client should run. This could be exactly the same as the one all other clients are running or tailored to this particular client.

interact

public java.lang.Object interact(java.lang.Object ID,
                                 java.lang.Object clientTaskOutput)
                          throws java.rmi.RemoteException
Called by clients when they wish to interact.
Specified by:
interact in interface distrit.InteractiveTaskServer
Parameters:
ID - the client's ID
clientTaskOutput - the outputs of the client obtained by task.get( null ) on the client task
Returns:
whatever should be sent into the client through task.set( )