Interface IndexAbstraction

All Known Implementing Classes:
IndexAbstraction.Alias, IndexAbstraction.DataStream, IndexAbstraction.DataStreamAlias, IndexAbstraction.Index

public interface IndexAbstraction
An index abstraction is a reference to one or more concrete indices. An index abstraction has a unique name and encapsulates all the IndexMetadata instances it is pointing to. Also depending on type it may refer to a single or many concrete indices and may or may not have a write index.
  • Method Details

    • getType

      Returns:
      the type of the index abstraction
    • getName

      String getName()
      Returns:
      the name of the index abstraction
    • getIndices

      List<IndexMetadata> getIndices()
      Returns:
      All IndexMetadata of all concrete indices this index abstraction is referring to.
    • getWriteIndex

      @Nullable IndexMetadata getWriteIndex()
      A write index is a dedicated concrete index, that accepts all the new documents that belong to an index abstraction.

      A write index may also be a regular concrete index of a index abstraction and may therefore also be returned by getIndices(). An index abstraction may also not have a dedicated write index.

      Returns:
      the write index of this index abstraction or null if this index abstraction doesn't have a write index.
    • getParentDataStream

      @Nullable IndexAbstraction.DataStream getParentDataStream()
      Returns:
      the data stream to which this index belongs or null if this is not a concrete index or if it is a concrete index that does not belong to a data stream.
    • isHidden

      boolean isHidden()
      Returns:
      whether this index abstraction is hidden or not
    • isSystem

      boolean isSystem()
      Returns:
      whether this index abstraction should be treated as a system index or not
    • isDataStreamRelated

      default boolean isDataStreamRelated()
      Returns:
      whether this index abstraction is related to data streams