/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace SFN { namespace Model { class DescribeExecutionResult { public: AWS_SFN_API DescribeExecutionResult(); AWS_SFN_API DescribeExecutionResult(const Aws::AmazonWebServiceResult& result); AWS_SFN_API DescribeExecutionResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The Amazon Resource Name (ARN) that identifies the execution.

*/ inline const Aws::String& GetExecutionArn() const{ return m_executionArn; } /** *

The Amazon Resource Name (ARN) that identifies the execution.

*/ inline void SetExecutionArn(const Aws::String& value) { m_executionArn = value; } /** *

The Amazon Resource Name (ARN) that identifies the execution.

*/ inline void SetExecutionArn(Aws::String&& value) { m_executionArn = std::move(value); } /** *

The Amazon Resource Name (ARN) that identifies the execution.

*/ inline void SetExecutionArn(const char* value) { m_executionArn.assign(value); } /** *

The Amazon Resource Name (ARN) that identifies the execution.

*/ inline DescribeExecutionResult& WithExecutionArn(const Aws::String& value) { SetExecutionArn(value); return *this;} /** *

The Amazon Resource Name (ARN) that identifies the execution.

*/ inline DescribeExecutionResult& WithExecutionArn(Aws::String&& value) { SetExecutionArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) that identifies the execution.

*/ inline DescribeExecutionResult& WithExecutionArn(const char* value) { SetExecutionArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the executed stated machine.

*/ inline const Aws::String& GetStateMachineArn() const{ return m_stateMachineArn; } /** *

The Amazon Resource Name (ARN) of the executed stated machine.

*/ inline void SetStateMachineArn(const Aws::String& value) { m_stateMachineArn = value; } /** *

The Amazon Resource Name (ARN) of the executed stated machine.

*/ inline void SetStateMachineArn(Aws::String&& value) { m_stateMachineArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the executed stated machine.

*/ inline void SetStateMachineArn(const char* value) { m_stateMachineArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the executed stated machine.

*/ inline DescribeExecutionResult& WithStateMachineArn(const Aws::String& value) { SetStateMachineArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the executed stated machine.

*/ inline DescribeExecutionResult& WithStateMachineArn(Aws::String&& value) { SetStateMachineArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the executed stated machine.

*/ inline DescribeExecutionResult& WithStateMachineArn(const char* value) { SetStateMachineArn(value); return *this;} /** *

The name of the execution.

A name must not contain:

    *
  • white space

  • brackets < > { } [ ] *

  • wildcard characters ? *

  • *

    special characters " # % \ ^ | ~ ` $ & , ; : /

  • *
  • control characters (U+0000-001F, * U+007F-009F)

To enable logging with CloudWatch * Logs, the name should only contain 0-9, A-Z, a-z, - and _.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the execution.

A name must not contain:

    *
  • white space

  • brackets < > { } [ ] *

  • wildcard characters ? *

  • *

    special characters " # % \ ^ | ~ ` $ & , ; : /

  • *
  • control characters (U+0000-001F, * U+007F-009F)

To enable logging with CloudWatch * Logs, the name should only contain 0-9, A-Z, a-z, - and _.

*/ inline void SetName(const Aws::String& value) { m_name = value; } /** *

The name of the execution.

A name must not contain:

    *
  • white space

  • brackets < > { } [ ] *

  • wildcard characters ? *

  • *

    special characters " # % \ ^ | ~ ` $ & , ; : /

  • *
  • control characters (U+0000-001F, * U+007F-009F)

To enable logging with CloudWatch * Logs, the name should only contain 0-9, A-Z, a-z, - and _.

*/ inline void SetName(Aws::String&& value) { m_name = std::move(value); } /** *

The name of the execution.

A name must not contain:

    *
  • white space

  • brackets < > { } [ ] *

  • wildcard characters ? *

  • *

    special characters " # % \ ^ | ~ ` $ & , ; : /

  • *
  • control characters (U+0000-001F, * U+007F-009F)

To enable logging with CloudWatch * Logs, the name should only contain 0-9, A-Z, a-z, - and _.

*/ inline void SetName(const char* value) { m_name.assign(value); } /** *

The name of the execution.

A name must not contain:

    *
  • white space

  • brackets < > { } [ ] *

  • wildcard characters ? *

  • *

    special characters " # % \ ^ | ~ ` $ & , ; : /

  • *
  • control characters (U+0000-001F, * U+007F-009F)

To enable logging with CloudWatch * Logs, the name should only contain 0-9, A-Z, a-z, - and _.

*/ inline DescribeExecutionResult& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the execution.

A name must not contain:

    *
  • white space

  • brackets < > { } [ ] *

  • wildcard characters ? *

  • *

    special characters " # % \ ^ | ~ ` $ & , ; : /

  • *
  • control characters (U+0000-001F, * U+007F-009F)

To enable logging with CloudWatch * Logs, the name should only contain 0-9, A-Z, a-z, - and _.

*/ inline DescribeExecutionResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the execution.

A name must not contain:

    *
  • white space

  • brackets < > { } [ ] *

  • wildcard characters ? *

  • *

    special characters " # % \ ^ | ~ ` $ & , ; : /

  • *
  • control characters (U+0000-001F, * U+007F-009F)

To enable logging with CloudWatch * Logs, the name should only contain 0-9, A-Z, a-z, - and _.

*/ inline DescribeExecutionResult& WithName(const char* value) { SetName(value); return *this;} /** *

The current status of the execution.

*/ inline const ExecutionStatus& GetStatus() const{ return m_status; } /** *

The current status of the execution.

*/ inline void SetStatus(const ExecutionStatus& value) { m_status = value; } /** *

The current status of the execution.

*/ inline void SetStatus(ExecutionStatus&& value) { m_status = std::move(value); } /** *

The current status of the execution.

*/ inline DescribeExecutionResult& WithStatus(const ExecutionStatus& value) { SetStatus(value); return *this;} /** *

The current status of the execution.

*/ inline DescribeExecutionResult& WithStatus(ExecutionStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The date the execution is started.

*/ inline const Aws::Utils::DateTime& GetStartDate() const{ return m_startDate; } /** *

The date the execution is started.

*/ inline void SetStartDate(const Aws::Utils::DateTime& value) { m_startDate = value; } /** *

The date the execution is started.

*/ inline void SetStartDate(Aws::Utils::DateTime&& value) { m_startDate = std::move(value); } /** *

The date the execution is started.

*/ inline DescribeExecutionResult& WithStartDate(const Aws::Utils::DateTime& value) { SetStartDate(value); return *this;} /** *

The date the execution is started.

*/ inline DescribeExecutionResult& WithStartDate(Aws::Utils::DateTime&& value) { SetStartDate(std::move(value)); return *this;} /** *

If the execution ended, the date the execution stopped.

*/ inline const Aws::Utils::DateTime& GetStopDate() const{ return m_stopDate; } /** *

If the execution ended, the date the execution stopped.

*/ inline void SetStopDate(const Aws::Utils::DateTime& value) { m_stopDate = value; } /** *

If the execution ended, the date the execution stopped.

*/ inline void SetStopDate(Aws::Utils::DateTime&& value) { m_stopDate = std::move(value); } /** *

If the execution ended, the date the execution stopped.

*/ inline DescribeExecutionResult& WithStopDate(const Aws::Utils::DateTime& value) { SetStopDate(value); return *this;} /** *

If the execution ended, the date the execution stopped.

*/ inline DescribeExecutionResult& WithStopDate(Aws::Utils::DateTime&& value) { SetStopDate(std::move(value)); return *this;} /** *

The string that contains the JSON input data of the execution. Length * constraints apply to the payload size, and are expressed as bytes in UTF-8 * encoding.

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

The string that contains the JSON input data of the execution. Length * constraints apply to the payload size, and are expressed as bytes in UTF-8 * encoding.

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

The string that contains the JSON input data of the execution. Length * constraints apply to the payload size, and are expressed as bytes in UTF-8 * encoding.

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

The string that contains the JSON input data of the execution. Length * constraints apply to the payload size, and are expressed as bytes in UTF-8 * encoding.

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

The string that contains the JSON input data of the execution. Length * constraints apply to the payload size, and are expressed as bytes in UTF-8 * encoding.

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

The string that contains the JSON input data of the execution. Length * constraints apply to the payload size, and are expressed as bytes in UTF-8 * encoding.

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

The string that contains the JSON input data of the execution. Length * constraints apply to the payload size, and are expressed as bytes in UTF-8 * encoding.

*/ inline DescribeExecutionResult& WithInput(const char* value) { SetInput(value); return *this;} inline const CloudWatchEventsExecutionDataDetails& GetInputDetails() const{ return m_inputDetails; } inline void SetInputDetails(const CloudWatchEventsExecutionDataDetails& value) { m_inputDetails = value; } inline void SetInputDetails(CloudWatchEventsExecutionDataDetails&& value) { m_inputDetails = std::move(value); } inline DescribeExecutionResult& WithInputDetails(const CloudWatchEventsExecutionDataDetails& value) { SetInputDetails(value); return *this;} inline DescribeExecutionResult& WithInputDetails(CloudWatchEventsExecutionDataDetails&& value) { SetInputDetails(std::move(value)); return *this;} /** *

The JSON output data of the execution. Length constraints apply to the * payload size, and are expressed as bytes in UTF-8 encoding.

This * field is set only if the execution succeeds. If the execution fails, this field * is null.

*/ inline const Aws::String& GetOutput() const{ return m_output; } /** *

The JSON output data of the execution. Length constraints apply to the * payload size, and are expressed as bytes in UTF-8 encoding.

This * field is set only if the execution succeeds. If the execution fails, this field * is null.

*/ inline void SetOutput(const Aws::String& value) { m_output = value; } /** *

The JSON output data of the execution. Length constraints apply to the * payload size, and are expressed as bytes in UTF-8 encoding.

This * field is set only if the execution succeeds. If the execution fails, this field * is null.

*/ inline void SetOutput(Aws::String&& value) { m_output = std::move(value); } /** *

The JSON output data of the execution. Length constraints apply to the * payload size, and are expressed as bytes in UTF-8 encoding.

This * field is set only if the execution succeeds. If the execution fails, this field * is null.

*/ inline void SetOutput(const char* value) { m_output.assign(value); } /** *

The JSON output data of the execution. Length constraints apply to the * payload size, and are expressed as bytes in UTF-8 encoding.

This * field is set only if the execution succeeds. If the execution fails, this field * is null.

*/ inline DescribeExecutionResult& WithOutput(const Aws::String& value) { SetOutput(value); return *this;} /** *

The JSON output data of the execution. Length constraints apply to the * payload size, and are expressed as bytes in UTF-8 encoding.

This * field is set only if the execution succeeds. If the execution fails, this field * is null.

*/ inline DescribeExecutionResult& WithOutput(Aws::String&& value) { SetOutput(std::move(value)); return *this;} /** *

The JSON output data of the execution. Length constraints apply to the * payload size, and are expressed as bytes in UTF-8 encoding.

This * field is set only if the execution succeeds. If the execution fails, this field * is null.

*/ inline DescribeExecutionResult& WithOutput(const char* value) { SetOutput(value); return *this;} inline const CloudWatchEventsExecutionDataDetails& GetOutputDetails() const{ return m_outputDetails; } inline void SetOutputDetails(const CloudWatchEventsExecutionDataDetails& value) { m_outputDetails = value; } inline void SetOutputDetails(CloudWatchEventsExecutionDataDetails&& value) { m_outputDetails = std::move(value); } inline DescribeExecutionResult& WithOutputDetails(const CloudWatchEventsExecutionDataDetails& value) { SetOutputDetails(value); return *this;} inline DescribeExecutionResult& WithOutputDetails(CloudWatchEventsExecutionDataDetails&& value) { SetOutputDetails(std::move(value)); return *this;} /** *

The X-Ray trace header that was passed to the execution.

*/ inline const Aws::String& GetTraceHeader() const{ return m_traceHeader; } /** *

The X-Ray trace header that was passed to the execution.

*/ inline void SetTraceHeader(const Aws::String& value) { m_traceHeader = value; } /** *

The X-Ray trace header that was passed to the execution.

*/ inline void SetTraceHeader(Aws::String&& value) { m_traceHeader = std::move(value); } /** *

The X-Ray trace header that was passed to the execution.

*/ inline void SetTraceHeader(const char* value) { m_traceHeader.assign(value); } /** *

The X-Ray trace header that was passed to the execution.

*/ inline DescribeExecutionResult& WithTraceHeader(const Aws::String& value) { SetTraceHeader(value); return *this;} /** *

The X-Ray trace header that was passed to the execution.

*/ inline DescribeExecutionResult& WithTraceHeader(Aws::String&& value) { SetTraceHeader(std::move(value)); return *this;} /** *

The X-Ray trace header that was passed to the execution.

*/ inline DescribeExecutionResult& WithTraceHeader(const char* value) { SetTraceHeader(value); return *this;} /** *

The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched * this execution.

*/ inline const Aws::String& GetMapRunArn() const{ return m_mapRunArn; } /** *

The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched * this execution.

*/ inline void SetMapRunArn(const Aws::String& value) { m_mapRunArn = value; } /** *

The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched * this execution.

*/ inline void SetMapRunArn(Aws::String&& value) { m_mapRunArn = std::move(value); } /** *

The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched * this execution.

*/ inline void SetMapRunArn(const char* value) { m_mapRunArn.assign(value); } /** *

The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched * this execution.

*/ inline DescribeExecutionResult& WithMapRunArn(const Aws::String& value) { SetMapRunArn(value); return *this;} /** *

The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched * this execution.

*/ inline DescribeExecutionResult& WithMapRunArn(Aws::String&& value) { SetMapRunArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched * this execution.

*/ inline DescribeExecutionResult& WithMapRunArn(const char* value) { SetMapRunArn(value); return *this;} /** *

The error string if the state machine execution failed.

*/ inline const Aws::String& GetError() const{ return m_error; } /** *

The error string if the state machine execution failed.

*/ inline void SetError(const Aws::String& value) { m_error = value; } /** *

The error string if the state machine execution failed.

*/ inline void SetError(Aws::String&& value) { m_error = std::move(value); } /** *

The error string if the state machine execution failed.

*/ inline void SetError(const char* value) { m_error.assign(value); } /** *

The error string if the state machine execution failed.

*/ inline DescribeExecutionResult& WithError(const Aws::String& value) { SetError(value); return *this;} /** *

The error string if the state machine execution failed.

*/ inline DescribeExecutionResult& WithError(Aws::String&& value) { SetError(std::move(value)); return *this;} /** *

The error string if the state machine execution failed.

*/ inline DescribeExecutionResult& WithError(const char* value) { SetError(value); return *this;} /** *

The cause string if the state machine execution failed.

*/ inline const Aws::String& GetCause() const{ return m_cause; } /** *

The cause string if the state machine execution failed.

*/ inline void SetCause(const Aws::String& value) { m_cause = value; } /** *

The cause string if the state machine execution failed.

*/ inline void SetCause(Aws::String&& value) { m_cause = std::move(value); } /** *

The cause string if the state machine execution failed.

*/ inline void SetCause(const char* value) { m_cause.assign(value); } /** *

The cause string if the state machine execution failed.

*/ inline DescribeExecutionResult& WithCause(const Aws::String& value) { SetCause(value); return *this;} /** *

The cause string if the state machine execution failed.

*/ inline DescribeExecutionResult& WithCause(Aws::String&& value) { SetCause(std::move(value)); return *this;} /** *

The cause string if the state machine execution failed.

*/ inline DescribeExecutionResult& WithCause(const char* value) { SetCause(value); return *this;} /** *

The Amazon Resource Name (ARN) of the state machine version associated with * the execution. The version ARN is a combination of state machine ARN and the * version number separated by a colon (:). For example, * stateMachineARN:1.

If you start an execution from a * StartExecution request without specifying a state machine version * or alias ARN, Step Functions returns a null value.

*/ inline const Aws::String& GetStateMachineVersionArn() const{ return m_stateMachineVersionArn; } /** *

The Amazon Resource Name (ARN) of the state machine version associated with * the execution. The version ARN is a combination of state machine ARN and the * version number separated by a colon (:). For example, * stateMachineARN:1.

If you start an execution from a * StartExecution request without specifying a state machine version * or alias ARN, Step Functions returns a null value.

*/ inline void SetStateMachineVersionArn(const Aws::String& value) { m_stateMachineVersionArn = value; } /** *

The Amazon Resource Name (ARN) of the state machine version associated with * the execution. The version ARN is a combination of state machine ARN and the * version number separated by a colon (:). For example, * stateMachineARN:1.

If you start an execution from a * StartExecution request without specifying a state machine version * or alias ARN, Step Functions returns a null value.

*/ inline void SetStateMachineVersionArn(Aws::String&& value) { m_stateMachineVersionArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the state machine version associated with * the execution. The version ARN is a combination of state machine ARN and the * version number separated by a colon (:). For example, * stateMachineARN:1.

If you start an execution from a * StartExecution request without specifying a state machine version * or alias ARN, Step Functions returns a null value.

*/ inline void SetStateMachineVersionArn(const char* value) { m_stateMachineVersionArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the state machine version associated with * the execution. The version ARN is a combination of state machine ARN and the * version number separated by a colon (:). For example, * stateMachineARN:1.

If you start an execution from a * StartExecution request without specifying a state machine version * or alias ARN, Step Functions returns a null value.

*/ inline DescribeExecutionResult& WithStateMachineVersionArn(const Aws::String& value) { SetStateMachineVersionArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the state machine version associated with * the execution. The version ARN is a combination of state machine ARN and the * version number separated by a colon (:). For example, * stateMachineARN:1.

If you start an execution from a * StartExecution request without specifying a state machine version * or alias ARN, Step Functions returns a null value.

*/ inline DescribeExecutionResult& WithStateMachineVersionArn(Aws::String&& value) { SetStateMachineVersionArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the state machine version associated with * the execution. The version ARN is a combination of state machine ARN and the * version number separated by a colon (:). For example, * stateMachineARN:1.

If you start an execution from a * StartExecution request without specifying a state machine version * or alias ARN, Step Functions returns a null value.

*/ inline DescribeExecutionResult& WithStateMachineVersionArn(const char* value) { SetStateMachineVersionArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the state machine alias associated with the * execution. The alias ARN is a combination of state machine ARN and the alias * name separated by a colon (:). For example, * stateMachineARN:PROD.

If you start an execution from a * StartExecution request with a state machine version ARN, this field * will be null.

*/ inline const Aws::String& GetStateMachineAliasArn() const{ return m_stateMachineAliasArn; } /** *

The Amazon Resource Name (ARN) of the state machine alias associated with the * execution. The alias ARN is a combination of state machine ARN and the alias * name separated by a colon (:). For example, * stateMachineARN:PROD.

If you start an execution from a * StartExecution request with a state machine version ARN, this field * will be null.

*/ inline void SetStateMachineAliasArn(const Aws::String& value) { m_stateMachineAliasArn = value; } /** *

The Amazon Resource Name (ARN) of the state machine alias associated with the * execution. The alias ARN is a combination of state machine ARN and the alias * name separated by a colon (:). For example, * stateMachineARN:PROD.

If you start an execution from a * StartExecution request with a state machine version ARN, this field * will be null.

*/ inline void SetStateMachineAliasArn(Aws::String&& value) { m_stateMachineAliasArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the state machine alias associated with the * execution. The alias ARN is a combination of state machine ARN and the alias * name separated by a colon (:). For example, * stateMachineARN:PROD.

If you start an execution from a * StartExecution request with a state machine version ARN, this field * will be null.

*/ inline void SetStateMachineAliasArn(const char* value) { m_stateMachineAliasArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the state machine alias associated with the * execution. The alias ARN is a combination of state machine ARN and the alias * name separated by a colon (:). For example, * stateMachineARN:PROD.

If you start an execution from a * StartExecution request with a state machine version ARN, this field * will be null.

*/ inline DescribeExecutionResult& WithStateMachineAliasArn(const Aws::String& value) { SetStateMachineAliasArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the state machine alias associated with the * execution. The alias ARN is a combination of state machine ARN and the alias * name separated by a colon (:). For example, * stateMachineARN:PROD.

If you start an execution from a * StartExecution request with a state machine version ARN, this field * will be null.

*/ inline DescribeExecutionResult& WithStateMachineAliasArn(Aws::String&& value) { SetStateMachineAliasArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the state machine alias associated with the * execution. The alias ARN is a combination of state machine ARN and the alias * name separated by a colon (:). For example, * stateMachineARN:PROD.

If you start an execution from a * StartExecution request with a state machine version ARN, this field * will be null.

*/ inline DescribeExecutionResult& WithStateMachineAliasArn(const char* value) { SetStateMachineAliasArn(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeExecutionResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeExecutionResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeExecutionResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_executionArn; Aws::String m_stateMachineArn; Aws::String m_name; ExecutionStatus m_status; Aws::Utils::DateTime m_startDate; Aws::Utils::DateTime m_stopDate; Aws::String m_input; CloudWatchEventsExecutionDataDetails m_inputDetails; Aws::String m_output; CloudWatchEventsExecutionDataDetails m_outputDetails; Aws::String m_traceHeader; Aws::String m_mapRunArn; Aws::String m_error; Aws::String m_cause; Aws::String m_stateMachineVersionArn; Aws::String m_stateMachineAliasArn; Aws::String m_requestId; }; } // namespace Model } // namespace SFN } // namespace Aws