public interface OrdinarySynchACC extends RootACC
ACCProxyAgentSide
,
ACCProxyNodeSide
Modifier and Type | Method and Description |
---|---|
ITucsonOperation |
get(TupleCentreId tid,
java.lang.Long timeout)
get TuCSoN primitive, reads (w/o removing) all the tuples in
the given target tuplecentre. |
ITucsonOperation |
in(TupleCentreId tid,
Tuple tuple,
java.lang.Long timeout)
in Linda primitive, retrieves the specified tuple from the
given target tuplecentre. |
ITucsonOperation |
inp(TupleCentreId tid,
Tuple tuple,
java.lang.Long timeout)
inp Linda primitive, retrieves the specified tuple from the
given target tuplecentre. |
ITucsonOperation |
no(TupleCentreId tid,
Tuple tuple,
java.lang.Long timeout)
no TuCSoN primitive, checks absence of the specified tuple
in the given target tuplecentre. |
ITucsonOperation |
nop(TupleCentreId tid,
Tuple tuple,
java.lang.Long timeout)
nop TuCSoN primitive, checks absence of the specified tuple
in the given target tuplecentre. |
ITucsonOperation |
out(TupleCentreId tid,
Tuple tuple,
java.lang.Long timeout)
out Linda primitive, inserts the specified tuple in the
given target tuplecentre. |
ITucsonOperation |
rd(TupleCentreId tid,
Tuple tuple,
java.lang.Long timeout)
rd Linda primitive, reads (w/o removing) the specified tuple
from the given target tuplecentre. |
ITucsonOperation |
rdp(TupleCentreId tid,
Tuple tuple,
java.lang.Long timeout)
rdp Linda primitive, reads (w/o removing) the specified
tuple from the given target tuplecentre. |
ITucsonOperation |
set(TupleCentreId tid,
Tuple tuple,
java.lang.Long timeout)
set TuCSoN primitive, to replace all the tuples in the given
target tuplecentre with that specified in the given list. |
ITucsonOperation |
spawn(TupleCentreId tid,
Tuple toSpawn,
java.lang.Long timeout)
spawn TuCSoN primitive, starts a parallel computational
activity within the target node. |
exit, getPendingOperationsMap
ITucsonOperation get(TupleCentreId tid, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
get
TuCSoN primitive, reads (w/o removing) all the tuples in
the given target tuplecentre.
Semantics is NOT SUSPENSIVE: if the tuple space is empty, an empty list
is returned to the TuCSoN Agent exploiting this ACC.tid
- the target TuCSoN tuplecentre id
tid
timeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation in(TupleCentreId tid, Tuple tuple, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
in
Linda primitive, retrieves the specified tuple from the
given target tuplecentre.
Notice that the primitive semantics is SUSPENSIVE: until no tuple is
found to match the given template, no success completion answer is
forwarded to the TuCSoN Agent exploiting this ACC, which then is blocked
waiting.tid
- the target TuCSoN tuplecentre id
tid
tuple
- the tuple to be retrieved from the target tuplecentretimeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation inp(TupleCentreId tid, Tuple tuple, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
inp
Linda primitive, retrieves the specified tuple from the
given target tuplecentre.
This time the primitive semantics is NOT SUSPENSIVE: if no tuple is found
to match the given template, a failure completion answer is forwarded to
the TuCSoN Agent exploiting this ACC.tid
- the target TuCSoN tuplecentre id
tid
tuple
- the tuple to be retrieved from the target tuplecentretimeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation no(TupleCentreId tid, Tuple tuple, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
no
TuCSoN primitive, checks absence of the specified tuple
in the given target tuplecentre.
Notice that the primitive semantics is SUSPENSIVE: until any tuple is
found to match the given template, no success completion answer is
forwarded to the TuCSoN Agent exploiting this ACC, which then is blocked
waiting.tid
- the target TuCSoN tuplecentre id
tid
tuple
- the tuple to be checked for absence from the target
tuplecentretimeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation nop(TupleCentreId tid, Tuple tuple, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
nop
TuCSoN primitive, checks absence of the specified tuple
in the given target tuplecentre.
This time the primitive semantics is NOT SUSPENSIVE: if any tuple is
found to match the given template, a failure completion answer is
forwarded to the TuCSoN Agent exploiting this ACC.tid
- the target TuCSoN tuplecentre id
tid
tuple
- the tuple to be checked for absence from the target
tuplecentretimeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation out(TupleCentreId tid, Tuple tuple, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
out
Linda primitive, inserts the specified tuple in the
given target tuplecentre.
Notice that TuCSoN out primitive assumes the ORDERED version of this
primitive, hence the tuple is SUDDENLY injected in the target space (if
the primitive successfully completes)tid
- the target TuCSoN tuplecentre id
tid
tuple
- the tuple to be emitted in the target tuplecentretimeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation rd(TupleCentreId tid, Tuple tuple, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
rd
Linda primitive, reads (w/o removing) the specified tuple
from the given target tuplecentre.
Notice that the primitive semantics is SUSPENSIVE: until no tuple is
found to match the given template, no success completion answer is
forwarded to the TuCSoN Agent exploiting this ACC, which then is blocked
waiting.tid
- the target TuCSoN tuplecentre id
tid
tuple
- the tuple to be read from the target tuplecentretimeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation rdp(TupleCentreId tid, Tuple tuple, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
rdp
Linda primitive, reads (w/o removing) the specified
tuple from the given target tuplecentre.
This time the primitive semantics is NOT SUSPENSIVE: if no tuple is found
to match the given template, a failure completion answer is forwarded to
the TuCSoN Agent exploiting this ACC.tid
- the target TuCSoN tuplecentre id
tid
tuple
- the tuple to be read from the target tuplecentretimeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation set(TupleCentreId tid, Tuple tuple, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
set
TuCSoN primitive, to replace all the tuples in the given
target tuplecentre with that specified in the given list.tid
- the target TuCSoN tuplecentre id
tid
tuple
- the Prolog list of all the tuples to be injected (overwriting
space)timeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation
ITucsonOperation spawn(TupleCentreId tid, Tuple toSpawn, java.lang.Long timeout) throws TucsonOperationNotPossibleException, UnreachableNodeException, OperationTimeOutException
spawn
TuCSoN primitive, starts a parallel computational
activity within the target node.
Notice that semantics is still NOT SUSPENSIVE: as soon as the parallel
activity has been started by the node, the completion is returned to the
TuCSoN Agent exploiting this ACC. This is due to very nature of the spawn
primitive, which is exactly meant to ASYNCHRONOUSLY start a PARALLEL
computational activity (despite this ACC being synchronous).tid
- the target TuCSoN tuplecentre id
tid
toSpawn
- the tuple storing the activity to spawn as a parallel
computation. Must be a Prolog term with functor name
exec/solve
, storing either a Java qualified class
name (dotted-list of packages and .class
extension too) or the filepath to a valid Prolog theory and a
valid Prolog goal to be checked. E.g.:
exec('list.of.packages.YourClass.class')
OR
solve('path/to/Prolog/Theory.pl', yourGoal)
timeout
- the maximum waiting time for completion tolerated by the
TuCSoN agent behind this ACC. Notice that reaching the timeout
just unblocks the agent, but the request IS NOT REMOVED from
TuCSoN node pending requests (will still be served at sometime
in the future).TucsonOperationNotPossibleException
- if the requested operation cannot be carried outUnreachableNodeException
- if the target tuple centre is not reachable over the networkOperationTimeOutException
- if the operation timeout expired prior to operation
completionTupleCentreId
,
ITucsonOperation