Provides details of the FailWorkflowExecution decision.

Access Control

You can use IAM policies to control this decision's access to Amazon SWF in much the same way as for the regular API:

  • Use a Resource element with the domain name to limit the decision to only specified domains.
  • Use an Action element to allow or deny permission to specify this decision.
  • You cannot use an IAM policy to constrain this action's parameters.

If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows .

예제 #1
0
 public Decision WithFailWorkflowExecutionDecisionAttributes(FailWorkflowExecutionDecisionAttributes failWorkflowExecutionDecisionAttributes)
 {
     this.failWorkflowExecutionDecisionAttributes = failWorkflowExecutionDecisionAttributes;
     return this;
 }
예제 #2
0
 /// <summary>
 /// Sets the FailWorkflowExecutionDecisionAttributes property
 /// </summary>
 /// <param name="failWorkflowExecutionDecisionAttributes">The value to set for the FailWorkflowExecutionDecisionAttributes property </param>
 /// <returns>this instance</returns>
 public Decision WithFailWorkflowExecutionDecisionAttributes(FailWorkflowExecutionDecisionAttributes failWorkflowExecutionDecisionAttributes)
 {
     this.failWorkflowExecutionDecisionAttributes = failWorkflowExecutionDecisionAttributes;
     return(this);
 }
        /// <summary>
        /// Helper method to create a failed workflow decision.
        /// </summary>
        /// <param name="details">Failure details.</param>
        /// <param name="reason">Reason for the failure.</param>
        /// <returns>Properly set up decision completed request.</returns>
        protected RespondDecisionTaskCompletedRequest FailWorkflow(string details, string reason)
        {
            var attributes = new FailWorkflowExecutionDecisionAttributes
            {
                Details = details,
                Reason = reason
            };

            var decisionRequest = new RespondDecisionTaskCompletedRequest
            {
                Decisions = new List<Decision>
                    {
                        new Decision
                            {
                                DecisionType = "FailWorkflowExecution",
                                FailWorkflowExecutionDecisionAttributes = attributes 
                            }
                    }
            };

            Debug.WriteLine(">>> Decision: FailWorkflowExecution");
            return decisionRequest;
        }