Class RemoteHistorianProvider

java.lang.Object
com.inductiveautomation.historian.gateway.types.remote.RemoteHistorianProvider
All Implemented Interfaces:
Historian<com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings>, TagHistoryProvider<com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings>, AnnotationStorageProvider, TagHistoryQueryInterface

public class RemoteHistorianProvider extends Object implements TagHistoryProvider<com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings>, AnnotationStorageProvider
  • Constructor Details

    • RemoteHistorianProvider

      public RemoteHistorianProvider(GatewayContext context, String name, com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings settings)
  • Method Details

    • provider

      protected TagHistoryService provider()
    • browse

      public Results browse(QualifiedPath root, BrowseFilter filter)
      Specified by:
      browse in interface TagHistoryQueryInterface
    • transformResultsFromRemote

      protected Collection<Result> transformResultsFromRemote(Collection<Result> results)
    • transformPathFromRemote

      protected QualifiedPath transformPathFromRemote(QualifiedPath path)
    • transformPathToRemote

      protected QualifiedPath transformPathToRemote(QualifiedPath path)
      Replaces "histProvider" elements with remote provider name
    • transformPath

      protected QualifiedPath transformPath(QualifiedPath path, boolean fromRemote)
    • createQuery

      public HistoryQueryExecutor createQuery(List<ColumnQueryDefinition> columns, QueryController queryController)
      Specified by:
      createQuery in interface TagHistoryQueryInterface
    • getName

      public String getName()
      Description copied from interface: Historian
      Retrieves the name of the historian.
      Specified by:
      getName in interface Historian<com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings>
      Returns:
      the name of the historian as a String
    • getSettings

      public com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings getSettings()
      Description copied from interface: Historian
      Retrieves the settings associated with the historian. The returned settings provide configuration details specific to the historian's operation.
      Specified by:
      getSettings in interface Historian<com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings>
      Returns:
      an instance of S representing the settings of the historian
    • getStatus

      public ProfileStatus getStatus()
      Description copied from interface: Historian
      Retrieves the current status of the historian.
      Specified by:
      getStatus in interface Historian<com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings>
      Returns:
      the current ProfileStatus, indicating the general state and optional message describing the historian's operational state.
    • getAvailableAggregates

      public List<Aggregate> getAvailableAggregates()
      Description copied from interface: TagHistoryQueryInterface
      Returns a list of aggregate functions that can be used with the server. Only expected to be valid if the server is enabled and available. Also, should only return null if the aggregates can not be retrieved for some reason. If the server simply does not support any aggregate functions, an empty list should be returned.
      Specified by:
      getAvailableAggregates in interface TagHistoryQueryInterface
    • queryDensity

      public TimelineSet queryDensity(List<QualifiedPath> paths, Date start, Date end, String queryId) throws Exception
      Specified by:
      queryDensity in interface TagHistoryQueryInterface
      Throws:
      Exception
    • queryAnnotations

      public List<Annotation> queryAnnotations(List<QualifiedPath> paths, Date start, Date end, TypeFilter filter, String queryId) throws Exception
      Specified by:
      queryAnnotations in interface TagHistoryQueryInterface
      Throws:
      Exception
    • startup

      public void startup()
      Description copied from interface: Historian
      Starts the historian and initializes any necessary resources required for its operation. This method is responsible for setting up the internal state of the historian and preparing it to handle incoming requests or data processing.

      Implementations may include the following operations: - Allocating and initializing required resources. - Establishing connections to external systems or storage backends. - Setting up any internal scheduling or maintenance tasks.

      If this method is invoked when the historian is already started, an IllegalStateException may be thrown to prevent duplicate initialization.

      Specified by:
      startup in interface Historian<com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings>
    • shutdown

      public void shutdown()
      Description copied from interface: Historian
      Shuts down the historian and any associated resources. This method is responsible for ensuring that the historian ceases operations cleanly and releases any allocated resources. Once invoked, the historian should no longer accept or process new requests.

      Implementations may include tasks such as: - Stopping active data processing tasks. - Freeing up connections to external systems or storage. - Logging a shutdown message for diagnostic or auditing purposes.

      If this method is overridden in a subclass, it is recommended to call the superclass implementation to ensure proper cleanup behavior.

      Specified by:
      shutdown in interface Historian<com.inductiveautomation.historian.gateway.types.remote.config.RemoteHistorianSettings>
    • storeAnnotations

      public List<QualifiedValue> storeAnnotations(List<Annotation> annotations)
      Specified by:
      storeAnnotations in interface AnnotationStorageProvider