/// <summary> /// Method allowing to decorate step invocation specified by <paramref name="stepInvocation"/>. /// </summary> /// <param name="step">Step that is being executed.</param> /// <param name="stepInvocation">Invocation that should be called in the method body.</param> /// <returns>Execution task.</returns> public async Task ExecuteAsync(IStep step, Func <Task> stepInvocation) { step.ConfigureExecutionAbortOnSubStepException(ShouldAbortExecution); await stepInvocation(); }