Interface StoreAndForwardEngine

All Superinterfaces:
QuarantineInterface<PersistentDataBundle<PersistentData>>

public interface StoreAndForwardEngine extends QuarantineInterface<PersistentDataBundle<PersistentData>>
The StoreAndForwardEngine interface provides a common API for store and forward engines.
  • Method Details

    • startup

      void startup()
      Starts up the store and forward engine.
    • shutdown

      void shutdown()
      Shuts down the store and forward engine.
    • configure

      default void configure(com.inductiveautomation.ignition.gateway.storeforward.resource.StoreAndForwardEngineSettings config)
      Configures the store and forward engine using the provided configuration.
      Parameters:
      config - The store and forward configuration to use.
    • registerDataSink

      <T extends PersistentData> void registerDataSink(DataSink<T> sink)
      Registers a data sink with the store and forward engine.
      Parameters:
      sink - The data sink to register.
    • unregisterDataSink

      <T extends PersistentData> void unregisterDataSink(DataSink<T> sink)
      Unregisters a specific data sink with the store and forward engine.
      Parameters:
      sink - The data sink to unregister.
    • unregisterDataSink

      <T extends PersistentData> void unregisterDataSink(PersistentFlavor<T> flavor)
      Unregisters any associated data sinks with the corresponding flavor.
      Parameters:
      flavor - The PersistentFlavor of the data sinks to unregister.
    • storeData

      <T extends PersistentData> void storeData(PersistentDataBundle<T> dataBatch) throws DataStorageException
      Stores a data batch with the associated storage information to the storage forward engine.
      Parameters:
      dataBatch - the data batch with the associated storage information
      Throws:
      DataStorageException - thrown if an error occurs while storing data or if the storage information is invalid
    • getEngineManifest

      EngineManifest getEngineManifest()
      Returns the store and forward engine manifest.
      Returns:
      An EngineManifest mainly indicating what flavor of data is actively being stored.
    • getEngineInformation

      EngineInformation getEngineInformation()
      Returns information about the store and forward engine.
      Returns:
      An EngineInformation containing information about the engine.
    • isAccepting

      boolean isAccepting()
      Checks if the store and forward engine is currently accepting data.
      Returns:
      True if the engine is accepting data, false otherwise.
    • validateFlavor

      default <T extends PersistentData> QualityCode validateFlavor(PersistentFlavor<T> flavor)
      Validates a given PersistentFlavor. The default implementation always gives an uncertain quality code.
      Parameters:
      flavor - The flavor to be validated
      Returns:
      A QualityCode denoting the evaluated quality of the flavor. By default, returns QualityCode.Uncertain.