Class DistinctIteration<E>

java.lang.Object
org.eclipse.rdf4j.common.iteration.FilterIteration<E>
org.eclipse.rdf4j.common.iteration.DistinctIteration<E>
All Implemented Interfaces:
AutoCloseable, Iterator<E>, CloseableIteration<E>

public class DistinctIteration<E> extends FilterIteration<E>
An Iteration that filters any duplicate elements from an underlying iterator.
  • Constructor Details

    • DistinctIteration

      @Deprecated public DistinctIteration(CloseableIteration<? extends E> iter)
      Deprecated.
      Creates a new DistinctIterator.
      Parameters:
      iter - The underlying iterator.
    • DistinctIteration

      public DistinctIteration(CloseableIteration<? extends E> iter, Set<E> excludeSet)
      Creates a new DistinctIterator.
      Parameters:
      iter - The underlying iterator.
      Set - a hopefully optimized set
    • DistinctIteration

      public DistinctIteration(CloseableIteration<? extends E> iter, Supplier<Set<E>> setMaker)
      Creates a new DistinctIterator.
      Parameters:
      iter - The underlying iterator.
      Supplier - invalid input: '<'Set> a supplier of a hopefully optimized set
  • Method Details

    • accept

      protected boolean accept(E object)
      Returns true if the specified object hasn't been seen before.
      Specified by:
      accept in class FilterIteration<E>
      Parameters:
      object - The object to be tested.
      Returns:
      true if the object should be returned, false otherwise.
    • handleClose

      protected void handleClose()
      Description copied from class: FilterIteration
      Closes this Iteration and also closes the wrapped Iteration if it is a CloseableIteration.
      Specified by:
      handleClose in class FilterIteration<E>
    • add

      protected boolean add(E object)
      Parameters:
      object - to put into the set