com.sun.faban.driver.engine
Interface Master

All Superinterfaces:
Remote
All Known Implementing Classes:
MasterImpl

public interface Master
extends Remote

Remote interface for calling back to the master.

Author:
Akara Sucharitakul

Method Summary
 void abortRun()
          Notifies the master to terminate the run immediately.
 long currentTimeMillis()
          Obtain the master's time for time adjustment.
 MasterState getCurrentState()
          Obtains the current state of the master.
 void updateMetrics(RuntimeMetrics m)
          Updates the master with the latest runtime metrics so the master can dump out the stats accordingly.
 void waitForState(MasterState state)
          Wait for a certain state on the master.
 

Method Detail

currentTimeMillis

long currentTimeMillis()
                       throws RemoteException
Obtain the master's time for time adjustment.

Returns:
The current time on the master
Throws:
RemoteException - A network error occurred

abortRun

void abortRun()
              throws RemoteException
Notifies the master to terminate the run immediately. This usually happens if there is a fatal error in the run.

Throws:
RemoteException - A network error occurred.

updateMetrics

void updateMetrics(RuntimeMetrics m)
                   throws RemoteException
Updates the master with the latest runtime metrics so the master can dump out the stats accordingly.

Parameters:
m - The runtime metrics to update
Throws:
RemoteException - A network error occurred.

getCurrentState

MasterState getCurrentState()
                            throws RemoteException
Obtains the current state of the master.

Returns:
The current state of the master.
Throws:
RemoteException

waitForState

void waitForState(MasterState state)
                  throws RemoteException
Wait for a certain state on the master.

Parameters:
state -
Throws:
RemoteException