com.goldenhammer.nodecontroller
Interface Controller

All Superinterfaces:
java.rmi.Remote
All Known Implementing Classes:
SimulationController, SimulationController_Stub

public interface Controller
extends java.rmi.Remote

This interface is what should be implemented in order to create an appropriate server for all the nodes to connect to (ie: the central control unit which starts/stops the simulation)


Method Summary
 ModalityStatsSummary getGigPerHRForEntireSystem(java.lang.String testID)
           
 java.util.Collection getGigPerHRPerModality(java.lang.String testID)
           
 java.util.Collection getGigPerHRPerModalityType(java.lang.String testID)
           
 java.util.Collection getNodes()
          gets all the nodes this controller currently owns
 java.util.Collection getSimulationStatus()
          Gets the status of the simulation
 java.util.Collection getSummariesForNode(java.lang.String testID)
           
 void markDistributed()
          increments the counter for how many modalities have been distributed
 void markRetrieved(Node node)
          increments the counter for how many nodes have been recieved
 void startSimulation(java.lang.String string, java.util.Collection modalities)
          called when the simulation needs to be run.
 void stopSimulation()
          tells each connected node to stop its respective modalities
 

Method Detail

startSimulation

public void startSimulation(java.lang.String string,
                            java.util.Collection modalities)
                     throws java.rmi.RemoteException
called when the simulation needs to be run. It starts each individual node (ie: machine within the network)

Parameters:
string -
Throws:
java.rmi.RemoteException

getNodes

public java.util.Collection getNodes()
                              throws java.rmi.RemoteException
gets all the nodes this controller currently owns

Returns:
- a collection of all nodes
Throws:
java.rmi.RemoteException

stopSimulation

public void stopSimulation()
                    throws java.rmi.RemoteException
tells each connected node to stop its respective modalities

Throws:
java.rmi.RemoteException

getSimulationStatus

public java.util.Collection getSimulationStatus()
                                         throws java.rmi.RemoteException
Gets the status of the simulation

Returns:
a Collection of ModalityStatus objects that give the name and percentage complete of each Modality from each Node
Throws:
java.rmi.RemoteException

markRetrieved

public void markRetrieved(Node node)
                   throws java.rmi.RemoteException
increments the counter for how many nodes have been recieved

Parameters:
node -
Throws:
java.rmi.RemoteException

markDistributed

public void markDistributed()
                     throws java.rmi.RemoteException
increments the counter for how many modalities have been distributed

Throws:
java.rmi.RemoteException

getGigPerHRForEntireSystem

public ModalityStatsSummary getGigPerHRForEntireSystem(java.lang.String testID)
                                                throws java.rmi.RemoteException
Parameters:
testID -
Returns:
Throws:
java.rmi.RemoteException

getGigPerHRPerModality

public java.util.Collection getGigPerHRPerModality(java.lang.String testID)
                                            throws java.rmi.RemoteException
Parameters:
testID -
Returns:
Throws:
java.rmi.RemoteException

getGigPerHRPerModalityType

public java.util.Collection getGigPerHRPerModalityType(java.lang.String testID)
                                                throws java.rmi.RemoteException
Parameters:
testID -
Returns:
Throws:
java.rmi.RemoteException

getSummariesForNode

public java.util.Collection getSummariesForNode(java.lang.String testID)
                                         throws java.rmi.RemoteException
Parameters:
testID -
Returns:
Throws:
java.rmi.RemoteException