Interface ISolutionEngine

  • All Superinterfaces:
    ILogger

    public interface ISolutionEngine
    extends ILogger
    The Solution Engine handles loading and launching execution of solutions and action sequences. There is one solution engine per request, which can launch one or more action sequences.
    • Method Detail

      • setParameterProvider

        void setParameterProvider​(String name,
                                  IParameterProvider parameterProvider)
        Sets the source for input parameters.
        Parameters:
        name - name to give to this provider
        parameterProvider - instance of a provider
        See Also:
        org.pentaho.platform.api.engine.services.IParameterProvider
      • execute

        IRuntimeContext execute​(String actionPath,
                                String processId,
                                boolean async,
                                boolean instanceEnds,
                                String instanceId,
                                boolean persisted,
                                Map parameterProviderMap,
                                IOutputHandler outputHandler,
                                IActionCompleteListener listener,
                                IPentahoUrlFactory urlFactory,
                                List messages)
        Executes the action sequence specified in the manner described in the parameters
        Parameters:
        actionPath - the path to the solution action that will lead to the requested action
        processId - id for the given action sequence document
        async - synchronous(false) or asynchronous(true) execution (not currently used)
        instanceId - id to be handed to the runtime repository
        persisted - if true, store runtime data, otherwise do not
        parameterProviderMap - group of ParameterProviders, sources for inout parameters
        outputHandler - handler used to query for addition parameters
        listener - object notified on completion of action sequences
        urlFactory - factory for building urls
        messages - list into which debug, info, warning, and errors messages will be added
        Returns:
        IRuntimeContext the RuntimeContext associated with this action sequence execution
        See Also:
        IRuntimeContext
      • execute

        IRuntimeContext execute​(IRuntimeContext runtime,
                                String actionPath,
                                String processId,
                                boolean async,
                                boolean instanceEnds,
                                Map parameterProviderMap,
                                IOutputHandler outputHandler)
        Executes the action sequence specified
        Parameters:
        runtime - The runtime context for the execution
        actionPath - path to the action
        processId - id for the given process, typically a GUID or unique id for this execution
        async - true if the execution should be asynchronous.
        instanceEnds - currently true indicating that the process ends with this execution
        parameterProviderMap - Map of parameter providers to use for the execution
        outputHandler - The output handler for dealing with user feedback
        Returns:
        The runtime context for the execution
        See Also:
        IRuntimeContext, IParameterProvider, IActionSequence
      • execute

        IRuntimeContext execute​(String actionSequenceXML,
                                String sequenceName,
                                String processId,
                                boolean async,
                                boolean instanceEnds,
                                String instanceId,
                                boolean persisted,
                                Map parameterProviderMap,
                                IOutputHandler outputHandler,
                                IActionCompleteListener pListener,
                                IPentahoUrlFactory urlFactory,
                                List messages)
        Executes the in memory action sequence specified
        Parameters:
        actionSequenceXML - the in memory action sequence string
        sequenceName - name of the action sequence
        processId - id for the given process, typically a GUID or unique id for this execution
        async - true if the execution should be asynchronous.
        instanceEnds - currently true indicating that the process ends with this execution
        parameterProviderMap - Map of parameter providers to use for the execution
        outputHandler - The output handler for dealing with user feedback
        Returns:
        The runtime context for the execution
        See Also:
        IRuntimeContext, IParameterProvider, IActionSequence
      • setlistener

        void setlistener​(IActionCompleteListener listener)
        Sets the action complete listener which will be called when the action is complete
        Parameters:
        listener - Listener to call back when execution is complete.
      • setSession

        void setSession​(IPentahoSession session)
        Sets the session in the solution engine
        Parameters:
        session - The session for this execution
      • getExecutionContext

        IRuntimeContext getExecutionContext()
        Returns:
        the runtime context being used for this execution.
      • getStatus

        int getStatus()
        Returns:
        Gets the current status from this execution
      • init

        void init​(IPentahoSession session)
        Initialize the SolutionEngine. This method should be called immediately after object construction, and if solution engines are re-used among different IPentahoSessions to bind the solution engine to the session.
        Parameters:
        session - the session context for this SolutionEngine
      • setForcePrompt

        void setForcePrompt​(boolean forcePrompt)
        Sets if the promp page should be forced
        Parameters:
        status -
      • setParameterXsl

        void setParameterXsl​(String xsl)
        Sets the xsl file to be used to generate the parameter page for the current component. The parameter should be a full path from the solution root starting with a /, or it should be a path relative to the directory of the current action sequence.
        Parameters:
        xsl - The name of the XSL file