org.elasticsearch.util.collect
Class ForwardingListIterator<E>

java.lang.Object
  extended by org.elasticsearch.util.collect.ForwardingObject
      extended by org.elasticsearch.util.collect.ForwardingIterator<E>
          extended by org.elasticsearch.util.collect.ForwardingListIterator<E>
All Implemented Interfaces:
java.util.Iterator<E>, java.util.ListIterator<E>

public abstract class ForwardingListIterator<E>
extends ForwardingIterator<E>
implements java.util.ListIterator<E>

A list iterator which forwards all its method calls to another list iterator. Subclasses should override one or more methods to modify the behavior of the backing iterator as desired per the decorator pattern.

See Also:
ForwardingObject

Constructor Summary
ForwardingListIterator()
           
 
Method Summary
 void add(E element)
           
protected abstract  java.util.ListIterator<E> delegate()
          Returns the backing delegate instance that methods are forwarded to.
 boolean hasPrevious()
           
 int nextIndex()
           
 E previous()
           
 int previousIndex()
           
 void set(E element)
           
 
Methods inherited from class org.elasticsearch.util.collect.ForwardingIterator
hasNext, next, remove
 
Methods inherited from class org.elasticsearch.util.collect.ForwardingObject
toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.ListIterator
hasNext, next, remove
 

Constructor Detail

ForwardingListIterator

public ForwardingListIterator()
Method Detail

delegate

protected abstract java.util.ListIterator<E> delegate()
Description copied from class: ForwardingObject
Returns the backing delegate instance that methods are forwarded to. Abstract subclasses generally override this method with an abstract method that has a more specific return type, such as ForwardingSet.delegate(). Concrete subclasses override this method to supply the instance being decorated.

Specified by:
delegate in class ForwardingIterator<E>

add

public void add(E element)
Specified by:
add in interface java.util.ListIterator<E>

hasPrevious

public boolean hasPrevious()
Specified by:
hasPrevious in interface java.util.ListIterator<E>

nextIndex

public int nextIndex()
Specified by:
nextIndex in interface java.util.ListIterator<E>

previous

public E previous()
Specified by:
previous in interface java.util.ListIterator<E>

previousIndex

public int previousIndex()
Specified by:
previousIndex in interface java.util.ListIterator<E>

set

public void set(E element)
Specified by:
set in interface java.util.ListIterator<E>