|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface Op
Basic operation abstraction. Don't extend java.rmi.Remote!
| Method Summary | |
|---|---|
Invocation |
call()
Invoke this operation synchronously. |
Invocation |
call(Invocation originalInv)
Invoke this operation synchronously. |
boolean |
canAppearInInni()
Can this operation be serviced by an inni? Only an OpInni can. |
void |
deliverPendingMessages()
If operation's queue of pending invocations was locked due to equivalence class locking stuff (e.g., merging), then deliver pending messages. |
OpInniIterator |
elements()
Get an iterator to iterate over pending invocations of this operation. |
long |
getFirstTime()
Get the timestamp of the first (oldest) pending invocation of this operation. |
java.lang.String |
getId()
Returns unique identifier for this operation. |
InLock |
getLock()
Get the equivalence class lock for this operation. |
boolean |
isNoop()
Determines whether this operation is a noop. |
boolean |
isRemote(java.lang.String site)
Is this operation on a remote VM or on the current VM? |
int |
length()
Returns the number of Invocations pending for this operation. |
Invocation |
P()
A semaphore P (aka down) operation. |
Invocation |
receive()
Get the first (oldest) pending invocation of this OpInni. |
void |
send()
Invoke this operation asynchronously. |
void |
send(Invocation originalInv)
Invoke this operation asynchronously. |
void |
V()
A semaphore V (aka up) operation. |
| Method Detail |
|---|
boolean isNoop()
throws java.rmi.RemoteException
noop.
noop.
java.rmi.RemoteException
void send(Invocation originalInv)
throws java.rmi.RemoteException
originalInv - The invocation to service.
java.rmi.RemoteException
void send()
throws java.rmi.RemoteException
this.send (new Invocation(...));
See send(edu.ucdavis.rj.Ops.Invocation).
java.rmi.RemoteException
void V()
throws java.rmi.RemoteException
OpInni's semaphore operations.
java.rmi.RemoteException
Invocation call(Invocation originalInv)
throws java.rmi.RemoteException
inv - The invocation to service.
N.B., (the reference for) the returned invocation might not be the
same as inv.
For example, do NOT use, e.g.,
Invocation inv = new Invocation(...);
thefun.call(inv);
System.out.println(inv.getReturnValue());
because inv's value after the call will be the same
as its value before the call, and inv.getReturnValue() will
likely be null.
Instead, in this example, use
inv = thefun.call(inv);.
java.rmi.RemoteException
Invocation call()
throws java.rmi.RemoteException
this.call (new Invocation(...));
See call(edu.ucdavis.rj.Ops.Invocation).
java.rmi.RemoteException
Invocation receive()
throws java.rmi.RemoteException
OpInni.
Wait if no invocation is pending.
rjRunTimeError - if this Op is an OpMethod.
java.rmi.RemoteException
Invocation P()
throws java.rmi.RemoteException
OpInni's semaphore operations.
rjRunTimeError - if this Op is an OpMethod.
java.rmi.RemoteException
int length()
throws java.rmi.RemoteException
java.rmi.RemoteException
java.lang.String getId()
throws java.rmi.RemoteException
java.rmi.RemoteException
long getFirstTime()
throws java.rmi.RemoteException
rjRunTimeError - if this Op is an OpMethod.
java.rmi.RemoteException
boolean canAppearInInni()
throws java.rmi.RemoteException
OpInni can.
true if and only if this operation is an OpInni.
java.rmi.RemoteException
InLock getLock()
throws java.rmi.RemoteException
java.rmi.RemoteException
boolean isRemote(java.lang.String site)
throws java.rmi.RemoteException
true if and only if this operation is remote.
java.rmi.RemoteException
void deliverPendingMessages()
throws java.rmi.RemoteException
rjRunTimeError - if this Op is an OpMethod.
java.rmi.RemoteException
OpInniIterator elements()
throws java.rmi.RemoteException
rjRunTimeError - if this Op is an OpMethod.
java.rmi.RemoteException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||