Package org.jcsp.net2.bns
Class BNS
- java.lang.Object
-
- org.jcsp.net2.bns.BNS
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static BNS
getInstance()
Gets the singleton instance of the BNSstatic void
initialise(NodeAddress bnsNode)
Initialises the connection to the BNSstatic void
initialise(NodeID bnsNode)
Initialises the connection to the BNSstatic NetBarrier
netBarrier(String name, int enrolled)
Creates a new client end of a NetBarrierstatic NetBarrier
netBarrier(String name, int localEnrolled, int netEnrolled)
Creates a new server end of a NetBarrier with the given namestatic NetBarrier
numberedNetBarrier(String name, int index, int localEnrolled, int netEnrolled)
Creates a new server end of a NetBarrier with a given index and namevoid
run()
The run method for the BNS process
-
-
-
Method Detail
-
getInstance
public static BNS getInstance()
Gets the singleton instance of the BNS- Returns:
- The singleton instance of the BNS
-
initialise
public static void initialise(NodeID bnsNode) throws JCSPNetworkException
Initialises the connection to the BNS- Parameters:
bnsNode
- The NodeID of the BNS Node- Throws:
JCSPNetworkException
- Thrown if something goes wrong in the underlying architecture
-
initialise
public static void initialise(NodeAddress bnsNode) throws JCSPNetworkException
Initialises the connection to the BNS- Parameters:
bnsNode
- The NodeAddress of the BNS Node- Throws:
JCSPNetworkException
- Thrown if something goes wrong in the underlying architecture
-
netBarrier
public static NetBarrier netBarrier(String name, int localEnrolled, int netEnrolled) throws IllegalArgumentException, IllegalStateException
Creates a new server end of a NetBarrier with the given name- Parameters:
name
- The name to register with the BNSlocalEnrolled
- The number of locally enrolled processesnetEnrolled
- The number of net enrolled processes to expect- Returns:
- A new NetBarrier server end with the number of enrolled processes
- Throws:
IllegalArgumentException
- Thrown if the parameters are outside the defined rangesIllegalStateException
- Thrown if the BNS connection has not been initialised
-
numberedNetBarrier
public static NetBarrier numberedNetBarrier(String name, int index, int localEnrolled, int netEnrolled) throws IllegalArgumentException, IllegalStateException
Creates a new server end of a NetBarrier with a given index and name- Parameters:
name
- Name to register with the BNSindex
- The index to create the NetBarrier withlocalEnrolled
- The number of locally enrolled processesnetEnrolled
- The number of remote enrollments to wait for- Returns:
- A new NetBarrier
- Throws:
IllegalArgumentException
- Thrown if the parameters are outside the defined rangesIllegalStateException
- Thrown if the connection to the BNS has not been initialised
-
netBarrier
public static NetBarrier netBarrier(String name, int enrolled) throws IllegalArgumentException, IllegalStateException, JCSPNetworkException
Creates a new client end of a NetBarrier- Parameters:
name
- The name to resolve with the BNSenrolled
- The number of locally enrolled processes- Returns:
- A new NetBarrier client end with the number of enrolled processes
- Throws:
JCSPNetworkException
- Thrown if something goes wrong in the underlying architectureIllegalArgumentException
- Thrown if the number of of local enrolled is outside the defined rangeIllegalStateException
- Thrown if the connection to the BNS has not been initialised
-
-