org.apache.commons.collections.iterators
Class SingletonListIterator<E>

java.lang.Object
  extended by org.apache.commons.collections.iterators.SingletonListIterator<E>
All Implemented Interfaces:
Iterator<E>, ListIterator<E>, ResettableIterator<E>, ResettableListIterator<E>

public class SingletonListIterator<E>
extends Object
implements ListIterator<E>, ResettableListIterator<E>

SingletonIterator is an ListIterator over a single object instance.

Since:
Commons Collections 2.1
Version:
$Revision: 1.1.1.1 $ $Date: 2005/05/23 04:35:01 $
Author:
Stephen Colebourne, Matt Hall, John Watkinson, Rodney Waldhoff

Constructor Summary
SingletonListIterator(E object)
          Constructs a new SingletonListIterator.
 
Method Summary
 void add(E obj)
          Add always throws UnsupportedOperationException.
 boolean hasNext()
          Is another object available from the iterator?

This returns true if the single object hasn't been returned yet.

 boolean hasPrevious()
          Is a previous object available from the iterator?

This returns true if the single object has been returned.

 E next()
          Get the next object from the iterator.
 int nextIndex()
          Returns the index of the element that would be returned by a subsequent call to next.
 E previous()
          Get the previous object from the iterator.
 int previousIndex()
          Returns the index of the element that would be returned by a subsequent call to previous.
 void remove()
          Remove the object from this iterator.
 void reset()
          Reset the iterator back to the start.
 void set(E obj)
          Set sets the value of the singleton.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SingletonListIterator

public SingletonListIterator(E object)
Constructs a new SingletonListIterator.

Parameters:
object - the single object to return from the iterator
Method Detail

hasNext

public boolean hasNext()
Is another object available from the iterator?

This returns true if the single object hasn't been returned yet.

Specified by:
hasNext in interface Iterator<E>
Specified by:
hasNext in interface ListIterator<E>
Returns:
true if the single object hasn't been returned yet

hasPrevious

public boolean hasPrevious()
Is a previous object available from the iterator?

This returns true if the single object has been returned.

Specified by:
hasPrevious in interface ListIterator<E>
Returns:
true if the single object has been returned

nextIndex

public int nextIndex()
Returns the index of the element that would be returned by a subsequent call to next.

Specified by:
nextIndex in interface ListIterator<E>
Returns:
0 or 1 depending on current state.

previousIndex

public int previousIndex()
Returns the index of the element that would be returned by a subsequent call to previous. A return value of -1 indicates that the iterator is currently at the start.

Specified by:
previousIndex in interface ListIterator<E>
Returns:
0 or -1 depending on current state.

next

public E next()
Get the next object from the iterator.

This returns the single object if it hasn't been returned yet.

Specified by:
next in interface Iterator<E>
Specified by:
next in interface ListIterator<E>
Returns:
the single object
Throws:
NoSuchElementException - if the single object has already been returned

previous

public E previous()
Get the previous object from the iterator.

This returns the single object if it has been returned.

Specified by:
previous in interface ListIterator<E>
Returns:
the single object
Throws:
NoSuchElementException - if the single object has not already been returned

remove

public void remove()
Remove the object from this iterator.

Specified by:
remove in interface Iterator<E>
Specified by:
remove in interface ListIterator<E>
Throws:
IllegalStateException - if the next or previous method has not yet been called, or the remove method has already been called after the last call to next or previous.

add

public void add(E obj)
Add always throws UnsupportedOperationException.

Specified by:
add in interface ListIterator<E>
Throws:
UnsupportedOperationException - always

set

public void set(E obj)
Set sets the value of the singleton.

Specified by:
set in interface ListIterator<E>
Parameters:
obj - the object to set
Throws:
IllegalStateException - if next has not been called or the object has been removed

reset

public void reset()
Reset the iterator back to the start.

Specified by:
reset in interface ResettableIterator<E>
Specified by:
reset in interface ResettableListIterator<E>


Copyright © 2005-2005 Apache Software Foundation, Matt Hall, John Watkinson. All Rights Reserved.