|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectsk.robotics.rlcs.agentspace.Space
public class Space
The space. Stores just references to objects, so it is a very good idea to try to store only immutable objects in the space. If mutable objects are stored, great care must be taken to avoid surprises. Space has its own thread, which manages block expiration, and takes care of expiration triggers.
Nested Class Summary | |
---|---|
static class |
Space.Block
A block in space. |
Method Summary | |
---|---|
void |
attachTrigger(java.lang.String blockName,
Agent agent,
int triggerId)
Add an agent trigger to a block. |
java.lang.Object |
delete(java.lang.String blockName)
|
java.lang.Object |
delete(java.lang.String blockName,
long validFor,
float priority)
Delete a block from the space. |
void |
detachTriggers(Agent agent)
Detach an agent trigger from all blocks. |
Space.Block |
getBlock(java.lang.String blockName)
Get a Block object (not only the stored value) from the space. |
static Space |
getInstance()
Access to the space. |
java.lang.Object |
read(java.lang.String blockName)
Read an object from the space. |
java.lang.Object |
read(java.lang.String blockName,
java.lang.Object def)
|
void |
trigger(java.lang.String blockName)
Simulate a block change, firing associated triggers. |
java.lang.Object |
write(java.lang.String blockName,
java.lang.Object value)
|
java.lang.Object |
write(java.lang.String blockName,
java.lang.Object value,
long validFor)
|
java.lang.Object |
write(java.lang.String blockName,
java.lang.Object value,
long validFor,
float priority)
|
java.lang.Object |
write(java.lang.String blockName,
java.lang.Object value,
long validFrom,
long validTo,
float priority)
Write an object into the space. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static Space getInstance()
public java.lang.Object read(java.lang.String blockName)
blockName
- The block to read from space.def
- Object to return, when there is no such block in space.public java.lang.Object read(java.lang.String blockName, java.lang.Object def)
public Space.Block getBlock(java.lang.String blockName)
blockName
- The block to get.
public java.lang.Object write(java.lang.String blockName, java.lang.Object value, long validFrom, long validTo, float priority)
blockName
- The block in space to write to.value
- The value to write to the block.validFor
- Time period for which the data is valid (from now). Zero or less means infinite validity.priority
- The write priority - existing values with greater priority won't get overwritten.
public java.lang.Object write(java.lang.String blockName, java.lang.Object value, long validFor, float priority)
public java.lang.Object write(java.lang.String blockName, java.lang.Object value, long validFor)
public java.lang.Object write(java.lang.String blockName, java.lang.Object value)
public java.lang.Object delete(java.lang.String blockName, long validFor, float priority)
A special case is delete() call with validFor set to zero. In this case, the zero does not mean infinite validity, but instead just deleting the block, and expring, so that any subsequent attempt to write into that block will succeed.
blockName
- The block to delete.validFor
- How long lower-priority writes will be ignored.priority
- The write priority.
public java.lang.Object delete(java.lang.String blockName)
public void attachTrigger(java.lang.String blockName, Agent agent, int triggerId)
blockName
- The block to attach the trigger to.agent
- The agent to trigger, when the block changes.public void detachTriggers(Agent agent)
public void trigger(java.lang.String blockName)
blockName
- The block whose change to simulate.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |