Class CounterQueue
- java.lang.Object
-
- org.onemind.commons.java.datastructure.CounterQueue
-
public class CounterQueue extends java.lang.Object
Represent a list of counters with a queue per counter objectYou can queue and dequeue to a counter identified by a counter object. NOTE: This class is not thread-safe- Version:
- $Id: CounterQueue.java,v 1.3 2005/04/26 17:41:24 thlee Exp $ $Name: $
- Author:
- TiongHiang Lee (thlee@onemindsoft.org)
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.HashMap
_counters
the counters *
-
Constructor Summary
Constructors Constructor Description CounterQueue()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.util.List
_getList(java.lang.Object o)
Get the list for the counter objectboolean
addToQueue(java.lang.Object o, java.lang.Object queuer)
Add an queuer to the queue of the counter object.java.util.List
clearQueue(java.lang.Object o)
Clear the queue of the counter objectjava.util.List
getQueue(java.lang.Object o)
Get the (unmodifiable) queue of the counter objectboolean
removeFromQueue(java.lang.Object o, java.lang.Object queuer)
Remove the queuer from the queue of the counter object.java.lang.Object
removeNextFromQueue(java.lang.Object counter)
Remove the next queuer in the queue.
-
-
-
Method Detail
-
_getList
private java.util.List _getList(java.lang.Object o)
Get the list for the counter object- Parameters:
o
- the counter object- Returns:
- the list, or null if there's none
-
getQueue
public java.util.List getQueue(java.lang.Object o)
Get the (unmodifiable) queue of the counter object- Parameters:
o
- the counter object- Returns:
- the queue
-
clearQueue
public java.util.List clearQueue(java.lang.Object o)
Clear the queue of the counter object- Parameters:
o
- the counter object- Returns:
- the queue for the counter object
-
addToQueue
public boolean addToQueue(java.lang.Object o, java.lang.Object queuer)
Add an queuer to the queue of the counter object. A queue will be created if there's none for the counter object- Parameters:
o
- the counter objectqueuer
- the queue- Returns:
- true
-
removeNextFromQueue
public java.lang.Object removeNextFromQueue(java.lang.Object counter)
Remove the next queuer in the queue. Null if queue is empty- Parameters:
counter
- the counter- Returns:
- the next queuer in the counter, or null if queue is empty
-
removeFromQueue
public boolean removeFromQueue(java.lang.Object o, java.lang.Object queuer)
Remove the queuer from the queue of the counter object. If there's no queue for the counter object, it will do nothing and return false.- Parameters:
o
- the counter objectqueuer
- the queuer- Returns:
- true if list contains the element
-
-