X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=lib%2Fjetty%2Forg%2Feclipse%2Fjetty%2Futil%2FConcurrentArrayQueue.java;h=86a0b36459245fafcc8f7d37b4aab92ef8e3a7e2;hp=fc1326d63a64cb3b597753b99c79c0c7ec29d0b9;hb=ba4f228fa9f72d50991a2218cfd83987ef5d385e;hpb=73ef54a38e3930a1a789cdc6b5fa23cdd4c9d086 diff --git a/lib/jetty/org/eclipse/jetty/util/ConcurrentArrayQueue.java b/lib/jetty/org/eclipse/jetty/util/ConcurrentArrayQueue.java index fc1326d6..86a0b364 100644 --- a/lib/jetty/org/eclipse/jetty/util/ConcurrentArrayQueue.java +++ b/lib/jetty/org/eclipse/jetty/util/ConcurrentArrayQueue.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2016 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -25,8 +25,6 @@ import java.util.Iterator; import java.util.List; import java.util.NoSuchElementException; import java.util.Objects; -import java.util.Queue; -import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.atomic.AtomicIntegerArray; import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReferenceArray; @@ -168,6 +166,7 @@ public class ConcurrentArrayQueue extends AbstractQueue return _blocks.compareAndSet(TAIL_OFFSET,current,update); } + @SuppressWarnings("unchecked") @Override public T poll() { @@ -276,7 +275,7 @@ public class ConcurrentArrayQueue extends AbstractQueue } else { - Object element = currentHeadBlock.peek(head); + T element = currentHeadBlock.peek(head); if (element == REMOVED_ELEMENT) { // Already removed, try next index @@ -284,7 +283,7 @@ public class ConcurrentArrayQueue extends AbstractQueue } else { - return (T)element; + return element; } } } @@ -421,8 +420,11 @@ public class ConcurrentArrayQueue extends AbstractQueue advance(); - if (element != REMOVED_ELEMENT) - return (T)element; + if (element != REMOVED_ELEMENT) { + @SuppressWarnings("unchecked") + T e = (T)element; + return e; + } } } @@ -518,9 +520,10 @@ public class ConcurrentArrayQueue extends AbstractQueue elements = new AtomicReferenceArray<>(blockSize); } - public Object peek(int index) + @SuppressWarnings("unchecked") + public E peek(int index) { - return elements.get(index); + return (E)elements.get(index); } public boolean store(int index, E item)