All Known Implementing Classes:
AbstractStorageEngine, TagHistoryStorageEngineBridge

public interface StorageEngine
The StorageEngine interface defines a contract for storing and applying various types of points, including atomic points, complex points, and change points, in an underlying storage system. It supports asynchronous operations and provides methods to create data collectors for managing data storage and collection workflows.
  • Method Details

    • getOrCreateDataCollector

      default DataCollector getOrCreateDataCollector(CollectorId collectorId)
      Creates an instance of DataCollector for managing data collection and storage operations based on the specified CollectorId.
      Parameters:
      collectorId - the CollectorId that will be used to identify and configure the data collector.
      Returns:
      an instance of DataCollector configured for the given collection mode
    • storeAtomic

      CompletionStage<StorageResult<AtomicPoint<?>>> storeAtomic(List<AtomicPoint<?>> atomicPoints)
      Stores a list of atomic points in the underlying storage system. This method processes the provided list of AtomicPoint instances and stores them asynchronously. The result of the storage operation is returned as a CompletionStage that resolves to a StorageResult.
      Parameters:
      atomicPoints - the list of atomic points to be stored
      Returns:
      a CompletionStage that resolves to a StorageResult containing the outcome of storing the atomic points
    • storeComplex

      <C extends ComplexPoint<?>> CompletionStage<StorageResult<C>> storeComplex(List<C> complexPoints)
      Stores a list of complex points in the underlying storage system. This method processes the given list of complex points and stores them asynchronously. The result of the storage operation is returned as a CompletionStage that resolves to a StorageResult.
      Type Parameters:
      C - the type of complex points, extending ComplexPoint
      Parameters:
      complexPoints - the list of complex points to be stored, not null
      Returns:
      a CompletionStage that resolves to a StorageResult containing the result of the storage operation
    • applyChanges

      <C extends ChangePoint<?>> CompletionStage<StorageResult<C>> applyChanges(List<C> changePoints)
      Applies a list of change points to the storage engine and returns the result of the operation. The change points represent modifications that should be applied to the storage system.
      Type Parameters:
      C - the type of change points, extending ChangePoint
      Parameters:
      changePoints - the list of change points to be applied, not null
      Returns:
      a CompletionStage that resolves to a StorageResult containing the result of applying the change points