Interface IndexProducer

All Known Implementing Classes:
AbstractIndexProducer, AssetManagerImpl, EventCommentDatabaseServiceImpl, SchedulerServiceImpl, SearchServiceIndex, SeriesServiceImpl, WorkflowServiceImpl

public interface IndexProducer
This service handles data that's added to an ElasticSearch index.
  • Method Details

    • repopulate

      void repopulate(IndexRebuildService.DataType dataType) throws IndexRebuildException
      Re-add the data of this service to the index.
      Parameters:
      dataType - Limit the data added to the index. Use ALL to re-index all data.
      Throws:
      IndexRebuildException
    • clear

      default void clear() throws IOException
      Clear this service's own index, if it maintains one that is separate from the shared ElasticsearchIndex. Most services feed data into that shared index, which is cleared independently, so the default implementation is a no-op. Services with their own dedicated index (e.g. the search service) must override this so that a full index clear or rebuild also clears their data.
      Throws:
      IOException
    • getService

      Get the service that implements IndexProducer.
      Returns:
      service The service that implements IndexProducer.
    • getSupportedDataTypes

      default IndexRebuildService.DataType[] getSupportedDataTypes()
      Get supported data types for reindexing. Default: All. Should be overridden if a service offers partial index rebuilds.
      Returns:
      Array of supported data types
    • dataTypeSupported

      default boolean dataTypeSupported(IndexRebuildService.DataType dataType)
      Check if the data type is supported by this service.
      Parameters:
      dataType - The data type to check.
      Returns:
      Whether the data type is supported or not.