info.magnolia.jcr.iterator
Class FilteringRangeIterator<T>

java.lang.Object
  extended by info.magnolia.jcr.iterator.FilteringRangeIterator<T>
Type Parameters:
T -
All Implemented Interfaces:
Iterator, javax.jcr.RangeIterator
Direct Known Subclasses:
ContentDecoratorNodeIterator, ContentDecoratorPropertyIterator, FilteringNodeIterator, FilteringPropertyIterator

public abstract class FilteringRangeIterator<T>
extends Object
implements javax.jcr.RangeIterator

Base class for implementing filtering JCR iterators. Does not support the remove method because doing so would make it impossible to implement the getSize method. Should not be a problem since Jackrabbit anyway does not support the remove method on its iterators.

Version:
$Id$

Constructor Summary
FilteringRangeIterator(Iterator<T> iterator)
           
 
Method Summary
protected abstract  boolean evaluate(T t)
           
 long getPosition()
           
 long getSize()
           
 boolean hasNext()
           
 T next()
           
 void remove()
           
 void skip(long skipNum)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FilteringRangeIterator

public FilteringRangeIterator(Iterator<T> iterator)
Method Detail

hasNext

public boolean hasNext()
Specified by:
hasNext in interface Iterator

next

public T next()
Specified by:
next in interface Iterator

remove

public void remove()
Specified by:
remove in interface Iterator

getPosition

public long getPosition()
Specified by:
getPosition in interface javax.jcr.RangeIterator

skip

public void skip(long skipNum)
Specified by:
skip in interface javax.jcr.RangeIterator

getSize

public long getSize()
Specified by:
getSize in interface javax.jcr.RangeIterator

evaluate

protected abstract boolean evaluate(T t)


Copyright © 2003-2013 Magnolia International Ltd.. All Rights Reserved.