|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--solar.service.rpc.Block
A blocking object that other objects can wait on till time out or a reply is ready.
Field Summary | |
protected static java.util.Hashtable |
_blocks
|
protected static java.lang.Object |
_nullobj
|
Constructor Summary | |
private |
Block()
Prevent object initialization. |
Method Summary | |
static java.lang.Object |
getBlock(java.lang.Object key)
Get the block EQUALS to specified key from repository. |
static void |
putBlock(java.lang.Object key)
Add one block into repository. |
static void |
removeBlock(java.lang.Object key)
Remove one block from repository. |
static java.lang.Object |
waitBlock(java.lang.Object key,
long timeout)
Wait for reply with specified timeout. |
static void |
wakeBlock(java.lang.Object key,
java.lang.Object obj)
Wake up the blocks waiting for replies. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected static java.util.Hashtable _blocks
protected static final java.lang.Object _nullobj
Constructor Detail |
private Block()
Method Detail |
public static void putBlock(java.lang.Object key)
public static java.lang.Object getBlock(java.lang.Object key) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
public static void removeBlock(java.lang.Object key)
public static java.lang.Object waitBlock(java.lang.Object key, long timeout)
Block.putBlock(origianlKey);
synchronized(origianlKey)
{
// do some action such as network transmission
reply = Block.waitBlock(origianlKey, timeout);
}
public static void wakeBlock(java.lang.Object key, java.lang.Object obj)
Object originalKey = Block.getBlock(receivedKey);
synchronized(originalKey)
{
Block.wakeBlock(originalKey, result);
}
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |