edu.emory.mathcs.util.remote.locks
Interface RemoteEisMcGLock.Backend

Enclosing interface:
RemoteEisMcGLock

public static interface RemoteEisMcGLock.Backend


Method Summary
 RemoteEisMcGLock.Participant fetchNext()
          Fetch the info about the next possibly non-idle participant.
 java.lang.Comparable getMyID()
          Returns the ID of self.
 java.lang.Comparable getTurnID()
          Gets the participant ID of the turn holder, or null if turn is unclaimed.
 void resetCursor(java.lang.Comparable id)
           
 void setMyState(RemoteEisMcGLock.Participant.State state)
           
 void setTurnID(java.lang.Comparable id)
          Sets turn holder to a given participant ID
 void waitForEvent(long nanos)
           
 

Method Detail

getMyID

public java.lang.Comparable getMyID()
Returns the ID of self.

Returns:
Comparable the ID of self

getTurnID

public java.lang.Comparable getTurnID()
                               throws java.rmi.RemoteException
Gets the participant ID of the turn holder, or null if turn is unclaimed.

Throws:
java.rmi.RemoteException

setTurnID

public void setTurnID(java.lang.Comparable id)
               throws java.rmi.RemoteException
Sets turn holder to a given participant ID

Throws:
java.rmi.RemoteException

setMyState

public void setMyState(RemoteEisMcGLock.Participant.State state)
                throws java.rmi.RemoteException
Throws:
java.rmi.RemoteException

resetCursor

public void resetCursor(java.lang.Comparable id)

fetchNext

public RemoteEisMcGLock.Participant fetchNext()
                                       throws java.rmi.RemoteException
Fetch the info about the next possibly non-idle participant.

Throws:
java.rmi.RemoteException - if a communication error occurs

waitForEvent

public void waitForEvent(long nanos)
                  throws java.lang.InterruptedException
Throws:
java.lang.InterruptedException