ensemble.hot
Class Hot_Ensemble

java.lang.Object
  |
  +--ensemble.hot.Hot_Ensemble
All Implemented Interfaces:
java.lang.Runnable

public class Hot_Ensemble
extends java.lang.Object
implements java.lang.Runnable


Field Summary
 int HOT_ENS_MSG_SEND_CURRENT_VIEW
           
 int HOT_ENS_MSG_SEND_NEXT_VIEW
           
 int HOT_ENS_MSG_SEND_UNSPECIFIED_VIEW
           
 
Constructor Summary
Hot_Ensemble()
          Constructs a Hot_Ensemble object starting the Ensemble Outboard process on a random port between 5000 and 8000
Hot_Ensemble(boolean use_BS)
           
Hot_Ensemble(int port)
          Constructs a Hot_Ensemble object starting the Ensemble Outboard process on the specified port.
 
Method Summary
 ensemble.hot.Hot_Error Cast(ensemble.hot.Hot_GroupContext gc, ensemble.hot.Hot_Message msg, int[] send_view)
          Broadcast a Hot_Message to the group specified in the Hot_GroupContext
 ensemble.hot.Hot_Error ChangeProperties(ensemble.hot.Hot_GroupContext gc, java.lang.String properties)
          Change the properties of the group specified by the Hot_GroupContext to the properties specified by the String
 ensemble.hot.Hot_Error ChangeProtocol(ensemble.hot.Hot_GroupContext gc, java.lang.String protocol)
          Change the protocol used by the group specified by the Hot_GroupContext to the protocol specified by the String
 void destroyOutboard()
          Destroys the associated outboard process.
 ensemble.hot.Hot_Error Join(ensemble.hot.Hot_JoinOps jops, ensemble.hot.Hot_GroupContext[] gctx)
          Join the Ensemble group specified in the Hot_JoinOps structure
 ensemble.hot.Hot_Error Leave(ensemble.hot.Hot_GroupContext gc)
          Leave the Ensemble group specified in the Hot_GroupContext
static void Panic(java.lang.String s)
          Halts the application with the error specified by the String
 ensemble.hot.Hot_Error Rekey(ensemble.hot.Hot_GroupContext gc)
          Request Ensmeble to rekey the group.
 ensemble.hot.Hot_Error RequestNewView(ensemble.hot.Hot_GroupContext gc)
          Request a new view in the group specified by the Hot_GroupContext
 void run()
          Mainloop of the process
 ensemble.hot.Hot_Error Send(ensemble.hot.Hot_GroupContext gc, ensemble.hot.Hot_Endpoint dest, ensemble.hot.Hot_Message msg, int[] send_view)
          Send a Hot_Message to member specified by the Hot_Endpoint in the group specified by the Hot_GroupContext
 void setDebug(boolean b)
          Set whether or not to display lots of debug information.
 ensemble.hot.Hot_Error Suspect(ensemble.hot.Hot_GroupContext gc, ensemble.hot.Hot_Endpoint[] suspects)
           
static void trace(java.lang.String s)
          Prints (or does not print) the specified string to standard error based upon the debug flag
 ensemble.hot.Hot_Error XferDone(ensemble.hot.Hot_GroupContext gc)
          Infrom Ensemble that state-transfer is complete.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HOT_ENS_MSG_SEND_UNSPECIFIED_VIEW

public final int HOT_ENS_MSG_SEND_UNSPECIFIED_VIEW
See Also:
Constant Field Values

HOT_ENS_MSG_SEND_NEXT_VIEW

public final int HOT_ENS_MSG_SEND_NEXT_VIEW
See Also:
Constant Field Values

HOT_ENS_MSG_SEND_CURRENT_VIEW

public final int HOT_ENS_MSG_SEND_CURRENT_VIEW
See Also:
Constant Field Values
Constructor Detail

Hot_Ensemble

public Hot_Ensemble()
Constructs a Hot_Ensemble object starting the Ensemble Outboard process on a random port between 5000 and 8000


Hot_Ensemble

public Hot_Ensemble(boolean use_BS)

Hot_Ensemble

public Hot_Ensemble(int port)
Constructs a Hot_Ensemble object starting the Ensemble Outboard process on the specified port. If you use this version of the constructor, you are expected to make sure the port is not already in use. You can check for successful startup by invoking isOutboardStarted();

Method Detail

destroyOutboard

public void destroyOutboard()
Destroys the associated outboard process. All instances of Hot_Ensemble (in an instance of the VM) use the same outboard process (currently). So, if you destroy the outboard process for one instance, it gets destroyed for all instances. A future version of Ensemble/Java will change this restriction.


setDebug

public void setDebug(boolean b)
Set whether or not to display lots of debug information. Default: false


Join

public ensemble.hot.Hot_Error Join(ensemble.hot.Hot_JoinOps jops,
                                   ensemble.hot.Hot_GroupContext[] gctx)
Join the Ensemble group specified in the Hot_JoinOps structure


Leave

public ensemble.hot.Hot_Error Leave(ensemble.hot.Hot_GroupContext gc)
Leave the Ensemble group specified in the Hot_GroupContext


Cast

public ensemble.hot.Hot_Error Cast(ensemble.hot.Hot_GroupContext gc,
                                   ensemble.hot.Hot_Message msg,
                                   int[] send_view)
Broadcast a Hot_Message to the group specified in the Hot_GroupContext


Send

public ensemble.hot.Hot_Error Send(ensemble.hot.Hot_GroupContext gc,
                                   ensemble.hot.Hot_Endpoint dest,
                                   ensemble.hot.Hot_Message msg,
                                   int[] send_view)
Send a Hot_Message to member specified by the Hot_Endpoint in the group specified by the Hot_GroupContext


Suspect

public ensemble.hot.Hot_Error Suspect(ensemble.hot.Hot_GroupContext gc,
                                      ensemble.hot.Hot_Endpoint[] suspects)

XferDone

public ensemble.hot.Hot_Error XferDone(ensemble.hot.Hot_GroupContext gc)
Infrom Ensemble that state-transfer is complete.


ChangeProtocol

public ensemble.hot.Hot_Error ChangeProtocol(ensemble.hot.Hot_GroupContext gc,
                                             java.lang.String protocol)
Change the protocol used by the group specified by the Hot_GroupContext to the protocol specified by the String


ChangeProperties

public ensemble.hot.Hot_Error ChangeProperties(ensemble.hot.Hot_GroupContext gc,
                                               java.lang.String properties)
Change the properties of the group specified by the Hot_GroupContext to the properties specified by the String


RequestNewView

public ensemble.hot.Hot_Error RequestNewView(ensemble.hot.Hot_GroupContext gc)
Request a new view in the group specified by the Hot_GroupContext


Rekey

public ensemble.hot.Hot_Error Rekey(ensemble.hot.Hot_GroupContext gc)
Request Ensmeble to rekey the group.


run

public void run()
Mainloop of the process

Specified by:
run in interface java.lang.Runnable

Panic

public static void Panic(java.lang.String s)
Halts the application with the error specified by the String


trace

public static void trace(java.lang.String s)
Prints (or does not print) the specified string to standard error based upon the debug flag