public abstract class ForwardingBlockingDeque<E> extends ForwardingDeque<E> implements BlockingDeque <E>
BlockingDeque which forwards all its method calls to another
BlockingDeque. Subclasses should override one or more methods to modify the behavior of the backing deque as desired per the
decorator pattern.
Warning: The methods of ForwardingBlockingDeque forward indiscriminately to the methods of the delegate. For example, overriding ForwardingCollection alone will not change the behaviour of offer(E, long, java.util.concurrent.TimeUnit) which can lead to unexpected behaviour. In this case, you should override offer as well, either providing your own implementation, or delegating to the provided standardOffer method.
The standard methods are not guaranteed to be thread-safe, even when all of the methods that they depend on are thread-safe.
| Modifier | Constructor and Description |
|---|---|
protected |
ForwardingBlockingDeque()
Constructor for use by subclasses.
|
| Modifier and Type | Method and Description |
|---|---|
protected abstract BlockingDeque |
delegate()
Returns the backing delegate instance that methods are forwarded to.
|
int |
drainTo(Collection
|
int |
drainTo(Collection
|
boolean |
offer(E e, long timeout, TimeUnit
|
boolean |
offerFirst(E e, long timeout, TimeUnit
|
boolean |
offerLast(E e, long timeout, TimeUnit
|
E |
poll(long timeout, TimeUnit
|
E |
pollFirst(long timeout, TimeUnit
|
E |
pollLast(long timeout, TimeUnit
|
void |
put(E e)
|
void |
putFirst(E e)
|
void |
putLast(E e)
|
int |
remainingCapacity()
|
E |
take()
|
E |
takeFirst()
|
E |
takeLast()
|
addFirst, addLast, descendingIterator, getFirst, getLast, offerFirst, offerLast, peekFirst, peekLast, pollFirst, pollLast, pop, push, removeFirst, removeFirstOccurrence, removeLast, removeLastOccurrenceelement, offer, peek, poll, remove, standardOffer, standardPeek, standardPolladd, addAll, clear, contains, containsAll, isEmpty, iterator, remove, removeAll, retainAll, size, standardAddAll, standardClear, standardContains, standardContainsAll, standardIsEmpty, standardRemove, standardRemoveAll, standardRetainAll, standardToArray, standardToArray, standardToString, toArray, toArraytoStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitadd, addFirst, addLast, contains, element, iterator, offer, offerFirst, offerLast, peek, poll, push, remove, remove, removeFirstOccurrence, removeLastOccurrence, sizedescendingIterator, getFirst, getLast, peekFirst, peekLast, pollFirst, pollLast, pop, removeFirst, removeLastaddAll, clear, containsAll, equals, hashCode, isEmpty, parallelStream, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArrayprotected ForwardingBlockingDeque()
protected abstract BlockingDeque<E> delegate()
ForwardingObject
ForwardingSet.delegate() . Concrete subclasses override this method to supply the instance being decorated.
public int remainingCapacity()
public void putFirst(E e) throws InterruptedException
putFirst in interface
BlockingDeque<E>
InterruptedException
public void putLast(E e) throws InterruptedException
putLast in interface
BlockingDeque<E>
InterruptedException
public boolean offerFirst(E e, long timeout, TimeUnitunit) throws InterruptedException
offerFirst in interface
BlockingDeque<E>
InterruptedException
public boolean offerLast(E e, long timeout, TimeUnitunit) throws InterruptedException
offerLast in interface
BlockingDeque<E>
InterruptedException
public E takeFirst() throws InterruptedException
takeFirst in interface
BlockingDeque<E>
InterruptedException
public E takeLast() throws InterruptedException
takeLast in interface
BlockingDeque<E>
InterruptedException
public E pollFirst(long timeout, TimeUnitunit) throws InterruptedException
pollFirst in interface
BlockingDeque<E>
InterruptedException
public E pollLast(long timeout, TimeUnitunit) throws InterruptedException
pollLast in interface
BlockingDeque<E>
InterruptedException
public void put(E e) throws InterruptedException
put in interface
BlockingDeque<E>
put in interface
BlockingQueue<E>
InterruptedException
public boolean offer(E e, long timeout, TimeUnitunit) throws InterruptedException
offer in interface
BlockingDeque<E>
offer in interface
BlockingQueue<E>
InterruptedException
public E take() throws InterruptedException
take in interface
BlockingDeque<E>
take in interface
BlockingQueue<E>
InterruptedException
public E poll(long timeout, TimeUnitunit) throws InterruptedException
poll in interface
BlockingDeque<E>
poll in interface
BlockingQueue<E>
InterruptedException
public int drainTo(Collection<? super E> c)
public int drainTo(Collection<? super E> c, int maxElements)