Class SupplierBasedFinder<T>

  • All Implemented Interfaces:
    it.tidalwave.util.Finder<T>, java.io.Serializable, java.lang.Cloneable
    Direct Known Subclasses:
    MappingFinder

    @Immutable
    public class SupplierBasedFinder<T>
    extends it.tidalwave.util.spi.SimpleFinderSupport<T>
    A Finder which retrieve results from a Supplier.
    Author:
    Fabrizio Giudici
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface it.tidalwave.util.Finder

        it.tidalwave.util.Finder.InMemorySortCriterion<TYPE extends java.lang.Object>, it.tidalwave.util.Finder.SortCriterion, it.tidalwave.util.Finder.SortDirection
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.util.List<? extends T> computeResults()  
      • Methods inherited from class it.tidalwave.util.spi.FinderSupport

        clone, clone, clonedWith, computeNeededResults, count, from, getContexts, getSource, max, ofType, results, sort, sort, toString, withContext
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface it.tidalwave.util.Finder

        firstResult, iterator, optionalFirstResult, optionalResult, result, stream
    • Constructor Detail

      • SupplierBasedFinder

        public SupplierBasedFinder​(@Nonnull
                                   java.util.function.Supplier<java.util.Collection<? extends T>> supplier)
      • SupplierBasedFinder

        public SupplierBasedFinder​(@Nonnull
                                   SupplierBasedFinder<T> other,
                                   @Nonnull
                                   java.lang.Object override)
    • Method Detail

      • computeResults

        @Nonnull
        protected java.util.List<? extends T> computeResults()
        Overrides:
        computeResults in class it.tidalwave.util.spi.FinderSupport<T,​it.tidalwave.util.Finder<T>>