Class ReportingGatewayHook

    • Constructor Detail

      • ReportingGatewayHook

        public ReportingGatewayHook()
    • Method Detail

      • get

        public static ReportingGatewayHook get()
        Statically retrieves the hook from within a wicket request cycle
      • setup

        public void setup​(GatewayContext context)
        Description copied from interface: GatewayModuleHook
        Called to before startup. This is the chance for the module to add its extension points and update persistent records and schemas. None of the managers will be started up at this point, but the extension point managers will accept extension point types.
      • startup

        public void startup​(LicenseState licenseState)
        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
      • 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.
      • executeReport

        @Nullable
        public <T> T executeReport​(java.lang.String projectName,
                                   java.lang.String reportPath,
                                   java.util.Map<java.lang.String,​java.lang.Object> parameters,
                                   ReportProcessor<T> reportProcessor)
                            throws java.lang.Exception
        Execute a report. This involves reading and decoding the report resource from the project, fetching the data for the report, and having the reportmill engine turn the report template into an actualized report.
        Parameters:
        reportProcessor - Assuming report execution gets this far, this object will be given a chance to act upon the finished report. It can also convert the report into a different format and return it, which will then be the return value of this whole method.
        Returns:
        the return value of the reportProcessor, or null if the report was cancelled
        Throws:
        java.lang.Exception - if anything goes wrong, like missing project, missing report, invalid report, data fetch issues, etc.
      • getReportData

        public ReportExecutionData getReportData​(java.lang.String projectName,
                                                 java.lang.String reportPath,
                                                 ReportDataConfiguration dataConfig,
                                                 java.util.Map<java.lang.String,​java.lang.Object> parameters,
                                                 boolean sampleData,
                                                 ReportExecutionContext execContext)
                                          throws java.lang.Exception
        Throws:
        java.lang.Exception
      • getReportData

        public ReportExecutionData getReportData​(java.lang.String projectName,
                                                 java.lang.String reportPath,
                                                 ReportDataConfiguration dataConfig,
                                                 java.util.Map<java.lang.String,​java.lang.Object> parameters,
                                                 java.util.Map<java.lang.String,​java.lang.Object> extraConfigs,
                                                 boolean sampleData,
                                                 ReportExecutionContext execContext)
                                          throws java.lang.Exception
        Throws:
        java.lang.Exception
      • 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 java.util.Optional<java.lang.String> getMountPathAlias()
        Description copied from interface: GatewayModuleHook
        Used by the mounting underneath /res/module-id/* and /main/data/module-id/* as an alternate mounting path instead of your module id, if present.
      • getMountedResourceFolder

        public java.util.Optional<java.lang.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
      • getStatusOverviewContributor

        public java.util.Optional<OverviewContributor> getStatusOverviewContributor()
        Description copied from interface: GatewayModuleHook
        Implement this method to contribute meta data to the Status section's Systems / Overview page.
      • getLicenseEdition

        public java.lang.String getLicenseEdition()
      • getLimitedReportCount

        public int getLimitedReportCount()
      • isTrialMode

        public boolean isTrialMode()
      • isTrialExpired

        public boolean isTrialExpired()