public void remove() { if (lastReturnedIndex == -1) { throw new IllegalStateException(); } // First element can be removed quickly if (lastReturnedIndex == head) { UnboundedFifoBuffer.this.remove(); lastReturnedIndex = -1; return; } // Other elements require us to shift the subsequent elements int i = increment(lastReturnedIndex); while (i != tail) { buffer[decrement(i)] = buffer[i]; i = increment(i); } lastReturnedIndex = -1; tail = decrement(tail); buffer[tail] = null; index = decrement(index); }
public void remove() { if (lastReturnedIndex == -1) { throw new IllegalStateException(); } // First element can be removed quickly if (lastReturnedIndex == head) { UnboundedFifoBuffer.this.remove(); lastReturnedIndex = -1; return; } // Other elements require us to shift the subsequent elements int i = increment(lastReturnedIndex); while (i != tail) { buffer[decrement(i)] = buffer[i]; i = increment(i); } lastReturnedIndex = -1; tail = decrement(tail); buffer[tail] = null; index = decrement(index); }
/** * Tests that UnboundedFifoBuffer removes elements in the right order. */ public void testUnboundedFifoBufferRemove() { resetFull(); int size = confirmed.size(); for (int i = 0; i < size; i++) { Object o1 = ((UnboundedFifoBuffer)collection).remove(); Object o2 = ((ArrayList)confirmed).remove(0); assertEquals("Removed objects should be equal", o1, o2); verify(); } }
public void testInternalStateIteratorRemoveWithWrap3() { UnboundedFifoBuffer test = new UnboundedFifoBuffer(3); test.add("A"); test.add("B"); test.add("C"); test.remove("A"); test.remove("B"); test.add("D"); test.add("E"); assertEquals(4, test.buffer.length); assertEquals(2, test.head); assertEquals(1, test.tail); Iterator it = test.iterator(); assertEquals("C", it.next()); assertEquals("D", it.next()); assertEquals("E", it.next()); it.remove(); assertEquals(4, test.buffer.length); assertEquals(2, test.head); assertEquals(0, test.tail); }
public void testInternalStateIteratorRemoveWithWrap2() { UnboundedFifoBuffer test = new UnboundedFifoBuffer(3); test.add("A"); test.add("B"); test.add("C"); test.remove("A"); test.remove("B"); test.add("D"); test.add("E"); assertEquals(4, test.buffer.length); assertEquals(2, test.head); assertEquals(1, test.tail); Iterator it = test.iterator(); assertEquals("C", it.next()); assertEquals("D", it.next()); it.remove(); assertEquals(4, test.buffer.length); assertEquals(2, test.head); assertEquals(0, test.tail); }
public void testInternalStateIteratorRemoveWithWrap1() { UnboundedFifoBuffer test = new UnboundedFifoBuffer(3); test.add("A"); test.add("B"); test.add("C"); test.remove("A"); test.remove("B"); test.add("D"); test.add("E"); assertEquals(4, test.buffer.length); assertEquals(2, test.head); assertEquals(1, test.tail); Iterator it = test.iterator(); assertEquals("C", it.next()); it.remove(); assertEquals(4, test.buffer.length); assertEquals(3, test.head); assertEquals(1, test.tail); }
public void testInternalStateIteratorRemoveWithTailAtEnd3() { UnboundedFifoBuffer test = new UnboundedFifoBuffer(3); test.add("A"); test.add("B"); test.add("C"); test.remove("A"); test.add("D"); assertEquals(4, test.buffer.length); assertEquals(1, test.head); assertEquals(0, test.tail); Iterator it = test.iterator(); assertEquals("B", it.next()); assertEquals("C", it.next()); assertEquals("D", it.next()); it.remove(); assertEquals(4, test.buffer.length); assertEquals(1, test.head); assertEquals(3, test.tail); }
public void testInternalStateIteratorRemoveWithTailAtEnd2() { UnboundedFifoBuffer test = new UnboundedFifoBuffer(3); test.add("A"); test.add("B"); test.add("C"); test.remove("A"); test.add("D"); assertEquals(4, test.buffer.length); assertEquals(1, test.head); assertEquals(0, test.tail); Iterator it = test.iterator(); assertEquals("B", it.next()); assertEquals("C", it.next()); it.remove(); assertEquals(4, test.buffer.length); assertEquals(1, test.head); assertEquals(3, test.tail); }
public void testInternalStateIteratorRemoveWithTailAtEnd1() { UnboundedFifoBuffer test = new UnboundedFifoBuffer(3); test.add("A"); test.add("B"); test.add("C"); test.remove("A"); test.add("D"); assertEquals(4, test.buffer.length); assertEquals(1, test.head); assertEquals(0, test.tail); Iterator it = test.iterator(); assertEquals("B", it.next()); it.remove(); assertEquals(4, test.buffer.length); assertEquals(2, test.head); assertEquals(0, test.tail); }
public void testInternalStateRemove2() { UnboundedFifoBuffer test = new UnboundedFifoBuffer(4); test.add("A"); test.add("B"); test.add("C"); assertEquals(5, test.buffer.length); assertEquals(0, test.head); assertEquals(3, test.tail); test.remove("B"); assertEquals(5, test.buffer.length); assertEquals(0, test.head); assertEquals(2, test.tail); test.add("D"); assertEquals(5, test.buffer.length); assertEquals(0, test.head); assertEquals(3, test.tail); }
public void testInternalStateRemove1() { UnboundedFifoBuffer test = new UnboundedFifoBuffer(4); test.add("A"); test.add("B"); test.add("C"); assertEquals(5, test.buffer.length); assertEquals(0, test.head); assertEquals(3, test.tail); test.remove("A"); assertEquals(5, test.buffer.length); assertEquals(1, test.head); assertEquals(3, test.tail); test.add("D"); assertEquals(5, test.buffer.length); assertEquals(1, test.head); assertEquals(4, test.tail); }
/** * Called when the queue is full to remove the oldest element.<p> * * @see org.apache.commons.collections.buffer.BoundedFifoBuffer#remove() */ @Override public Object remove() { CmsPublishJobInfoBean publishJob = (CmsPublishJobInfoBean)super.remove(); return publishJob; } }, CmsPublishJobInfoBean.class));
/** * Called when the queue is full to remove the oldest element.<p> * * @see org.apache.commons.collections.buffer.BoundedFifoBuffer#remove() */ @Override public Object remove() { CmsPublishJobInfoBean publishJob = (CmsPublishJobInfoBean)super.remove(); return publishJob; } }, CmsPublishJobInfoBean.class));
public void remove() { if (lastReturnedIndex == -1) { throw new IllegalStateException(); } // First element can be removed quickly if (lastReturnedIndex == head) { UnboundedFifoBuffer.this.remove(); lastReturnedIndex = -1; return; } // Other elements require us to shift the subsequent elements int i = increment(lastReturnedIndex); while (i != tail) { buffer[decrement(i)] = buffer[i]; i = increment(i); } lastReturnedIndex = -1; tail = decrement(tail); buffer[tail] = null; index = decrement(index); }
public void remove() { if (lastReturnedIndex == -1) { throw new IllegalStateException(); } // First element can be removed quickly if (lastReturnedIndex == head) { UnboundedFifoBuffer.this.remove(); lastReturnedIndex = -1; return; } // Other elements require us to shift the subsequent elements int i = increment(lastReturnedIndex); while (i != tail) { buffer[decrement(i)] = buffer[i]; i = increment(i); } lastReturnedIndex = -1; tail = decrement(tail); buffer[tail] = null; index = decrement(index); }
public void remove() { if (lastReturnedIndex == -1) { throw new IllegalStateException(); } // First element can be removed quickly if (lastReturnedIndex == head) { UnboundedFifoBuffer.this.remove(); lastReturnedIndex = -1; return; } // Other elements require us to shift the subsequent elements int i = increment(lastReturnedIndex); while (i != tail) { buffer[decrement(i)] = buffer[i]; i = increment(i); } lastReturnedIndex = -1; tail = decrement(tail); buffer[tail] = null; index = decrement(index); }
public void remove() { if (lastReturnedIndex == -1) { throw new IllegalStateException(); } // First element can be removed quickly if (lastReturnedIndex == head) { UnboundedFifoBuffer.this.remove(); lastReturnedIndex = -1; return; } // Other elements require us to shift the subsequent elements int i = increment(lastReturnedIndex); while (i != tail) { buffer[decrement(i)] = buffer[i]; i = increment(i); } lastReturnedIndex = -1; tail = decrement(tail); buffer[tail] = null; index = decrement(index); }
public void remove() { if (lastReturnedIndex == -1) { throw new IllegalStateException(); } // First element can be removed quickly if (lastReturnedIndex == head) { UnboundedFifoBuffer.this.remove(); lastReturnedIndex = -1; return; } // Other elements require us to shift the subsequent elements int i = increment(lastReturnedIndex); while (i != tail) { buffer[decrement(i)] = buffer[i]; i = increment(i); } lastReturnedIndex = -1; tail = decrement(tail); buffer[tail] = null; index = decrement(index); }