Package org.jcsp.lang
Class Any2AnyConnectionImpl<T>
- java.lang.Object
-
- org.jcsp.lang.AbstractConnectionImpl
-
- org.jcsp.lang.Any2AnyConnectionImpl<T>
-
- All Implemented Interfaces:
Any2AnyConnection<T>,ConnectionWithSharedAltingClient<T>,ConnectionWithSharedAltingServer<T>
class Any2AnyConnectionImpl<T> extends AbstractConnectionImpl implements Any2AnyConnection<T>
This class is an implementation ofAny2AnyConnection. Each end is safe to be used by one thread at a time.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.jcsp.lang.AbstractConnectionImpl
AbstractConnectionImpl.NonSingleRequestOpenMsg
-
-
Field Summary
Fields Modifier and Type Field Description private Any2OneChannel<T>chanClientSynchprivate One2OneChannel<T>chanFromServerprivate Any2OneChannel<T>chanServerSynchprivate One2OneChannel<T>chanToServer-
Fields inherited from class org.jcsp.lang.AbstractConnectionImpl
CLIENT_STATE_CLOSED, CLIENT_STATE_MADE_REQ, CLIENT_STATE_OPEN, nonSingleRequestMsg, SERVER_STATE_CLOSED, SERVER_STATE_OPEN, SERVER_STATE_RECEIVED
-
-
Constructor Summary
Constructors Constructor Description Any2AnyConnectionImpl()Initializes all the attributes to necessary values.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SharedAltingConnectionClientclient()Returns aSharedAltingConnectionClientobject for this connection.SharedConnectionServerserver()Returns aSharedConnectionServerobject for this connection.
-
-
-
Field Detail
-
chanToServer
private One2OneChannel<T> chanToServer
-
chanFromServer
private One2OneChannel<T> chanFromServer
-
chanClientSynch
private Any2OneChannel<T> chanClientSynch
-
chanServerSynch
private Any2OneChannel<T> chanServerSynch
-
-
Method Detail
-
client
public SharedAltingConnectionClient client()
Returns aSharedAltingConnectionClientobject for this connection. This method can be called multiple times to return a newSharedAltingConnectionClientobject each time. Any object created can only be used by one process at a time but the set of objects constructed can be used concurrently.- Specified by:
clientin interfaceAny2AnyConnection<T>- Specified by:
clientin interfaceConnectionWithSharedAltingClient<T>- Returns:
- a new
SharedAltingConnectionClientobject.
-
server
public SharedConnectionServer server()
Returns aSharedConnectionServerobject for this connection. This method can be called multiple times to return a newSharedConnectionServerobject each time. Any object created can only be used by one process at a time but the set of objects constructed can be used concurrently.- Specified by:
serverin interfaceAny2AnyConnection<T>- Specified by:
serverin interfaceConnectionWithSharedAltingServer<T>- Returns:
- a new
SharedConnectionServerobject.
-
-