/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains information about a workflow execution.See Also:
* AWS
* API Reference
The workflow execution this information is about.
*/ inline const WorkflowExecution& GetExecution() const{ return m_execution; } /** *The workflow execution this information is about.
*/ inline bool ExecutionHasBeenSet() const { return m_executionHasBeenSet; } /** *The workflow execution this information is about.
*/ inline void SetExecution(const WorkflowExecution& value) { m_executionHasBeenSet = true; m_execution = value; } /** *The workflow execution this information is about.
*/ inline void SetExecution(WorkflowExecution&& value) { m_executionHasBeenSet = true; m_execution = std::move(value); } /** *The workflow execution this information is about.
*/ inline WorkflowExecutionInfo& WithExecution(const WorkflowExecution& value) { SetExecution(value); return *this;} /** *The workflow execution this information is about.
*/ inline WorkflowExecutionInfo& WithExecution(WorkflowExecution&& value) { SetExecution(std::move(value)); return *this;} /** *The type of the workflow execution.
*/ inline const WorkflowType& GetWorkflowType() const{ return m_workflowType; } /** *The type of the workflow execution.
*/ inline bool WorkflowTypeHasBeenSet() const { return m_workflowTypeHasBeenSet; } /** *The type of the workflow execution.
*/ inline void SetWorkflowType(const WorkflowType& value) { m_workflowTypeHasBeenSet = true; m_workflowType = value; } /** *The type of the workflow execution.
*/ inline void SetWorkflowType(WorkflowType&& value) { m_workflowTypeHasBeenSet = true; m_workflowType = std::move(value); } /** *The type of the workflow execution.
*/ inline WorkflowExecutionInfo& WithWorkflowType(const WorkflowType& value) { SetWorkflowType(value); return *this;} /** *The type of the workflow execution.
*/ inline WorkflowExecutionInfo& WithWorkflowType(WorkflowType&& value) { SetWorkflowType(std::move(value)); return *this;} /** *The time when the execution was started.
*/ inline const Aws::Utils::DateTime& GetStartTimestamp() const{ return m_startTimestamp; } /** *The time when the execution was started.
*/ inline bool StartTimestampHasBeenSet() const { return m_startTimestampHasBeenSet; } /** *The time when the execution was started.
*/ inline void SetStartTimestamp(const Aws::Utils::DateTime& value) { m_startTimestampHasBeenSet = true; m_startTimestamp = value; } /** *The time when the execution was started.
*/ inline void SetStartTimestamp(Aws::Utils::DateTime&& value) { m_startTimestampHasBeenSet = true; m_startTimestamp = std::move(value); } /** *The time when the execution was started.
*/ inline WorkflowExecutionInfo& WithStartTimestamp(const Aws::Utils::DateTime& value) { SetStartTimestamp(value); return *this;} /** *The time when the execution was started.
*/ inline WorkflowExecutionInfo& WithStartTimestamp(Aws::Utils::DateTime&& value) { SetStartTimestamp(std::move(value)); return *this;} /** *The time when the workflow execution was closed. Set only if the execution * status is CLOSED.
*/ inline const Aws::Utils::DateTime& GetCloseTimestamp() const{ return m_closeTimestamp; } /** *The time when the workflow execution was closed. Set only if the execution * status is CLOSED.
*/ inline bool CloseTimestampHasBeenSet() const { return m_closeTimestampHasBeenSet; } /** *The time when the workflow execution was closed. Set only if the execution * status is CLOSED.
*/ inline void SetCloseTimestamp(const Aws::Utils::DateTime& value) { m_closeTimestampHasBeenSet = true; m_closeTimestamp = value; } /** *The time when the workflow execution was closed. Set only if the execution * status is CLOSED.
*/ inline void SetCloseTimestamp(Aws::Utils::DateTime&& value) { m_closeTimestampHasBeenSet = true; m_closeTimestamp = std::move(value); } /** *The time when the workflow execution was closed. Set only if the execution * status is CLOSED.
*/ inline WorkflowExecutionInfo& WithCloseTimestamp(const Aws::Utils::DateTime& value) { SetCloseTimestamp(value); return *this;} /** *The time when the workflow execution was closed. Set only if the execution * status is CLOSED.
*/ inline WorkflowExecutionInfo& WithCloseTimestamp(Aws::Utils::DateTime&& value) { SetCloseTimestamp(std::move(value)); return *this;} /** *The current status of the execution.
*/ inline const ExecutionStatus& GetExecutionStatus() const{ return m_executionStatus; } /** *The current status of the execution.
*/ inline bool ExecutionStatusHasBeenSet() const { return m_executionStatusHasBeenSet; } /** *The current status of the execution.
*/ inline void SetExecutionStatus(const ExecutionStatus& value) { m_executionStatusHasBeenSet = true; m_executionStatus = value; } /** *The current status of the execution.
*/ inline void SetExecutionStatus(ExecutionStatus&& value) { m_executionStatusHasBeenSet = true; m_executionStatus = std::move(value); } /** *The current status of the execution.
*/ inline WorkflowExecutionInfo& WithExecutionStatus(const ExecutionStatus& value) { SetExecutionStatus(value); return *this;} /** *The current status of the execution.
*/ inline WorkflowExecutionInfo& WithExecutionStatus(ExecutionStatus&& value) { SetExecutionStatus(std::move(value)); return *this;} /** *If the execution status is closed then this specifies how the execution was * closed:
COMPLETED
– the execution was
* successfully completed.
CANCELED
– the execution
* was canceled.Cancellation allows the implementation to gracefully clean up
* before the execution is closed.
TERMINATED
– the
* execution was force terminated.
FAILED
– the
* execution failed to complete.
TIMED_OUT
– the
* execution did not complete in the alloted time and was automatically timed
* out.
CONTINUED_AS_NEW
– the execution is
* logically continued. This means the current execution was completed and a new
* execution was started to carry on the workflow.
If the execution status is closed then this specifies how the execution was * closed:
COMPLETED
– the execution was
* successfully completed.
CANCELED
– the execution
* was canceled.Cancellation allows the implementation to gracefully clean up
* before the execution is closed.
TERMINATED
– the
* execution was force terminated.
FAILED
– the
* execution failed to complete.
TIMED_OUT
– the
* execution did not complete in the alloted time and was automatically timed
* out.
CONTINUED_AS_NEW
– the execution is
* logically continued. This means the current execution was completed and a new
* execution was started to carry on the workflow.
If the execution status is closed then this specifies how the execution was * closed:
COMPLETED
– the execution was
* successfully completed.
CANCELED
– the execution
* was canceled.Cancellation allows the implementation to gracefully clean up
* before the execution is closed.
TERMINATED
– the
* execution was force terminated.
FAILED
– the
* execution failed to complete.
TIMED_OUT
– the
* execution did not complete in the alloted time and was automatically timed
* out.
CONTINUED_AS_NEW
– the execution is
* logically continued. This means the current execution was completed and a new
* execution was started to carry on the workflow.
If the execution status is closed then this specifies how the execution was * closed:
COMPLETED
– the execution was
* successfully completed.
CANCELED
– the execution
* was canceled.Cancellation allows the implementation to gracefully clean up
* before the execution is closed.
TERMINATED
– the
* execution was force terminated.
FAILED
– the
* execution failed to complete.
TIMED_OUT
– the
* execution did not complete in the alloted time and was automatically timed
* out.
CONTINUED_AS_NEW
– the execution is
* logically continued. This means the current execution was completed and a new
* execution was started to carry on the workflow.
If the execution status is closed then this specifies how the execution was * closed:
COMPLETED
– the execution was
* successfully completed.
CANCELED
– the execution
* was canceled.Cancellation allows the implementation to gracefully clean up
* before the execution is closed.
TERMINATED
– the
* execution was force terminated.
FAILED
– the
* execution failed to complete.
TIMED_OUT
– the
* execution did not complete in the alloted time and was automatically timed
* out.
CONTINUED_AS_NEW
– the execution is
* logically continued. This means the current execution was completed and a new
* execution was started to carry on the workflow.
If the execution status is closed then this specifies how the execution was * closed:
COMPLETED
– the execution was
* successfully completed.
CANCELED
– the execution
* was canceled.Cancellation allows the implementation to gracefully clean up
* before the execution is closed.
TERMINATED
– the
* execution was force terminated.
FAILED
– the
* execution failed to complete.
TIMED_OUT
– the
* execution did not complete in the alloted time and was automatically timed
* out.
CONTINUED_AS_NEW
– the execution is
* logically continued. This means the current execution was completed and a new
* execution was started to carry on the workflow.
If this workflow execution is a child of another execution then contains the * workflow execution that started this execution.
*/ inline const WorkflowExecution& GetParent() const{ return m_parent; } /** *If this workflow execution is a child of another execution then contains the * workflow execution that started this execution.
*/ inline bool ParentHasBeenSet() const { return m_parentHasBeenSet; } /** *If this workflow execution is a child of another execution then contains the * workflow execution that started this execution.
*/ inline void SetParent(const WorkflowExecution& value) { m_parentHasBeenSet = true; m_parent = value; } /** *If this workflow execution is a child of another execution then contains the * workflow execution that started this execution.
*/ inline void SetParent(WorkflowExecution&& value) { m_parentHasBeenSet = true; m_parent = std::move(value); } /** *If this workflow execution is a child of another execution then contains the * workflow execution that started this execution.
*/ inline WorkflowExecutionInfo& WithParent(const WorkflowExecution& value) { SetParent(value); return *this;} /** *If this workflow execution is a child of another execution then contains the * workflow execution that started this execution.
*/ inline WorkflowExecutionInfo& WithParent(WorkflowExecution&& value) { SetParent(std::move(value)); return *this;} /** *The list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline const Aws::VectorThe list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline bool TagListHasBeenSet() const { return m_tagListHasBeenSet; } /** *The list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline void SetTagList(const Aws::VectorThe list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline void SetTagList(Aws::VectorThe list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline WorkflowExecutionInfo& WithTagList(const Aws::VectorThe list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline WorkflowExecutionInfo& WithTagList(Aws::VectorThe list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline WorkflowExecutionInfo& AddTagList(const Aws::String& value) { m_tagListHasBeenSet = true; m_tagList.push_back(value); return *this; } /** *The list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline WorkflowExecutionInfo& AddTagList(Aws::String&& value) { m_tagListHasBeenSet = true; m_tagList.push_back(std::move(value)); return *this; } /** *The list of tags associated with the workflow execution. Tags can be used to * identify and list workflow executions of interest through the visibility APIs. A * workflow execution can have a maximum of 5 tags.
*/ inline WorkflowExecutionInfo& AddTagList(const char* value) { m_tagListHasBeenSet = true; m_tagList.push_back(value); return *this; } /** *Set to true if a cancellation is requested for this workflow execution.
*/ inline bool GetCancelRequested() const{ return m_cancelRequested; } /** *Set to true if a cancellation is requested for this workflow execution.
*/ inline bool CancelRequestedHasBeenSet() const { return m_cancelRequestedHasBeenSet; } /** *Set to true if a cancellation is requested for this workflow execution.
*/ inline void SetCancelRequested(bool value) { m_cancelRequestedHasBeenSet = true; m_cancelRequested = value; } /** *Set to true if a cancellation is requested for this workflow execution.
*/ inline WorkflowExecutionInfo& WithCancelRequested(bool value) { SetCancelRequested(value); return *this;} private: WorkflowExecution m_execution; bool m_executionHasBeenSet = false; WorkflowType m_workflowType; bool m_workflowTypeHasBeenSet = false; Aws::Utils::DateTime m_startTimestamp; bool m_startTimestampHasBeenSet = false; Aws::Utils::DateTime m_closeTimestamp; bool m_closeTimestampHasBeenSet = false; ExecutionStatus m_executionStatus; bool m_executionStatusHasBeenSet = false; CloseStatus m_closeStatus; bool m_closeStatusHasBeenSet = false; WorkflowExecution m_parent; bool m_parentHasBeenSet = false; Aws::Vector