| java.lang.Object java.util.AbstractCollection org.drools.util.concurrent.locks.AbstractCollection org.drools.util.concurrent.locks.AbstractQueue
All known Subclasses: org.drools.util.concurrent.locks.LinkedBlockingQueue,
AbstractQueue | abstract public class AbstractQueue extends AbstractCollection implements Queue(Code) | | This class provides skeletal implementations of some
Queue operations. The implementations in this class are appropriate when
the base implementation does not allow null
elements. Methods
AbstractQueue.add add ,
AbstractQueue.remove remove , and
AbstractQueue.element element are based on
AbstractQueue.offer offer ,
AbstractQueue.poll poll , and
AbstractQueue.peek peek , respectively but throw
exceptions instead of indicating failure via false or
null returns.
A Queue implementation that extends this class must
minimally define a method
Queue.offer which does not permit
insertion of null elements, along with methods
Queue.peek ,
Queue.poll ,
Collection.size , and a
Collection.iterator supporting
Iterator.remove . Typically, additional methods will be overridden
as well. If these requirements cannot be met, consider instead
subclassing
AbstractCollection .
This class is a member of the
Java Collections Framework.
since: 1.5 author: Doug Lea |
Constructor Summary | |
protected | AbstractQueue() Constructor for use by subclasses. |
Method Summary | |
public boolean | add(Object e) Inserts the specified element into this queue if it is possible to do so
immediately without violating capacity restrictions, returning
true upon success and throwing an IllegalStateException
if no space is currently available. | public boolean | addAll(Collection c) Adds all of the elements in the specified collection to this
queue. | public void | clear() Removes all of the elements from this queue. | public Object | element() Retrieves, but does not remove, the head of this queue. | public Object | remove() Retrieves and removes the head of this queue. |
AbstractQueue | protected AbstractQueue()(Code) | | Constructor for use by subclasses.
|
add | public boolean add(Object e)(Code) | | Inserts the specified element into this queue if it is possible to do so
immediately without violating capacity restrictions, returning
true upon success and throwing an IllegalStateException
if no space is currently available.
This implementation returns true if offer succeeds,
else throws an IllegalStateException.
Parameters: e - the element to add true (as specified by Collection.add) throws: IllegalStateException - if the element cannot be added at thistime due to capacity restrictions throws: ClassCastException - if the class of the specified elementprevents it from being added to this queue throws: NullPointerException - if the specified element is null andthis queue does not permit null elements throws: IllegalArgumentException - if some property of this elementprevents it from being added to this queue |
addAll | public boolean addAll(Collection c)(Code) | | Adds all of the elements in the specified collection to this
queue. Attempts to addAll of a queue to itself result in
IllegalArgumentException. Further, the behavior of
this operation is undefined if the specified collection is
modified while the operation is in progress.
This implementation iterates over the specified collection,
and adds each element returned by the iterator to this
queue, in turn. A runtime exception encountered while
trying to add an element (including, in particular, a
null element) may result in only some of the elements
having been successfully added when the associated exception is
thrown.
Parameters: c - collection containing elements to be added to this queue true if this queue changed as a result of the call throws: ClassCastException - if the class of an element of the specifiedcollection prevents it from being added to this queue throws: NullPointerException - if the specified collection contains anull element and this queue does not permit null elements,or if the specified collection is null throws: IllegalArgumentException - if some property of an element of thespecified collection prevents it from being added to thisqueue, or if the specified collection is this queue throws: IllegalStateException - if not all the elements can be added atthis time due to insertion restrictions See Also: AbstractQueue.add(Object) |
clear | public void clear()(Code) | | Removes all of the elements from this queue.
The queue will be empty after this call returns.
This implementation repeatedly invokes
AbstractQueue.poll poll until it
returns null.
|
element | public Object element()(Code) | | Retrieves, but does not remove, the head of this queue. This method
differs from
AbstractQueue.peek peek only in that it throws an exception if
this queue is empty.
This implementation returns the result of peek
unless the queue is empty.
the head of this queue throws: NoSuchElementException - if this queue is empty |
remove | public Object remove()(Code) | | Retrieves and removes the head of this queue. This method differs
from
AbstractQueue.poll poll only in that it throws an exception if this
queue is empty.
This implementation returns the result of poll
unless the queue is empty.
the head of this queue throws: NoSuchElementException - if this queue is empty |
|
|