public override ExecutionPipelineDirective BeforeExecute(IWorkflowHost host, IPersistenceProvider persistenceStore, IStepExecutionContext context, ExecutionPointer executionPointer, IStepBody body) { if (executionPointer.EventPublished) { if (body is ISubscriptionBody) { (body as ISubscriptionBody).EventData = executionPointer.EventData; } } return(ExecutionPipelineDirective.Next); }
public virtual void AfterExecute(IWorkflowHost host, IPersistenceProvider persistenceStore, IStepExecutionContext context, ExecutionResult result, ExecutionPointer executionPointer) { }
public override ExecutionPipelineDirective InitForExecution(IWorkflowHost host, IPersistenceProvider persistenceStore, WorkflowDefinition defintion, WorkflowInstance workflow, ExecutionPointer executionPointer) { if (!executionPointer.EventPublished) { if (EventKey != null) { executionPointer.EventKey = Convert.ToString(EventKey.Compile().DynamicInvoke(workflow.Data)); } executionPointer.EventName = EventName; executionPointer.Active = false; persistenceStore.PersistWorkflow(workflow).Wait(); host.SubscribeEvent(workflow.Id, executionPointer.StepId, executionPointer.EventName, executionPointer.EventKey).Wait(); return(ExecutionPipelineDirective.Defer); } return(ExecutionPipelineDirective.Next); }
public virtual ExecutionPipelineDirective InitForExecution(IWorkflowHost host, IPersistenceProvider persistenceStore, WorkflowDefinition defintion, WorkflowInstance workflow, ExecutionPointer executionPointer) { return(ExecutionPipelineDirective.Next); }
public virtual ExecutionPipelineDirective BeforeExecute(IWorkflowHost host, IPersistenceProvider persistenceStore, IStepExecutionContext context, ExecutionPointer executionPointer, IStepBody body) { return(ExecutionPipelineDirective.Next); }
/// <summary> /// Called after every workflow execution round, /// every exectuon pointer with no end time, even if this step was not executed in this round /// </summary> /// <param name="executorResult"></param> /// <param name="defintion"></param> /// <param name="workflow"></param> /// <param name="executionPointer"></param> public virtual void AfterWorkflowIteration(WorkflowExecutorResult executorResult, WorkflowDefinition defintion, WorkflowInstance workflow, ExecutionPointer executionPointer) { }
public virtual void PrimeForRetry(ExecutionPointer pointer) { }
public virtual void AfterExecute(WorkflowExecutorResult executorResult, IStepExecutionContext context, ExecutionResult stepResult, ExecutionPointer executionPointer) { }
public virtual ExecutionPipelineDirective BeforeExecute(WorkflowExecutorResult executorResult, IStepExecutionContext context, ExecutionPointer executionPointer, IStepBody body) { return(ExecutionPipelineDirective.Next); }
public virtual ExecutionPipelineDirective InitForExecution(WorkflowExecutorResult executorResult, WorkflowDefinition defintion, WorkflowInstance workflow, ExecutionPointer executionPointer) { return(ExecutionPipelineDirective.Next); }