public IRuntimeContext handleActionRequest( final int timeout, final int timeoutType ) { // Get the solution engine ISolutionEngine solutionEngine = PentahoSystem.get( ISolutionEngine.class, session ); if ( solutionEngine == null ) { Logger.error( this, Messages.getInstance().getErrorString( "BaseRequestHandler.ERROR_0001_NO_SOLUTION_ENGINE" ) ); //$NON-NLS-1$ return null; } solutionEngine.setCreateFeedbackParameterCallback( createFeedbackParameterCallback ); solutionEngine.setLoggingLevel( ILogger.DEBUG ); solutionEngine.init( session ); solutionEngine.setForcePrompt( forcePrompt ); if ( parameterXsl != null ) { solutionEngine.setParameterXsl( parameterXsl ); } dispose(); runtime = solutionEngine.execute( actionPath, processId, false, instanceEnds, instanceId, true, parameterProviders, outputHandler, this, urlFactory, messages ); // need to wait until this is complete // TODO // if this times out check the timeoutType before cancelling or // returning and leaving the component running return runtime; }