public virtual Execution <TContext> ResumeAfter( TContext context, string node, IActivityOutputProvider outputProvider) { var execution = m_Persister.Load(context); var executor = new ResumeAfterWorkflowExecutor <TContext>( execution, context, this, m_ActivityFactory, m_ExecutionObserver, outputProvider); try { Accept(executor, node); } catch (Exception e) { execution.Error = e.ToString(); execution.State = WorkflowState.Corrupted; } m_Persister.Save(context, execution); return(execution); }
public ActivityResult Complete( Guid activityExecutionId, IActivityFactory factory, TContext context, IActivityOutputProvider outputProvider, out object activityOutput) { activityOutput = null; return(ActivityResult.Succeeded); }
public ResumeAfterWorkflowExecutor( Execution <TContext> execution, TContext context, INodesResolver <TContext> nodes, IActivityFactory factory, IExecutionObserver observer, IActivityOutputProvider outputProvider) : base(execution, context, nodes, factory, observer) { m_OutputProvider = outputProvider; }
public ActivityResult Complete( Guid activityExecutionId, IActivityFactory factory, TContext context, IActivityOutputProvider outputProvider, out object activityOutput) { var output = outputProvider.GetOuput <TOutput>(); m_ProcessOutput(context, output); activityOutput = output; return(ActivityResult.Succeeded); }
public ResumeAfterWorkflowExecutor( Execution execution, TContext context, Workflow <TContext> workflow, IActivityFactory factory, IExecutionObserver observer, IActivityOutputProvider outputProvider) : base( execution, context, workflow, factory, observer) { m_OutputProvider = outputProvider; }