/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SWF { namespace Model { /** *

Provides the details of the StartChildWorkflowExecutionInitiated * event.

See Also:

AWS * API Reference

*/ class StartChildWorkflowExecutionInitiatedEventAttributes { public: AWS_SWF_API StartChildWorkflowExecutionInitiatedEventAttributes(); AWS_SWF_API StartChildWorkflowExecutionInitiatedEventAttributes(Aws::Utils::Json::JsonView jsonValue); AWS_SWF_API StartChildWorkflowExecutionInitiatedEventAttributes& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SWF_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The workflowId of the child workflow execution.

*/ inline const Aws::String& GetWorkflowId() const{ return m_workflowId; } /** *

The workflowId of the child workflow execution.

*/ inline bool WorkflowIdHasBeenSet() const { return m_workflowIdHasBeenSet; } /** *

The workflowId of the child workflow execution.

*/ inline void SetWorkflowId(const Aws::String& value) { m_workflowIdHasBeenSet = true; m_workflowId = value; } /** *

The workflowId of the child workflow execution.

*/ inline void SetWorkflowId(Aws::String&& value) { m_workflowIdHasBeenSet = true; m_workflowId = std::move(value); } /** *

The workflowId of the child workflow execution.

*/ inline void SetWorkflowId(const char* value) { m_workflowIdHasBeenSet = true; m_workflowId.assign(value); } /** *

The workflowId of the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithWorkflowId(const Aws::String& value) { SetWorkflowId(value); return *this;} /** *

The workflowId of the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithWorkflowId(Aws::String&& value) { SetWorkflowId(std::move(value)); return *this;} /** *

The workflowId of the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithWorkflowId(const char* value) { SetWorkflowId(value); return *this;} /** *

The type of the child workflow execution.

*/ inline const WorkflowType& GetWorkflowType() const{ return m_workflowType; } /** *

The type of the child workflow execution.

*/ inline bool WorkflowTypeHasBeenSet() const { return m_workflowTypeHasBeenSet; } /** *

The type of the child workflow execution.

*/ inline void SetWorkflowType(const WorkflowType& value) { m_workflowTypeHasBeenSet = true; m_workflowType = value; } /** *

The type of the child workflow execution.

*/ inline void SetWorkflowType(WorkflowType&& value) { m_workflowTypeHasBeenSet = true; m_workflowType = std::move(value); } /** *

The type of the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithWorkflowType(const WorkflowType& value) { SetWorkflowType(value); return *this;} /** *

The type of the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithWorkflowType(WorkflowType&& value) { SetWorkflowType(std::move(value)); return *this;} /** *

Data attached to the event that can be used by the decider in subsequent * decision tasks. This data isn't sent to the activity.

*/ inline const Aws::String& GetControl() const{ return m_control; } /** *

Data attached to the event that can be used by the decider in subsequent * decision tasks. This data isn't sent to the activity.

*/ inline bool ControlHasBeenSet() const { return m_controlHasBeenSet; } /** *

Data attached to the event that can be used by the decider in subsequent * decision tasks. This data isn't sent to the activity.

*/ inline void SetControl(const Aws::String& value) { m_controlHasBeenSet = true; m_control = value; } /** *

Data attached to the event that can be used by the decider in subsequent * decision tasks. This data isn't sent to the activity.

*/ inline void SetControl(Aws::String&& value) { m_controlHasBeenSet = true; m_control = std::move(value); } /** *

Data attached to the event that can be used by the decider in subsequent * decision tasks. This data isn't sent to the activity.

*/ inline void SetControl(const char* value) { m_controlHasBeenSet = true; m_control.assign(value); } /** *

Data attached to the event that can be used by the decider in subsequent * decision tasks. This data isn't sent to the activity.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithControl(const Aws::String& value) { SetControl(value); return *this;} /** *

Data attached to the event that can be used by the decider in subsequent * decision tasks. This data isn't sent to the activity.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithControl(Aws::String&& value) { SetControl(std::move(value)); return *this;} /** *

Data attached to the event that can be used by the decider in subsequent * decision tasks. This data isn't sent to the activity.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithControl(const char* value) { SetControl(value); return *this;} /** *

The inputs provided to the child workflow execution.

*/ inline const Aws::String& GetInput() const{ return m_input; } /** *

The inputs provided to the child workflow execution.

*/ inline bool InputHasBeenSet() const { return m_inputHasBeenSet; } /** *

The inputs provided to the child workflow execution.

*/ inline void SetInput(const Aws::String& value) { m_inputHasBeenSet = true; m_input = value; } /** *

The inputs provided to the child workflow execution.

*/ inline void SetInput(Aws::String&& value) { m_inputHasBeenSet = true; m_input = std::move(value); } /** *

The inputs provided to the child workflow execution.

*/ inline void SetInput(const char* value) { m_inputHasBeenSet = true; m_input.assign(value); } /** *

The inputs provided to the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithInput(const Aws::String& value) { SetInput(value); return *this;} /** *

The inputs provided to the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithInput(Aws::String&& value) { SetInput(std::move(value)); return *this;} /** *

The inputs provided to the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithInput(const char* value) { SetInput(value); return *this;} /** *

The maximum duration for the child workflow execution. If the workflow * execution isn't closed within this duration, it is timed out and * force-terminated.

The duration is specified in seconds, an integer * greater than or equal to 0. You can use NONE to * specify unlimited duration.

*/ inline const Aws::String& GetExecutionStartToCloseTimeout() const{ return m_executionStartToCloseTimeout; } /** *

The maximum duration for the child workflow execution. If the workflow * execution isn't closed within this duration, it is timed out and * force-terminated.

The duration is specified in seconds, an integer * greater than or equal to 0. You can use NONE to * specify unlimited duration.

*/ inline bool ExecutionStartToCloseTimeoutHasBeenSet() const { return m_executionStartToCloseTimeoutHasBeenSet; } /** *

The maximum duration for the child workflow execution. If the workflow * execution isn't closed within this duration, it is timed out and * force-terminated.

The duration is specified in seconds, an integer * greater than or equal to 0. You can use NONE to * specify unlimited duration.

*/ inline void SetExecutionStartToCloseTimeout(const Aws::String& value) { m_executionStartToCloseTimeoutHasBeenSet = true; m_executionStartToCloseTimeout = value; } /** *

The maximum duration for the child workflow execution. If the workflow * execution isn't closed within this duration, it is timed out and * force-terminated.

The duration is specified in seconds, an integer * greater than or equal to 0. You can use NONE to * specify unlimited duration.

*/ inline void SetExecutionStartToCloseTimeout(Aws::String&& value) { m_executionStartToCloseTimeoutHasBeenSet = true; m_executionStartToCloseTimeout = std::move(value); } /** *

The maximum duration for the child workflow execution. If the workflow * execution isn't closed within this duration, it is timed out and * force-terminated.

The duration is specified in seconds, an integer * greater than or equal to 0. You can use NONE to * specify unlimited duration.

*/ inline void SetExecutionStartToCloseTimeout(const char* value) { m_executionStartToCloseTimeoutHasBeenSet = true; m_executionStartToCloseTimeout.assign(value); } /** *

The maximum duration for the child workflow execution. If the workflow * execution isn't closed within this duration, it is timed out and * force-terminated.

The duration is specified in seconds, an integer * greater than or equal to 0. You can use NONE to * specify unlimited duration.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithExecutionStartToCloseTimeout(const Aws::String& value) { SetExecutionStartToCloseTimeout(value); return *this;} /** *

The maximum duration for the child workflow execution. If the workflow * execution isn't closed within this duration, it is timed out and * force-terminated.

The duration is specified in seconds, an integer * greater than or equal to 0. You can use NONE to * specify unlimited duration.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithExecutionStartToCloseTimeout(Aws::String&& value) { SetExecutionStartToCloseTimeout(std::move(value)); return *this;} /** *

The maximum duration for the child workflow execution. If the workflow * execution isn't closed within this duration, it is timed out and * force-terminated.

The duration is specified in seconds, an integer * greater than or equal to 0. You can use NONE to * specify unlimited duration.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithExecutionStartToCloseTimeout(const char* value) { SetExecutionStartToCloseTimeout(value); return *this;} /** *

The name of the task list used for the decision tasks of the child workflow * execution.

*/ inline const TaskList& GetTaskList() const{ return m_taskList; } /** *

The name of the task list used for the decision tasks of the child workflow * execution.

*/ inline bool TaskListHasBeenSet() const { return m_taskListHasBeenSet; } /** *

The name of the task list used for the decision tasks of the child workflow * execution.

*/ inline void SetTaskList(const TaskList& value) { m_taskListHasBeenSet = true; m_taskList = value; } /** *

The name of the task list used for the decision tasks of the child workflow * execution.

*/ inline void SetTaskList(TaskList&& value) { m_taskListHasBeenSet = true; m_taskList = std::move(value); } /** *

The name of the task list used for the decision tasks of the child workflow * execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithTaskList(const TaskList& value) { SetTaskList(value); return *this;} /** *

The name of the task list used for the decision tasks of the child workflow * execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithTaskList(TaskList&& value) { SetTaskList(std::move(value)); return *this;} /** *

The priority assigned for the 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 for the 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 for the 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 for the 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 for the 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 for the 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 StartChildWorkflowExecutionInitiatedEventAttributes& WithTaskPriority(const Aws::String& value) { SetTaskPriority(value); return *this;} /** *

The priority assigned for the 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 StartChildWorkflowExecutionInitiatedEventAttributes& WithTaskPriority(Aws::String&& value) { SetTaskPriority(std::move(value)); return *this;} /** *

The priority assigned for the 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 StartChildWorkflowExecutionInitiatedEventAttributes& WithTaskPriority(const char* value) { SetTaskPriority(value); return *this;} /** *

The ID of the DecisionTaskCompleted event corresponding to the * decision task that resulted in the StartChildWorkflowExecution * Decision to request this child workflow execution. This information can * be useful for diagnosing problems by tracing back the cause of events.

*/ inline long long GetDecisionTaskCompletedEventId() const{ return m_decisionTaskCompletedEventId; } /** *

The ID of the DecisionTaskCompleted event corresponding to the * decision task that resulted in the StartChildWorkflowExecution * Decision to request this child workflow execution. This information can * be useful for diagnosing problems by tracing back the cause of events.

*/ inline bool DecisionTaskCompletedEventIdHasBeenSet() const { return m_decisionTaskCompletedEventIdHasBeenSet; } /** *

The ID of the DecisionTaskCompleted event corresponding to the * decision task that resulted in the StartChildWorkflowExecution * Decision to request this child workflow execution. This information can * be useful for diagnosing problems by tracing back the cause of events.

*/ inline void SetDecisionTaskCompletedEventId(long long value) { m_decisionTaskCompletedEventIdHasBeenSet = true; m_decisionTaskCompletedEventId = value; } /** *

The ID of the DecisionTaskCompleted event corresponding to the * decision task that resulted in the StartChildWorkflowExecution * Decision to request this child workflow execution. This information can * be useful for diagnosing problems by tracing back the cause of events.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithDecisionTaskCompletedEventId(long long value) { SetDecisionTaskCompletedEventId(value); return *this;} /** *

The policy to use for the child workflow executions if this execution gets * terminated by explicitly calling the TerminateWorkflowExecution action 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.

*/ inline const ChildPolicy& GetChildPolicy() const{ return m_childPolicy; } /** *

The policy to use for the child workflow executions if this execution gets * terminated by explicitly calling the TerminateWorkflowExecution action 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.

*/ inline bool ChildPolicyHasBeenSet() const { return m_childPolicyHasBeenSet; } /** *

The policy to use for the child workflow executions if this execution gets * terminated by explicitly calling the TerminateWorkflowExecution action 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.

*/ inline void SetChildPolicy(const ChildPolicy& value) { m_childPolicyHasBeenSet = true; m_childPolicy = value; } /** *

The policy to use for the child workflow executions if this execution gets * terminated by explicitly calling the TerminateWorkflowExecution action 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.

*/ inline void SetChildPolicy(ChildPolicy&& value) { m_childPolicyHasBeenSet = true; m_childPolicy = std::move(value); } /** *

The policy to use for the child workflow executions if this execution gets * terminated by explicitly calling the TerminateWorkflowExecution action 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.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithChildPolicy(const ChildPolicy& value) { SetChildPolicy(value); return *this;} /** *

The policy to use for the child workflow executions if this execution gets * terminated by explicitly calling the TerminateWorkflowExecution action 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.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithChildPolicy(ChildPolicy&& value) { SetChildPolicy(std::move(value)); return *this;} /** *

The maximum duration allowed for the 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.

*/ inline const Aws::String& GetTaskStartToCloseTimeout() const{ return m_taskStartToCloseTimeout; } /** *

The maximum duration allowed for the 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.

*/ inline bool TaskStartToCloseTimeoutHasBeenSet() const { return m_taskStartToCloseTimeoutHasBeenSet; } /** *

The maximum duration allowed for the 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.

*/ inline void SetTaskStartToCloseTimeout(const Aws::String& value) { m_taskStartToCloseTimeoutHasBeenSet = true; m_taskStartToCloseTimeout = value; } /** *

The maximum duration allowed for the 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.

*/ inline void SetTaskStartToCloseTimeout(Aws::String&& value) { m_taskStartToCloseTimeoutHasBeenSet = true; m_taskStartToCloseTimeout = std::move(value); } /** *

The maximum duration allowed for the 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.

*/ inline void SetTaskStartToCloseTimeout(const char* value) { m_taskStartToCloseTimeoutHasBeenSet = true; m_taskStartToCloseTimeout.assign(value); } /** *

The maximum duration allowed for the 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.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithTaskStartToCloseTimeout(const Aws::String& value) { SetTaskStartToCloseTimeout(value); return *this;} /** *

The maximum duration allowed for the 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.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithTaskStartToCloseTimeout(Aws::String&& value) { SetTaskStartToCloseTimeout(std::move(value)); return *this;} /** *

The maximum duration allowed for the 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.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithTaskStartToCloseTimeout(const char* value) { SetTaskStartToCloseTimeout(value); return *this;} /** *

The list of tags to associated with the child workflow execution.

*/ inline const Aws::Vector& GetTagList() const{ return m_tagList; } /** *

The list of tags to associated with the child workflow execution.

*/ inline bool TagListHasBeenSet() const { return m_tagListHasBeenSet; } /** *

The list of tags to associated with the child workflow execution.

*/ inline void SetTagList(const Aws::Vector& value) { m_tagListHasBeenSet = true; m_tagList = value; } /** *

The list of tags to associated with the child workflow execution.

*/ inline void SetTagList(Aws::Vector&& value) { m_tagListHasBeenSet = true; m_tagList = std::move(value); } /** *

The list of tags to associated with the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithTagList(const Aws::Vector& value) { SetTagList(value); return *this;} /** *

The list of tags to associated with the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithTagList(Aws::Vector&& value) { SetTagList(std::move(value)); return *this;} /** *

The list of tags to associated with the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& AddTagList(const Aws::String& value) { m_tagListHasBeenSet = true; m_tagList.push_back(value); return *this; } /** *

The list of tags to associated with the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& AddTagList(Aws::String&& value) { m_tagListHasBeenSet = true; m_tagList.push_back(std::move(value)); return *this; } /** *

The list of tags to associated with the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& AddTagList(const char* value) { m_tagListHasBeenSet = true; m_tagList.push_back(value); return *this; } /** *

The IAM role to attach to the child workflow execution.

*/ inline const Aws::String& GetLambdaRole() const{ return m_lambdaRole; } /** *

The IAM role to attach to the child workflow execution.

*/ inline bool LambdaRoleHasBeenSet() const { return m_lambdaRoleHasBeenSet; } /** *

The IAM role to attach to the child workflow execution.

*/ inline void SetLambdaRole(const Aws::String& value) { m_lambdaRoleHasBeenSet = true; m_lambdaRole = value; } /** *

The IAM role to attach to the child workflow execution.

*/ inline void SetLambdaRole(Aws::String&& value) { m_lambdaRoleHasBeenSet = true; m_lambdaRole = std::move(value); } /** *

The IAM role to attach to the child workflow execution.

*/ inline void SetLambdaRole(const char* value) { m_lambdaRoleHasBeenSet = true; m_lambdaRole.assign(value); } /** *

The IAM role to attach to the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithLambdaRole(const Aws::String& value) { SetLambdaRole(value); return *this;} /** *

The IAM role to attach to the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithLambdaRole(Aws::String&& value) { SetLambdaRole(std::move(value)); return *this;} /** *

The IAM role to attach to the child workflow execution.

*/ inline StartChildWorkflowExecutionInitiatedEventAttributes& WithLambdaRole(const char* value) { SetLambdaRole(value); return *this;} private: Aws::String m_workflowId; bool m_workflowIdHasBeenSet = false; WorkflowType m_workflowType; bool m_workflowTypeHasBeenSet = 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; long long m_decisionTaskCompletedEventId; bool m_decisionTaskCompletedEventIdHasBeenSet = false; ChildPolicy m_childPolicy; bool m_childPolicyHasBeenSet = false; Aws::String m_taskStartToCloseTimeout; bool m_taskStartToCloseTimeoutHasBeenSet = false; Aws::Vector m_tagList; bool m_tagListHasBeenSet = false; Aws::String m_lambdaRole; bool m_lambdaRoleHasBeenSet = false; }; } // namespace Model } // namespace SWF } // namespace Aws