/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The configuration settings for a workflow execution including timeout values,
* tasklist etc. These configuration settings are determined from the defaults
* specified when registering the workflow type and those specified when starting
* the workflow execution.See Also:
AWS
* API Reference
The maximum duration allowed for decision tasks for this workflow * execution.
The duration is specified in seconds, an integer greater than
* or equal to 0
. You can use NONE
to specify unlimited
* duration.
The maximum duration allowed for decision tasks for this workflow * execution.
The duration is specified in seconds, an integer greater than
* or equal to 0
. You can use NONE
to specify unlimited
* duration.
The maximum duration allowed for decision tasks for this workflow * execution.
The duration is specified in seconds, an integer greater than
* or equal to 0
. You can use NONE
to specify unlimited
* duration.
The maximum duration allowed for decision tasks for this workflow * execution.
The duration is specified in seconds, an integer greater than
* or equal to 0
. You can use NONE
to specify unlimited
* duration.
The maximum duration allowed for decision tasks for this workflow * execution.
The duration is specified in seconds, an integer greater than
* or equal to 0
. You can use NONE
to specify unlimited
* duration.
The maximum duration allowed for decision tasks for this workflow * execution.
The duration is specified in seconds, an integer greater than
* or equal to 0
. You can use NONE
to specify unlimited
* duration.
The maximum duration allowed for decision tasks for this workflow * execution.
The duration is specified in seconds, an integer greater than
* or equal to 0
. You can use NONE
to specify unlimited
* duration.
The maximum duration allowed for decision tasks for this workflow * execution.
The duration is specified in seconds, an integer greater than
* or equal to 0
. You can use NONE
to specify unlimited
* duration.
The total duration for this workflow execution.
The duration is
* specified in seconds, an integer greater than or equal to 0
. You
* can use NONE
to specify unlimited duration.
The total duration for this workflow execution.
The duration is
* specified in seconds, an integer greater than or equal to 0
. You
* can use NONE
to specify unlimited duration.
The total duration for this workflow execution.
The duration is
* specified in seconds, an integer greater than or equal to 0
. You
* can use NONE
to specify unlimited duration.
The total duration for this workflow execution.
The duration is
* specified in seconds, an integer greater than or equal to 0
. You
* can use NONE
to specify unlimited duration.
The total duration for this workflow execution.
The duration is
* specified in seconds, an integer greater than or equal to 0
. You
* can use NONE
to specify unlimited duration.
The total duration for this workflow execution.
The duration is
* specified in seconds, an integer greater than or equal to 0
. You
* can use NONE
to specify unlimited duration.
The total duration for this workflow execution.
The duration is
* specified in seconds, an integer greater than or equal to 0
. You
* can use NONE
to specify unlimited duration.
The total duration for this workflow execution.
The duration is
* specified in seconds, an integer greater than or equal to 0
. You
* can use NONE
to specify unlimited duration.
The task list used for the decision tasks generated for this workflow * execution.
*/ inline const TaskList& GetTaskList() const{ return m_taskList; } /** *The task list used for the decision tasks generated for this workflow * execution.
*/ inline bool TaskListHasBeenSet() const { return m_taskListHasBeenSet; } /** *The task list used for the decision tasks generated for this workflow * execution.
*/ inline void SetTaskList(const TaskList& value) { m_taskListHasBeenSet = true; m_taskList = value; } /** *The task list used for the decision tasks generated for this workflow * execution.
*/ inline void SetTaskList(TaskList&& value) { m_taskListHasBeenSet = true; m_taskList = std::move(value); } /** *The task list used for the decision tasks generated for this workflow * execution.
*/ inline WorkflowExecutionConfiguration& WithTaskList(const TaskList& value) { SetTaskList(value); return *this;} /** *The task list used for the decision tasks generated for this workflow * execution.
*/ inline WorkflowExecutionConfiguration& WithTaskList(TaskList&& value) { SetTaskList(std::move(value)); return *this;} /** *The priority assigned to decision tasks for this workflow execution. 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; } /** *The priority assigned to decision tasks for this workflow execution. 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; } /** *The priority assigned to decision tasks for this workflow execution. 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; } /** *The priority assigned to decision tasks for this workflow execution. 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); } /** *The priority assigned to decision tasks for this workflow execution. 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); } /** *The priority assigned to decision tasks for this workflow execution. 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 WorkflowExecutionConfiguration& WithTaskPriority(const Aws::String& value) { SetTaskPriority(value); return *this;} /** *The priority assigned to decision tasks for this workflow execution. 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 WorkflowExecutionConfiguration& WithTaskPriority(Aws::String&& value) { SetTaskPriority(std::move(value)); return *this;} /** *The priority assigned to decision tasks for this workflow execution. 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 WorkflowExecutionConfiguration& WithTaskPriority(const char* value) { SetTaskPriority(value); return *this;} /** *The policy to use for the child workflow executions if this workflow * execution is terminated, by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout.
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.
The policy to use for the child workflow executions if this workflow * execution is terminated, by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout.
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.
The policy to use for the child workflow executions if this workflow * execution is terminated, by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout.
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.
The policy to use for the child workflow executions if this workflow * execution is terminated, by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout.
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.
The policy to use for the child workflow executions if this workflow * execution is terminated, by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout.
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.
The policy to use for the child workflow executions if this workflow * execution is terminated, by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout.
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.
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 WorkflowExecutionConfiguration& WithLambdaRole(const Aws::String& value) { SetLambdaRole(value); return *this;} /** *The IAM role attached to the child workflow execution.
*/ inline WorkflowExecutionConfiguration& WithLambdaRole(Aws::String&& value) { SetLambdaRole(std::move(value)); return *this;} /** *The IAM role attached to the child workflow execution.
*/ inline WorkflowExecutionConfiguration& WithLambdaRole(const char* value) { SetLambdaRole(value); return *this;} private: Aws::String m_taskStartToCloseTimeout; bool m_taskStartToCloseTimeoutHasBeenSet = false; Aws::String m_executionStartToCloseTimeout; bool m_executionStartToCloseTimeoutHasBeenSet = false; TaskList m_taskList; bool m_taskListHasBeenSet = false; Aws::String m_taskPriority; bool m_taskPriorityHasBeenSet = false; ChildPolicy m_childPolicy; bool m_childPolicyHasBeenSet = false; Aws::String m_lambdaRole; bool m_lambdaRoleHasBeenSet = false; }; } // namespace Model } // namespace SWF } // namespace Aws