Package org.apache.lucene.benchmark.byTask.feeds

# Class FacetSource

java.lang.Object
org.apache.lucene.benchmark.byTask.feeds.ContentItemsSource
org.apache.lucene.benchmark.byTask.feeds.FacetSource

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`

Direct Known Subclasses:
  `RandomFacetSource`

public abstract class FacetSource extends ContentItemsSource
Source items for facets.

For supported configuration parameters see `ContentItemsSource`.

- ## Field Summary

  ### Fields inherited from class org.apache.lucene.benchmark.byTask.feeds.ContentItemsSource

  `encoding, forever, logStep, verbose`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `FacetSource()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract void`
  `configure(FacetsConfig config)`
  `abstract void`
  `getNextFacets(List<FacetField> facets)`
  Fills the next facets content items in the given list.
  `void`
  `resetInputs()`
  Resets the input for this content source, so that the test would behave as if it was just started, input-wise.

  ### Methods inherited from class org.apache.lucene.benchmark.byTask.feeds.ContentItemsSource

  `addBytes, addItem, close, collectFiles, getBytesCount, getConfig, getItemsCount, getTotalBytesCount, getTotalItemsCount, printStatistics, setConfig, shouldLog`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### FacetSource

    public FacetSource()

- ## Method Details

  - ### getNextFacets

    public abstract void getNextFacets(List<FacetField> facets) throws NoMoreDataException, IOException
    Fills the next facets content items in the given list. Implementations must account for multi-threading, as multiple threads can call this method simultaneously.
    Throws:
      `NoMoreDataException`
      `IOException`

  - ### configure

    public abstract void configure(FacetsConfig config)

  - ### resetInputs

    public void resetInputs() throws IOException
    Description copied from class: `ContentItemsSource`
    Resets the input for this content source, so that the test would behave as if it was just started, input-wise.

    NOTE: the default implementation resets the number of bytes and items generated since the last reset, so it's important to call super.resetInputs in case you override this method.

    Overrides:
      `resetInputs` in class `ContentItemsSource`
    Throws:
      `IOException`