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

    All Methods Instance Methods Abstract Methods Concrete Methods
    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 Detail

    - #### FacetSource

          public FacetSource()

  - ### Method Detail

    - #### 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`