org.apache.lucene.benchmark.byTask.feeds

## Class RandomFacetSource

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

- All Implemented Interfaces:
    Closeable, AutoCloseable

      public class RandomFacetSource
      extends FacetSource

  Simple implementation of a random facet source

  Supports the following parameters:

  - rand.seed - defines the seed to initialize `Random` with (default: 13).
  - max.doc.facet.dims - Max number of random dimensions to create (default: 5); actual number of dimensions would be anything between 1 and that number.
  - max.doc.facets - maximal #facets per doc (default: 10). Actual number of facets in a certain doc would be anything between 1 and that number.
  - max.facet.depth - maximal #components in a facet (default: 3). Actual number of components in a certain facet would be anything between 1 and that number.

- - ### Field Summary

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

      `encoding, forever, logStep, verbose`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RandomFacetSource()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Called when reading from this content source is no longer required.
    `void` | `configure(FacetsConfig config)`
    `void` | `getNextFacets(List<FacetField> facets)` Fills the next facets content items in the given list.
    `void` | `setConfig(Config config)` Sets the `Config` for this content source.

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

      `resetInputs`

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

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

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

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

- - ### Constructor Detail

    - #### RandomFacetSource

          public RandomFacetSource()

  - ### Method Detail

    - #### getNextFacets

          public void getNextFacets(List<FacetField> facets)
                             throws NoMoreDataException,
                                    IOException

      Description copied from class: `FacetSource`
      Fills the next facets content items in the given list. Implementations must account for multi-threading, as multiple threads can call this method simultaneously.
      Specified by:
        `getNextFacets` in class `FacetSource`
      Throws:
        `NoMoreDataException`
        `IOException`

    - #### configure

          public void configure(FacetsConfig config)

      Specified by:
        `configure` in class `FacetSource`

    - #### close

          public void close()
                     throws IOException

      Description copied from class: `ContentItemsSource`
      Called when reading from this content source is no longer required.
      Specified by:
        `close` in interface `Closeable`
      Specified by:
        `close` in interface `AutoCloseable`
      Specified by:
        `close` in class `ContentItemsSource`
      Throws:
        `IOException`

    - #### setConfig

          public void setConfig(Config config)

      Description copied from class: `ContentItemsSource`
      Sets the `Config` for this content source. If you override this method, you must call super.setConfig.
      Overrides:
        `setConfig` in class `ContentItemsSource`

Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.