Class HistorianGatewayHook

java.lang.Object
com.inductiveautomation.ignition.gateway.model.AbstractGatewayModuleHook
com.inductiveautomation.historian.gateway.HistorianGatewayHook
All Implemented Interfaces:
GatewayModuleHook

public class HistorianGatewayHook extends AbstractGatewayModuleHook
  • Constructor Details

    • HistorianGatewayHook

      public HistorianGatewayHook()
  • Method Details

    • get

      public static HistorianGatewayHook get(@Nonnull GatewayContext context)
    • setup

      public void setup(GatewayContext context)
      Description copied from interface: GatewayModuleHook
      Called before register. The module can create data structures, loggers, etc. The module should not reach out to other parts of the system and expect them to be ready or created yet.
    • initializeScriptManager

      public void initializeScriptManager(ScriptManager manager)
      Description copied from interface: GatewayModuleHook
      Initialize a newly-instantiated script manager. This will be called exactly once for any given ScriptManager instance. Usually this will involve calling ScriptManager.addScriptModule(String, Object), which reflectively loads the public (instance and static) java functions from the given object into the scripting environment, at the provided path.

      This function may be called before GatewayModuleHook.startup(LicenseState), but never before GatewayModuleHook.setup(GatewayContext).

      Specified by:
      initializeScriptManager in interface GatewayModuleHook
      Overrides:
      initializeScriptManager in class AbstractGatewayModuleHook
    • getHistorianManager

      public HistorianManagerImpl getHistorianManager()
    • getRecordMigrationStrategies

      public List<IdbMigrationStrategy> getRecordMigrationStrategies()
      Returns:
      a list of migration strategies to run if a pre-8.3.0 internal database is found. This method will be called before GatewayModuleHook.setup(GatewayContext).
    • startup

      public void startup(LicenseState activationState)
      Description copied from interface: GatewayModuleHook
      Called to initialize the module. Will only be called once. Persistence interface is available, but only in read-only mode.
    • shutdown

      public void shutdown()
      Description copied from interface: GatewayModuleHook
      Called to shutdown this module. Note that this instance will never be started back up - a new one will be created if a restart is desired
    • getMountedResourceFolder

      public Optional<String> getMountedResourceFolder()
      Returns:
      the path to a folder in one of the module's gateway jar files that should be mounted at /res/module-id/foldername
    • mountRouteHandlers

      public void mountRouteHandlers(RouteGroup routes)
      Description copied from interface: GatewayModuleHook
      Provides a chance for the module to mount any route handlers it wants. These will be active at /main/data/module-id/* See RouteGroup for details. Will be called after startup().
    • getMountPathAlias

      public Optional<String> getMountPathAlias()
      Description copied from interface: GatewayModuleHook
      Used by the mounting underneath /res/module-id/* and /data/module-id/* as an alternate mounting path instead of your module id, if present.
    • getRpcImplementation

      public Optional<GatewayRpcImplementation> getRpcImplementation()
      Description copied from interface: GatewayModuleHook
      Returns the RPC implementation for this module, if any. This is the recommended way to expose RPC functions to the Designer or Vision Client if required. The return value will be cached for the lifetime of the Gateway.
      Specified by:
      getRpcImplementation in interface GatewayModuleHook
      Overrides:
      getRpcImplementation in class AbstractGatewayModuleHook
      See Also:
    • isMakerEditionCompatible

      public boolean isMakerEditionCompatible()
      Returns:
      true if this module opts-in to participating in Ignition Maker Edition. Default is false. If you override this and return true, your module will become activated when running in a Maker Edition installation.
    • registerProtobufClasses

      protected void registerProtobufClasses()
    • register

      protected void register(AggregationMode mode, AggregationFunction func)
    • registerAggregationFunctions

      protected void registerAggregationFunctions()