@Test public void testPeek () { queue.offer (new FairQueueTestString ("key1", "item1")); queue.offer (new FairQueueTestString ("key1", "item2")); queue.offer (new FairQueueTestString ("key1", "item3")); queue.offer (new FairQueueTestString ("key2", "item4")); queue.offer (new FairQueueTestString ("key2", "item5")); Assert.assertEquals (queue.size (), 5); FairQueueTestString s = queue.peek (); Assert.assertNotNull (s); Assert.assertEquals (s.getItem (), "item1"); Assert.assertEquals (queue.size (), 5); s = queue.peek (); Assert.assertNotNull (s); Assert.assertEquals (s.getItem (), "item1"); Assert.assertEquals (queue.size (), 5); }
@Override public E peek () { if (count.get () == 0) { return null; } final ReentrantLock takeLock = this.takeLock; takeLock.lock (); try { return getNext (false); } finally { takeLock.unlock (); } }
FairQueue implements BlockingQueue<E> { @Override public E peek () { if (count.get () == 0) { return null; } final ReentrantLock takeLock = this.takeLock; takeLock.lock (); try { return getNext (false); } finally { takeLock.unlock (); } } }
FairQueue implements BlockingQueue<E> { @Override public E peek () { if (count.get () == 0) { return null; } final ReentrantLock takeLock = this.takeLock; takeLock.lock (); try { return getNext (false); } finally { takeLock.unlock (); } } FairQueue(); }
FairQueue implements BlockingQueue<E> { @Override public E peek () { if (count.get () == 0) { return null; } final ReentrantLock takeLock = this.takeLock; takeLock.lock (); try { return getNext (false); } finally { takeLock.unlock (); } } FairQueue(); @Override int size(); @Override int remainingCapacity(); @Override void put(E e); @Override boolean offer(E e); @Override boolean offer(E e, long timeout, TimeUnit unit); @Override E take(); @Override E peek(); @Override E poll(); @Override E poll(long timeout, TimeUnit unit); @Override int drainTo(Collection<? super E> c); @Override int drainTo(Collection<? super E> c, int maxElements); @Override void clear(); @Override boolean contains(Object o); @Override Object[] toArray(); @Override T[] toArray(T[] a); @Override Iterator<E> iterator(); @Override E remove(); @Override E element(); @Override boolean isEmpty(); @Override boolean containsAll(Collection<?> c); @Override boolean addAll(Collection<? extends E> c); @Override boolean removeAll(Collection<?> c); @Override boolean retainAll(Collection<?> c); @Override boolean add(E e); @Override boolean remove(Object o); }
FairQueue implements BlockingQueue<E> { @Override public E peek () { if (count.get () == 0) { return null; } final ReentrantLock takeLock = this.takeLock; takeLock.lock (); try { return getNext (false); } finally { takeLock.unlock (); } } FairQueue(); @Override int size(); @Override int remainingCapacity(); @Override void put(E e); @Override boolean offer(E e); @Override boolean offer(E e, long timeout, TimeUnit unit); @Override E take(); @Override E peek(); @Override E poll(); @Override E poll(long timeout, TimeUnit unit); @Override int drainTo(Collection<? super E> c); @Override int drainTo(Collection<? super E> c, int maxElements); @Override void clear(); @Override boolean contains(Object o); @Override Object[] toArray(); @Override T[] toArray(T[] a); @Override Iterator<E> iterator(); @Override E remove(); @Override E element(); @Override boolean isEmpty(); @Override boolean containsAll(Collection<?> c); @Override boolean addAll(Collection<? extends E> c); @Override boolean removeAll(Collection<?> c); @Override boolean retainAll(Collection<?> c); @Override boolean add(E e); @Override boolean remove(Object o);  }