org.pentaho.platform.api.engine
Interface ISolutionEngine

All Superinterfaces:
ILogger
All Known Implementing Classes:
SolutionEngine

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.


Field Summary
static String RUNTIME_SOLUTION_NAME
           
 
Fields inherited from interface org.pentaho.platform.api.engine.ILogger
ACTIVITY_LOG, DEBUG, ERROR, FATAL, INFO, INSTANCE_LOG, SESSION_LOG, SOLUTION_LOG, TRACE, UNKNOWN, WARN
 
Method Summary
 IRuntimeContext execute(IRuntimeContext runtime, String solutionName, String sequencePath, String sequenceName, String processId, boolean async, boolean instanceEnds, Map parameterProviderMap, IOutputHandler outputHandler)
          Executes the action sequence specified
 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
 IRuntimeContext execute(String solutionName, String actionPath, String actionName, 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
 IRuntimeContext getExecutionContext()
           
 int getStatus()
           
 void init(IPentahoSession session)
          Initialize the SolutionEngine.
 void setCreateFeedbackParameterCallback(ICreateFeedbackParameterCallback callback)
           
 void setForcePrompt(boolean forcePrompt)
          Sets if the promp page should be forced
 void setlistener(IActionCompleteListener listener)
          Sets the action complete listener which will be called when the action is complete
 void setlistener(IExecutionListener execListener)
           
 void setParameterProvider(String name, IParameterProvider parameterProvider)
          Sets the source for input parameters.
 void setParameterXsl(String xsl)
          Sets the xsl file to be used to generate the parameter page for the current component.
 void setSession(IPentahoSession session)
          Sets the session in the solution engine
 
Methods inherited from interface org.pentaho.platform.api.engine.ILogger
debug, debug, error, error, fatal, fatal, getLoggingLevel, info, info, setLoggingLevel, trace, trace, warn, warn
 

Field Detail

RUNTIME_SOLUTION_NAME

static final String RUNTIME_SOLUTION_NAME
See Also:
Constant Field Values
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

setCreateFeedbackParameterCallback

void setCreateFeedbackParameterCallback(ICreateFeedbackParameterCallback callback)

execute

IRuntimeContext execute(String solutionName,
                        String actionPath,
                        String actionName,
                        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:
solutionName - the name at the root level of the solution path
actionPath - the path relative to the solutionName that will lead to the requested action
actionName - name of the action sequence document
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 solutionName,
                        String sequencePath,
                        String sequenceName,
                        String processId,
                        boolean async,
                        boolean instanceEnds,
                        Map parameterProviderMap,
                        IOutputHandler outputHandler)
Executes the action sequence specified

Parameters:
runtime - The runtime context for the execution
solutionName - Name of the solution
sequencePath - path to the solution
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

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.

setlistener

void setlistener(IExecutionListener execListener)

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