org.jrdf.graph.local.iterator
Class OneFixedIterator

java.lang.Object
  extended by org.jrdf.graph.local.iterator.OneFixedIterator
All Implemented Interfaces:
Iterator<Triple>, ClosableLocalIterator<Triple>, ClosableIterator<Triple>

public final class OneFixedIterator
extends Object
implements ClosableLocalIterator<Triple>

An iterator that iterates over a group with a single fixed node. Relies on internal iterators which iterate over all entries in a submap, and the sets they point to. The thirdIndexIterator is used to indicate the current position. It will always be set to return the next value until it reaches the end of the group.

Version:
$Revision: 1881 $
Author:
Paul Gearon, Andrew Newman

Constructor Summary
OneFixedIterator(Long fixedFirstNode, GraphHandler newHandler)
          Constructor.
 
Method Summary
 boolean close()
          Closes the iterator by freeing any resources that it current holds.
 boolean hasNext()
           
 Triple next()
           
 void remove()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OneFixedIterator

public OneFixedIterator(Long fixedFirstNode,
                        GraphHandler newHandler)
Constructor. Sets up the internal iterators.

Throws:
IllegalArgumentException - Must pass in a GraphElementFactory memory implementation.
Method Detail

hasNext

public boolean hasNext()
Specified by:
hasNext in interface Iterator<Triple>

next

public Triple next()
            throws NoSuchElementException
Specified by:
next in interface Iterator<Triple>
Throws:
NoSuchElementException

remove

public void remove()
Specified by:
remove in interface Iterator<Triple>

close

public boolean close()
Description copied from interface: ClosableIterator
Closes the iterator by freeing any resources that it current holds.

This must be done as soon as possible. Once an iterator is closed none of the operations on a iterator will operate i.e. they will throw an exception.

Specified by:
close in interface ClosableIterator<Triple>
Returns:
true if it was successfully closed.