/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides the details of the Access Control You can use IAM policies to
* control this decision's access to Amazon SWF resources as follows: Use a Use an Constrain the
* following parameters by using a
*
* If the
* caller doesn't have sufficient permissions to invoke the action, or the
* parameter values fall outside the specified constraints, the action fails. The
* associated event attribute's StartChildWorkflowExecution
* decision.
Resource
element with the domain name to limit the action
* to only specified domains.Action
element
* to allow or deny permission to call this action.Condition
element with the
* appropriate keys.
tagList.member.N
– The key is
* "swf:tagList.N" where N is the tag number from 0 to 4, inclusive.taskList
– String constraint. The key is
* swf:taskList.name
.workflowType.name
– String constraint. The key is
* swf:workflowType.name
.workflowType.version
– String constraint. The key is
* swf:workflowType.version
.cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see
* Using
* IAM to Manage Access to Amazon SWF Workflows in the Amazon SWF Developer
* Guide.See Also:
AWS
* API Reference
The type of the workflow execution to be started.
*/ inline const WorkflowType& GetWorkflowType() const{ return m_workflowType; } /** *The type of the workflow execution to be started.
*/ inline bool WorkflowTypeHasBeenSet() const { return m_workflowTypeHasBeenSet; } /** *The type of the workflow execution to be started.
*/ inline void SetWorkflowType(const WorkflowType& value) { m_workflowTypeHasBeenSet = true; m_workflowType = value; } /** *The type of the workflow execution to be started.
*/ inline void SetWorkflowType(WorkflowType&& value) { m_workflowTypeHasBeenSet = true; m_workflowType = std::move(value); } /** *The type of the workflow execution to be started.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithWorkflowType(const WorkflowType& value) { SetWorkflowType(value); return *this;} /** *The type of the workflow execution to be started.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithWorkflowType(WorkflowType&& value) { SetWorkflowType(std::move(value)); return *this;} /** * The workflowId
of the workflow execution.
The specified
* string must not contain a :
(colon), /
(slash),
* |
(vertical bar), or any control characters
* (\u0000-\u001f
| \u007f-\u009f
). Also, it must
* not be the literal string arn
.
The workflowId
of the workflow execution.
The specified
* string must not contain a :
(colon), /
(slash),
* |
(vertical bar), or any control characters
* (\u0000-\u001f
| \u007f-\u009f
). Also, it must
* not be the literal string arn
.
The workflowId
of the workflow execution.
The specified
* string must not contain a :
(colon), /
(slash),
* |
(vertical bar), or any control characters
* (\u0000-\u001f
| \u007f-\u009f
). Also, it must
* not be the literal string arn
.
The workflowId
of the workflow execution.
The specified
* string must not contain a :
(colon), /
(slash),
* |
(vertical bar), or any control characters
* (\u0000-\u001f
| \u007f-\u009f
). Also, it must
* not be the literal string arn
.
The workflowId
of the workflow execution.
The specified
* string must not contain a :
(colon), /
(slash),
* |
(vertical bar), or any control characters
* (\u0000-\u001f
| \u007f-\u009f
). Also, it must
* not be the literal string arn
.
The workflowId
of the workflow execution.
The specified
* string must not contain a :
(colon), /
(slash),
* |
(vertical bar), or any control characters
* (\u0000-\u001f
| \u007f-\u009f
). Also, it must
* not be the literal string arn
.
The workflowId
of the workflow execution.
The specified
* string must not contain a :
(colon), /
(slash),
* |
(vertical bar), or any control characters
* (\u0000-\u001f
| \u007f-\u009f
). Also, it must
* not be the literal string arn
.
The workflowId
of the workflow execution.
The specified
* string must not contain a :
(colon), /
(slash),
* |
(vertical bar), or any control characters
* (\u0000-\u001f
| \u007f-\u009f
). Also, it must
* not be the literal string arn
.
The data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the child workflow execution.
*/ inline const Aws::String& GetControl() const{ return m_control; } /** *The data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the child workflow execution.
*/ inline bool ControlHasBeenSet() const { return m_controlHasBeenSet; } /** *The data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the child workflow execution.
*/ inline void SetControl(const Aws::String& value) { m_controlHasBeenSet = true; m_control = value; } /** *The data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the child workflow execution.
*/ inline void SetControl(Aws::String&& value) { m_controlHasBeenSet = true; m_control = std::move(value); } /** *The data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the child workflow execution.
*/ inline void SetControl(const char* value) { m_controlHasBeenSet = true; m_control.assign(value); } /** *The data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the child workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithControl(const Aws::String& value) { SetControl(value); return *this;} /** *The data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the child workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithControl(Aws::String&& value) { SetControl(std::move(value)); return *this;} /** *The data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the child workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithControl(const char* value) { SetControl(value); return *this;} /** *The input to be provided to the workflow execution.
*/ inline const Aws::String& GetInput() const{ return m_input; } /** *The input to be provided to the workflow execution.
*/ inline bool InputHasBeenSet() const { return m_inputHasBeenSet; } /** *The input to be provided to the workflow execution.
*/ inline void SetInput(const Aws::String& value) { m_inputHasBeenSet = true; m_input = value; } /** *The input to be provided to the workflow execution.
*/ inline void SetInput(Aws::String&& value) { m_inputHasBeenSet = true; m_input = std::move(value); } /** *The input to be provided to the workflow execution.
*/ inline void SetInput(const char* value) { m_inputHasBeenSet = true; m_input.assign(value); } /** *The input to be provided to the workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithInput(const Aws::String& value) { SetInput(value); return *this;} /** *The input to be provided to the workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithInput(Aws::String&& value) { SetInput(std::move(value)); return *this;} /** *The input to be provided to the workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithInput(const char* value) { SetInput(value); return *this;} /** *The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the workflow * type.
The duration is specified in seconds, an integer greater than or
* equal to 0
. You can use NONE
to specify unlimited
* duration.
An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline const Aws::String& GetExecutionStartToCloseTimeout() const{ return m_executionStartToCloseTimeout; } /** *The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the workflow * type.
The duration is specified in seconds, an integer greater than or
* equal to 0
. You can use NONE
to specify unlimited
* duration.
An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline bool ExecutionStartToCloseTimeoutHasBeenSet() const { return m_executionStartToCloseTimeoutHasBeenSet; } /** *The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the workflow * type.
The duration is specified in seconds, an integer greater than or
* equal to 0
. You can use NONE
to specify unlimited
* duration.
An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline void SetExecutionStartToCloseTimeout(const Aws::String& value) { m_executionStartToCloseTimeoutHasBeenSet = true; m_executionStartToCloseTimeout = value; } /** *The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the workflow * type.
The duration is specified in seconds, an integer greater than or
* equal to 0
. You can use NONE
to specify unlimited
* duration.
An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline void SetExecutionStartToCloseTimeout(Aws::String&& value) { m_executionStartToCloseTimeoutHasBeenSet = true; m_executionStartToCloseTimeout = std::move(value); } /** *The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the workflow * type.
The duration is specified in seconds, an integer greater than or
* equal to 0
. You can use NONE
to specify unlimited
* duration.
An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline void SetExecutionStartToCloseTimeout(const char* value) { m_executionStartToCloseTimeoutHasBeenSet = true; m_executionStartToCloseTimeout.assign(value); } /** *The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the workflow * type.
The duration is specified in seconds, an integer greater than or
* equal to 0
. You can use NONE
to specify unlimited
* duration.
An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithExecutionStartToCloseTimeout(const Aws::String& value) { SetExecutionStartToCloseTimeout(value); return *this;} /** *The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the workflow * type.
The duration is specified in seconds, an integer greater than or
* equal to 0
. You can use NONE
to specify unlimited
* duration.
An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithExecutionStartToCloseTimeout(Aws::String&& value) { SetExecutionStartToCloseTimeout(std::move(value)); return *this;} /** *The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the workflow * type.
The duration is specified in seconds, an integer greater than or
* equal to 0
. You can use NONE
to specify unlimited
* duration.
An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithExecutionStartToCloseTimeout(const char* value) { SetExecutionStartToCloseTimeout(value); return *this;} /** *The name of the task list to be used for decision tasks of the child workflow * execution.
A task list for this workflow execution must be * specified either as a default for the workflow type or through this parameter. * If neither this parameter is set nor a default task list was specified at * registration time then a fault is returned.
The specified string
* must not start or end with whitespace. It must not contain a :
* (colon), /
(slash), |
(vertical bar), or any control
* characters (\u0000-\u001f
| \u007f-\u009f
). Also, it
* must not be the literal string arn
.
The name of the task list to be used for decision tasks of the child workflow * execution.
A task list for this workflow execution must be * specified either as a default for the workflow type or through this parameter. * If neither this parameter is set nor a default task list was specified at * registration time then a fault is returned.
The specified string
* must not start or end with whitespace. It must not contain a :
* (colon), /
(slash), |
(vertical bar), or any control
* characters (\u0000-\u001f
| \u007f-\u009f
). Also, it
* must not be the literal string arn
.
The name of the task list to be used for decision tasks of the child workflow * execution.
A task list for this workflow execution must be * specified either as a default for the workflow type or through this parameter. * If neither this parameter is set nor a default task list was specified at * registration time then a fault is returned.
The specified string
* must not start or end with whitespace. It must not contain a :
* (colon), /
(slash), |
(vertical bar), or any control
* characters (\u0000-\u001f
| \u007f-\u009f
). Also, it
* must not be the literal string arn
.
The name of the task list to be used for decision tasks of the child workflow * execution.
A task list for this workflow execution must be * specified either as a default for the workflow type or through this parameter. * If neither this parameter is set nor a default task list was specified at * registration time then a fault is returned.
The specified string
* must not start or end with whitespace. It must not contain a :
* (colon), /
(slash), |
(vertical bar), or any control
* characters (\u0000-\u001f
| \u007f-\u009f
). Also, it
* must not be the literal string arn
.
The name of the task list to be used for decision tasks of the child workflow * execution.
A task list for this workflow execution must be * specified either as a default for the workflow type or through this parameter. * If neither this parameter is set nor a default task list was specified at * registration time then a fault is returned.
The specified string
* must not start or end with whitespace. It must not contain a :
* (colon), /
(slash), |
(vertical bar), or any control
* characters (\u0000-\u001f
| \u007f-\u009f
). Also, it
* must not be the literal string arn
.
The name of the task list to be used for decision tasks of the child workflow * execution.
A task list for this workflow execution must be * specified either as a default for the workflow type or through this parameter. * If neither this parameter is set nor a default task list was specified at * registration time then a fault is returned.
The specified string
* must not start or end with whitespace. It must not contain a :
* (colon), /
(slash), |
(vertical bar), or any control
* characters (\u0000-\u001f
| \u007f-\u009f
). Also, it
* must not be the literal string arn
.
A task priority that, if set, specifies the priority for a decision task of
* this workflow execution. This overrides the defaultTaskPriority specified when
* registering the workflow type. Valid values are integers that range from Java's
* Integer.MIN_VALUE
(-2147483648) to Integer.MAX_VALUE
* (2147483647). Higher numbers indicate higher priority.
For more * information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.
*/ inline const Aws::String& GetTaskPriority() const{ return m_taskPriority; } /** * A task priority that, if set, specifies the priority for a decision task of
* this workflow execution. This overrides the defaultTaskPriority specified when
* registering the workflow type. Valid values are integers that range from Java's
* Integer.MIN_VALUE
(-2147483648) to Integer.MAX_VALUE
* (2147483647). Higher numbers indicate higher priority.
For more * information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.
*/ inline bool TaskPriorityHasBeenSet() const { return m_taskPriorityHasBeenSet; } /** * A task priority that, if set, specifies the priority for a decision task of
* this workflow execution. This overrides the defaultTaskPriority specified when
* registering the workflow type. Valid values are integers that range from Java's
* Integer.MIN_VALUE
(-2147483648) to Integer.MAX_VALUE
* (2147483647). Higher numbers indicate higher priority.
For more * information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.
*/ inline void SetTaskPriority(const Aws::String& value) { m_taskPriorityHasBeenSet = true; m_taskPriority = value; } /** * A task priority that, if set, specifies the priority for a decision task of
* this workflow execution. This overrides the defaultTaskPriority specified when
* registering the workflow type. Valid values are integers that range from Java's
* Integer.MIN_VALUE
(-2147483648) to Integer.MAX_VALUE
* (2147483647). Higher numbers indicate higher priority.
For more * information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.
*/ inline void SetTaskPriority(Aws::String&& value) { m_taskPriorityHasBeenSet = true; m_taskPriority = std::move(value); } /** * A task priority that, if set, specifies the priority for a decision task of
* this workflow execution. This overrides the defaultTaskPriority specified when
* registering the workflow type. Valid values are integers that range from Java's
* Integer.MIN_VALUE
(-2147483648) to Integer.MAX_VALUE
* (2147483647). Higher numbers indicate higher priority.
For more * information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.
*/ inline void SetTaskPriority(const char* value) { m_taskPriorityHasBeenSet = true; m_taskPriority.assign(value); } /** * A task priority that, if set, specifies the priority for a decision task of
* this workflow execution. This overrides the defaultTaskPriority specified when
* registering the workflow type. Valid values are integers that range from Java's
* Integer.MIN_VALUE
(-2147483648) to Integer.MAX_VALUE
* (2147483647). Higher numbers indicate higher priority.
For more * information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithTaskPriority(const Aws::String& value) { SetTaskPriority(value); return *this;} /** * A task priority that, if set, specifies the priority for a decision task of
* this workflow execution. This overrides the defaultTaskPriority specified when
* registering the workflow type. Valid values are integers that range from Java's
* Integer.MIN_VALUE
(-2147483648) to Integer.MAX_VALUE
* (2147483647). Higher numbers indicate higher priority.
For more * information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithTaskPriority(Aws::String&& value) { SetTaskPriority(std::move(value)); return *this;} /** * A task priority that, if set, specifies the priority for a decision task of
* this workflow execution. This overrides the defaultTaskPriority specified when
* registering the workflow type. Valid values are integers that range from Java's
* Integer.MIN_VALUE
(-2147483648) to Integer.MAX_VALUE
* (2147483647). Higher numbers indicate higher priority.
For more * information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithTaskPriority(const char* value) { SetTaskPriority(value); return *this;} /** *Specifies the maximum duration of decision tasks for this workflow execution.
* This parameter overrides the defaultTaskStartToCloseTimout
* specified when registering the workflow type using
* RegisterWorkflowType.
The duration is specified in seconds, an
* integer greater than or equal to 0
. You can use NONE
* to specify unlimited duration.
A task start-to-close timeout for * this workflow execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set nor a default * task start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline const Aws::String& GetTaskStartToCloseTimeout() const{ return m_taskStartToCloseTimeout; } /** *Specifies the maximum duration of decision tasks for this workflow execution.
* This parameter overrides the defaultTaskStartToCloseTimout
* specified when registering the workflow type using
* RegisterWorkflowType.
The duration is specified in seconds, an
* integer greater than or equal to 0
. You can use NONE
* to specify unlimited duration.
A task start-to-close timeout for * this workflow execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set nor a default * task start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline bool TaskStartToCloseTimeoutHasBeenSet() const { return m_taskStartToCloseTimeoutHasBeenSet; } /** *Specifies the maximum duration of decision tasks for this workflow execution.
* This parameter overrides the defaultTaskStartToCloseTimout
* specified when registering the workflow type using
* RegisterWorkflowType.
The duration is specified in seconds, an
* integer greater than or equal to 0
. You can use NONE
* to specify unlimited duration.
A task start-to-close timeout for * this workflow execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set nor a default * task start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline void SetTaskStartToCloseTimeout(const Aws::String& value) { m_taskStartToCloseTimeoutHasBeenSet = true; m_taskStartToCloseTimeout = value; } /** *Specifies the maximum duration of decision tasks for this workflow execution.
* This parameter overrides the defaultTaskStartToCloseTimout
* specified when registering the workflow type using
* RegisterWorkflowType.
The duration is specified in seconds, an
* integer greater than or equal to 0
. You can use NONE
* to specify unlimited duration.
A task start-to-close timeout for * this workflow execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set nor a default * task start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline void SetTaskStartToCloseTimeout(Aws::String&& value) { m_taskStartToCloseTimeoutHasBeenSet = true; m_taskStartToCloseTimeout = std::move(value); } /** *Specifies the maximum duration of decision tasks for this workflow execution.
* This parameter overrides the defaultTaskStartToCloseTimout
* specified when registering the workflow type using
* RegisterWorkflowType.
The duration is specified in seconds, an
* integer greater than or equal to 0
. You can use NONE
* to specify unlimited duration.
A task start-to-close timeout for * this workflow execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set nor a default * task start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline void SetTaskStartToCloseTimeout(const char* value) { m_taskStartToCloseTimeoutHasBeenSet = true; m_taskStartToCloseTimeout.assign(value); } /** *Specifies the maximum duration of decision tasks for this workflow execution.
* This parameter overrides the defaultTaskStartToCloseTimout
* specified when registering the workflow type using
* RegisterWorkflowType.
The duration is specified in seconds, an
* integer greater than or equal to 0
. You can use NONE
* to specify unlimited duration.
A task start-to-close timeout for * this workflow execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set nor a default * task start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithTaskStartToCloseTimeout(const Aws::String& value) { SetTaskStartToCloseTimeout(value); return *this;} /** *Specifies the maximum duration of decision tasks for this workflow execution.
* This parameter overrides the defaultTaskStartToCloseTimout
* specified when registering the workflow type using
* RegisterWorkflowType.
The duration is specified in seconds, an
* integer greater than or equal to 0
. You can use NONE
* to specify unlimited duration.
A task start-to-close timeout for * this workflow execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set nor a default * task start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithTaskStartToCloseTimeout(Aws::String&& value) { SetTaskStartToCloseTimeout(std::move(value)); return *this;} /** *Specifies the maximum duration of decision tasks for this workflow execution.
* This parameter overrides the defaultTaskStartToCloseTimout
* specified when registering the workflow type using
* RegisterWorkflowType.
The duration is specified in seconds, an
* integer greater than or equal to 0
. You can use NONE
* to specify unlimited duration.
A task start-to-close timeout for * this workflow execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set nor a default * task start-to-close timeout was specified at registration time then a fault is * returned.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithTaskStartToCloseTimeout(const char* value) { SetTaskStartToCloseTimeout(value); return *this;} /** *If set, specifies the policy to use for the child workflow executions if the * workflow execution being started is terminated by calling the * TerminateWorkflowExecution action explicitly or due to an expired * timeout. This policy overrides the default child policy specified when * registering the workflow type using RegisterWorkflowType.
The * supported child policies are:
TERMINATE
– The
* child executions are terminated.
REQUEST_CANCEL
* – A request to cancel is attempted for each child execution by recording a
* WorkflowExecutionCancelRequested
event in its history. It is up to
* the decider to take appropriate actions when it receives an execution history
* with this event.
ABANDON
– No action is taken.
* The child executions continue to run.
A child policy * for this workflow execution must be specified either as a default for the * workflow type or through this parameter. If neither this parameter is set nor a * default child policy was specified at registration time then a fault is * returned.
*/ inline const ChildPolicy& GetChildPolicy() const{ return m_childPolicy; } /** *If set, specifies the policy to use for the child workflow executions if the * workflow execution being started is terminated by calling the * TerminateWorkflowExecution action explicitly or due to an expired * timeout. This policy overrides the default child policy specified when * registering the workflow type using RegisterWorkflowType.
The * supported child policies are:
TERMINATE
– The
* child executions are terminated.
REQUEST_CANCEL
* – A request to cancel is attempted for each child execution by recording a
* WorkflowExecutionCancelRequested
event in its history. It is up to
* the decider to take appropriate actions when it receives an execution history
* with this event.
ABANDON
– No action is taken.
* The child executions continue to run.
A child policy * for this workflow execution must be specified either as a default for the * workflow type or through this parameter. If neither this parameter is set nor a * default child policy was specified at registration time then a fault is * returned.
*/ inline bool ChildPolicyHasBeenSet() const { return m_childPolicyHasBeenSet; } /** *If set, specifies the policy to use for the child workflow executions if the * workflow execution being started is terminated by calling the * TerminateWorkflowExecution action explicitly or due to an expired * timeout. This policy overrides the default child policy specified when * registering the workflow type using RegisterWorkflowType.
The * supported child policies are:
TERMINATE
– The
* child executions are terminated.
REQUEST_CANCEL
* – A request to cancel is attempted for each child execution by recording a
* WorkflowExecutionCancelRequested
event in its history. It is up to
* the decider to take appropriate actions when it receives an execution history
* with this event.
ABANDON
– No action is taken.
* The child executions continue to run.
A child policy * for this workflow execution must be specified either as a default for the * workflow type or through this parameter. If neither this parameter is set nor a * default child policy was specified at registration time then a fault is * returned.
*/ inline void SetChildPolicy(const ChildPolicy& value) { m_childPolicyHasBeenSet = true; m_childPolicy = value; } /** *If set, specifies the policy to use for the child workflow executions if the * workflow execution being started is terminated by calling the * TerminateWorkflowExecution action explicitly or due to an expired * timeout. This policy overrides the default child policy specified when * registering the workflow type using RegisterWorkflowType.
The * supported child policies are:
TERMINATE
– The
* child executions are terminated.
REQUEST_CANCEL
* – A request to cancel is attempted for each child execution by recording a
* WorkflowExecutionCancelRequested
event in its history. It is up to
* the decider to take appropriate actions when it receives an execution history
* with this event.
ABANDON
– No action is taken.
* The child executions continue to run.
A child policy * for this workflow execution must be specified either as a default for the * workflow type or through this parameter. If neither this parameter is set nor a * default child policy was specified at registration time then a fault is * returned.
*/ inline void SetChildPolicy(ChildPolicy&& value) { m_childPolicyHasBeenSet = true; m_childPolicy = std::move(value); } /** *If set, specifies the policy to use for the child workflow executions if the * workflow execution being started is terminated by calling the * TerminateWorkflowExecution action explicitly or due to an expired * timeout. This policy overrides the default child policy specified when * registering the workflow type using RegisterWorkflowType.
The * supported child policies are:
TERMINATE
– The
* child executions are terminated.
REQUEST_CANCEL
* – A request to cancel is attempted for each child execution by recording a
* WorkflowExecutionCancelRequested
event in its history. It is up to
* the decider to take appropriate actions when it receives an execution history
* with this event.
ABANDON
– No action is taken.
* The child executions continue to run.
A child policy * for this workflow execution must be specified either as a default for the * workflow type or through this parameter. If neither this parameter is set nor a * default child policy was specified at registration time then a fault is * returned.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithChildPolicy(const ChildPolicy& value) { SetChildPolicy(value); return *this;} /** *If set, specifies the policy to use for the child workflow executions if the * workflow execution being started is terminated by calling the * TerminateWorkflowExecution action explicitly or due to an expired * timeout. This policy overrides the default child policy specified when * registering the workflow type using RegisterWorkflowType.
The * supported child policies are:
TERMINATE
– The
* child executions are terminated.
REQUEST_CANCEL
* – A request to cancel is attempted for each child execution by recording a
* WorkflowExecutionCancelRequested
event in its history. It is up to
* the decider to take appropriate actions when it receives an execution history
* with this event.
ABANDON
– No action is taken.
* The child executions continue to run.
A child policy * for this workflow execution must be specified either as a default for the * workflow type or through this parameter. If neither this parameter is set nor a * default child policy was specified at registration time then a fault is * returned.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithChildPolicy(ChildPolicy&& value) { SetChildPolicy(std::move(value)); return *this;} /** *The list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline const Aws::VectorThe list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline bool TagListHasBeenSet() const { return m_tagListHasBeenSet; } /** *The list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline void SetTagList(const Aws::VectorThe list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline void SetTagList(Aws::VectorThe list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithTagList(const Aws::VectorThe list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithTagList(Aws::VectorThe list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline StartChildWorkflowExecutionDecisionAttributes& AddTagList(const Aws::String& value) { m_tagListHasBeenSet = true; m_tagList.push_back(value); return *this; } /** *The list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline StartChildWorkflowExecutionDecisionAttributes& AddTagList(Aws::String&& value) { m_tagListHasBeenSet = true; m_tagList.push_back(std::move(value)); return *this; } /** *The list of tags to associate with the child workflow execution. A maximum of * 5 tags can be specified. You can list workflow executions with a specific tag by * calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions * and specifying a TagFilter.
*/ inline StartChildWorkflowExecutionDecisionAttributes& AddTagList(const char* value) { m_tagListHasBeenSet = true; m_tagList.push_back(value); return *this; } /** *The IAM role attached to the child workflow execution.
*/ inline const Aws::String& GetLambdaRole() const{ return m_lambdaRole; } /** *The IAM role attached to the child workflow execution.
*/ inline bool LambdaRoleHasBeenSet() const { return m_lambdaRoleHasBeenSet; } /** *The IAM role attached to the child workflow execution.
*/ inline void SetLambdaRole(const Aws::String& value) { m_lambdaRoleHasBeenSet = true; m_lambdaRole = value; } /** *The IAM role attached to the child workflow execution.
*/ inline void SetLambdaRole(Aws::String&& value) { m_lambdaRoleHasBeenSet = true; m_lambdaRole = std::move(value); } /** *The IAM role attached to the child workflow execution.
*/ inline void SetLambdaRole(const char* value) { m_lambdaRoleHasBeenSet = true; m_lambdaRole.assign(value); } /** *The IAM role attached to the child workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithLambdaRole(const Aws::String& value) { SetLambdaRole(value); return *this;} /** *The IAM role attached to the child workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithLambdaRole(Aws::String&& value) { SetLambdaRole(std::move(value)); return *this;} /** *The IAM role attached to the child workflow execution.
*/ inline StartChildWorkflowExecutionDecisionAttributes& WithLambdaRole(const char* value) { SetLambdaRole(value); return *this;} private: WorkflowType m_workflowType; bool m_workflowTypeHasBeenSet = false; Aws::String m_workflowId; bool m_workflowIdHasBeenSet = false; Aws::String m_control; bool m_controlHasBeenSet = false; Aws::String m_input; bool m_inputHasBeenSet = false; Aws::String m_executionStartToCloseTimeout; bool m_executionStartToCloseTimeoutHasBeenSet = false; TaskList m_taskList; bool m_taskListHasBeenSet = false; Aws::String m_taskPriority; bool m_taskPriorityHasBeenSet = false; Aws::String m_taskStartToCloseTimeout; bool m_taskStartToCloseTimeoutHasBeenSet = false; ChildPolicy m_childPolicy; bool m_childPolicyHasBeenSet = false; Aws::Vector