|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jcsp.util.OverFlowingBuffer<T>
public class OverFlowingBuffer<T>
This is used to create a buffered object channel that always accepts input, discarding its last entered data if full.
Channel
(Channel.one2one(org.jcsp.util.ChannelDataStore)
etc.).
The getState method returns EMPTY or NONEMPTYFULL, but never FULL.
ZeroBuffer
,
Buffer
,
OverWriteOldestBuffer
,
OverWritingBuffer
,
InfiniteBuffer
,
Channel
,
Serialized FormField Summary |
---|
Fields inherited from interface org.jcsp.util.ChannelDataStore |
---|
EMPTY, FULL, NONEMPTYFULL |
Constructor Summary | |
---|---|
OverFlowingBuffer(int size)
Construct a new OverFlowingBuffer with the specified size. |
Method Summary | |
---|---|
Object |
clone()
Returns a new (and EMPTY) OverFlowingBuffer with the same creation parameters as this one. |
void |
endGet()
Removes the oldest object from the buffer. |
T |
get()
Returns the oldest Object from the OverFlowingBuffer and removes it. |
int |
getState()
Returns the current state of the OverFlowingBuffer. |
void |
put(T value)
Puts a new Object into the OverFlowingBuffer. |
void |
removeAll()
Deletes all items in the buffer, leaving it empty. |
T |
startGet()
Returns the oldest object from the buffer but does not remove it. |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public OverFlowingBuffer(int size)
size
- the number of Objects the OverFlowingBuffer can store.
BufferSizeError
- if size is zero or negative. Note: no action
should be taken to try/catch this exception
- application code generating it is in error and needs correcting.Method Detail |
---|
public T get()
Pre-condition: getState must not currently return EMPTY.
get
in interface ChannelDataStore<T>
public T startGet()
startGet
in interface ChannelDataStore<T>
ChannelDataStore.endGet()
public void endGet()
endGet
in interface ChannelDataStore<T>
ChannelDataStore.startGet()
public void put(T value)
If OverFlowingBuffer is full, the item is discarded.
put
in interface ChannelDataStore<T>
value
- the Object to put into the OverFlowingBufferpublic int getState()
getState
in interface ChannelDataStore<T>
public Object clone()
Note: Only the size and structure of the OverFlowingBuffer is cloned, not any stored data.
clone
in interface ChannelDataStore<T>
clone
in class Object
public void removeAll()
ChannelDataStore
removeAll
in interface ChannelDataStore<T>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |