info.aduna.iteration
Class LimitIteration<E,X extends Exception>

java.lang.Object
  extended by info.aduna.iteration.CloseableIterationBase<E,X>
      extended by info.aduna.iteration.IterationWrapper<E,X>
          extended by info.aduna.iteration.LimitIteration<E,X>
All Implemented Interfaces:
CloseableIteration<E,X>, Iteration<E,X>
Direct Known Subclasses:
LimitIterator

public class LimitIteration<E,X extends Exception>
extends IterationWrapper<E,X>

An Iteration that limits the amount of elements that it returns from an underlying Iteration to a fixed amount. This class returns the first limit elements from the underlying Iteration and drops the rest.


Field Summary
 
Fields inherited from class info.aduna.iteration.IterationWrapper
wrappedIter
 
Fields inherited from class info.aduna.iteration.CloseableIterationBase
logger
 
Constructor Summary
LimitIteration(Iteration<? extends E,X> iter, int limit)
          Creates a new LimitIteration.
 
Method Summary
 boolean hasNext()
          Checks whether the wrapped Iteration contains more elements, closing this Iteration when this is not the case.
 E next()
          Returns the next element from the wrapped Iteration.
 
Methods inherited from class info.aduna.iteration.IterationWrapper
handleClose, remove
 
Methods inherited from class info.aduna.iteration.CloseableIterationBase
close, isClosed
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LimitIteration

public LimitIteration(Iteration<? extends E,X> iter,
                      int limit)
Creates a new LimitIteration.

Parameters:
iter - The underlying Iteration, must not be null.
limit - The number of query answers to return, must be >= 0.
Method Detail

hasNext

public boolean hasNext()
                throws X extends Exception
Description copied from class: IterationWrapper
Checks whether the wrapped Iteration contains more elements, closing this Iteration when this is not the case.

Specified by:
hasNext in interface Iteration<E,X extends Exception>
Overrides:
hasNext in class IterationWrapper<E,X extends Exception>
Returns:
true if the wrapped Iteration contains more elements, false otherwise.
Throws:
X
X extends Exception

next

public E next()
       throws X extends Exception
Description copied from class: IterationWrapper
Returns the next element from the wrapped Iteration.

Specified by:
next in interface Iteration<E,X extends Exception>
Overrides:
next in class IterationWrapper<E,X extends Exception>
Returns:
the next element in the iteration.
Throws:
X extends Exception


Copyright © 1997-2008 Aduna. All Rights Reserved.