Class FilterIterator

java.lang.Object
org.apache.commons.collections.iterators.FilterIterator
All Implemented Interfaces:
Iterator
Direct Known Subclasses:
UniqueFilterIterator

@Deprecated(since="2021-04-30") public class FilterIterator extends Object implements Iterator
Deprecated.
Apache Commons Collections version 3.x is being deprecated from AEMaaCS. The upgraded version 4.4 of Commons Collections is already included as replacement. Customers are advised to upgrade to this version of the library. Please note: the package name was changed to org.apache.commons.collections4. Further note that there are AEM APIs currently exposing the old collections classes; these will be updated in upcoming releases.
Decorates another Iterator using a predicate to filter elements.

This iterator decorates the underlying iterator, only allowing through those elements that match the specified Predicate.

Since:
Commons Collections 1.0
  • Constructor Summary

    Constructors
    Constructor
    Description
    Deprecated.
    Constructs a new FilterIterator that will not function until setIterator is invoked.
    Deprecated.
    Constructs a new FilterIterator that will not function until setPredicate is invoked.
    FilterIterator(Iterator iterator, Predicate predicate)
    Deprecated.
    Constructs a new FilterIterator that will use the given iterator and predicate.
  • Method Summary

    Modifier and Type
    Method
    Description
    Deprecated.
    Gets the iterator this iterator is using.
    Deprecated.
    Gets the predicate this iterator is using.
    boolean
    Deprecated.
    Returns true if the underlying iterator contains an object that matches the predicate.
    Deprecated.
    Returns the next object that matches the predicate.
    void
    Deprecated.
    Removes from the underlying collection of the base iterator the last element returned by this iterator.
    void
    Deprecated.
    Sets the iterator for this iterator to use.
    void
    Deprecated.
    Sets the predicate this the iterator to use.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface java.util.Iterator

    forEachRemaining
  • Constructor Details

    • FilterIterator

      public FilterIterator()
      Deprecated.
      Constructs a new FilterIterator that will not function until setIterator is invoked.
    • FilterIterator

      public FilterIterator(Iterator iterator)
      Deprecated.
      Constructs a new FilterIterator that will not function until setPredicate is invoked.
      Parameters:
      iterator - the iterator to use
    • FilterIterator

      public FilterIterator(Iterator iterator, Predicate predicate)
      Deprecated.
      Constructs a new FilterIterator that will use the given iterator and predicate.
      Parameters:
      iterator - the iterator to use
      predicate - the predicate to use
  • Method Details

    • hasNext

      public boolean hasNext()
      Deprecated.
      Returns true if the underlying iterator contains an object that matches the predicate.
      Specified by:
      hasNext in interface Iterator
      Returns:
      true if there is another object that matches the predicate
      Throws:
      NullPointerException - if either the iterator or predicate are null
    • next

      public Object next()
      Deprecated.
      Returns the next object that matches the predicate.
      Specified by:
      next in interface Iterator
      Returns:
      the next object which matches the given predicate
      Throws:
      NullPointerException - if either the iterator or predicate are null
      NoSuchElementException - if there are no more elements that match the predicate
    • remove

      public void remove()
      Deprecated.
      Removes from the underlying collection of the base iterator the last element returned by this iterator. This method can only be called if next() was called, but not after hasNext(), because the hasNext() call changes the base iterator.
      Specified by:
      remove in interface Iterator
      Throws:
      IllegalStateException - if hasNext() has already been called.
    • getIterator

      public Iterator getIterator()
      Deprecated.
      Gets the iterator this iterator is using.
      Returns:
      the iterator
    • setIterator

      public void setIterator(Iterator iterator)
      Deprecated.
      Sets the iterator for this iterator to use. If iteration has started, this effectively resets the iterator.
      Parameters:
      iterator - the iterator to use
    • getPredicate

      public Predicate getPredicate()
      Deprecated.
      Gets the predicate this iterator is using.
      Returns:
      the predicate
    • setPredicate

      public void setPredicate(Predicate predicate)
      Deprecated.
      Sets the predicate this the iterator to use.
      Parameters:
      predicate - the predicate to use