/**
  * The cause of the failure. This information is generated by the system and can be useful for
  * diagnostic purposes. <note>If <b>cause</b> is set to OPERATION_NOT_PERMITTED, the decision
  * failed because it lacked sufficient permissions. For details and example IAM policies, see <a
  * href="http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html">Using IAM to
  * Manage Access to Amazon SWF Workflows</a>.</note>
  *
  * <p>Returns a reference to this object so that method calls can be chained together.
  *
  * <p><b>Constraints:</b><br>
  * <b>Allowed Values: </b>UNHANDLED_DECISION, OPERATION_NOT_PERMITTED
  *
  * @param cause The cause of the failure. This information is generated by the system and can be
  *     useful for diagnostic purposes. <note>If <b>cause</b> is set to OPERATION_NOT_PERMITTED,
  *     the decision failed because it lacked sufficient permissions. For details and example IAM
  *     policies, see <a
  *     href="http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html">Using
  *     IAM to Manage Access to Amazon SWF Workflows</a>.</note>
  * @return A reference to this updated object so that method calls can be chained together.
  * @see FailWorkflowExecutionFailedCause
  */
 public FailWorkflowExecutionFailedEventAttributes withCause(
     FailWorkflowExecutionFailedCause cause) {
   this.cause = cause.toString();
   return this;
 }
 /**
  * The cause of the failure. This information is generated by the system and can be useful for
  * diagnostic purposes. <note>If <b>cause</b> is set to OPERATION_NOT_PERMITTED, the decision
  * failed because it lacked sufficient permissions. For details and example IAM policies, see <a
  * href="http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html">Using IAM to
  * Manage Access to Amazon SWF Workflows</a>.</note>
  *
  * <p><b>Constraints:</b><br>
  * <b>Allowed Values: </b>UNHANDLED_DECISION, OPERATION_NOT_PERMITTED
  *
  * @param cause The cause of the failure. This information is generated by the system and can be
  *     useful for diagnostic purposes. <note>If <b>cause</b> is set to OPERATION_NOT_PERMITTED,
  *     the decision failed because it lacked sufficient permissions. For details and example IAM
  *     policies, see <a
  *     href="http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html">Using
  *     IAM to Manage Access to Amazon SWF Workflows</a>.</note>
  * @see FailWorkflowExecutionFailedCause
  */
 public void setCause(FailWorkflowExecutionFailedCause cause) {
   this.cause = cause.toString();
 }