/** * 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 { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace SFN { namespace Model { class AWS_SFN_API DescribeStateMachineResult { public: DescribeStateMachineResult(); DescribeStateMachineResult(const Aws::AmazonWebServiceResult& result); DescribeStateMachineResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The Amazon Resource Name (ARN) that identifies the state machine.

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

The Amazon Resource Name (ARN) that identifies the state machine.

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

The Amazon Resource Name (ARN) that identifies the state machine.

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

The Amazon Resource Name (ARN) that identifies the state machine.

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

The Amazon Resource Name (ARN) that identifies the state machine.

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

The Amazon Resource Name (ARN) that identifies the state machine.

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

The Amazon Resource Name (ARN) that identifies the state machine.

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

The name of the state machine.

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 state machine.

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 state machine.

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 state machine.

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 state machine.

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 DescribeStateMachineResult& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the state machine.

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 DescribeStateMachineResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the state machine.

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 DescribeStateMachineResult& WithName(const char* value) { SetName(value); return *this;} /** *

The current status of the state machine.

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

The current status of the state machine.

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

The current status of the state machine.

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

The current status of the state machine.

*/ inline DescribeStateMachineResult& WithStatus(const StateMachineStatus& value) { SetStatus(value); return *this;} /** *

The current status of the state machine.

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

The Amazon States Language definition of the state machine. See Amazon * States Language.

*/ inline const Aws::String& GetDefinition() const{ return m_definition; } /** *

The Amazon States Language definition of the state machine. See Amazon * States Language.

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

The Amazon States Language definition of the state machine. See Amazon * States Language.

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

The Amazon States Language definition of the state machine. See Amazon * States Language.

*/ inline void SetDefinition(const char* value) { m_definition.assign(value); } /** *

The Amazon States Language definition of the state machine. See Amazon * States Language.

*/ inline DescribeStateMachineResult& WithDefinition(const Aws::String& value) { SetDefinition(value); return *this;} /** *

The Amazon States Language definition of the state machine. See Amazon * States Language.

*/ inline DescribeStateMachineResult& WithDefinition(Aws::String&& value) { SetDefinition(std::move(value)); return *this;} /** *

The Amazon States Language definition of the state machine. See Amazon * States Language.

*/ inline DescribeStateMachineResult& WithDefinition(const char* value) { SetDefinition(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role used when creating this state * machine. (The IAM role maintains security by granting Step Functions access to * AWS resources.)

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The Amazon Resource Name (ARN) of the IAM role used when creating this state * machine. (The IAM role maintains security by granting Step Functions access to * AWS resources.)

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

The Amazon Resource Name (ARN) of the IAM role used when creating this state * machine. (The IAM role maintains security by granting Step Functions access to * AWS resources.)

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

The Amazon Resource Name (ARN) of the IAM role used when creating this state * machine. (The IAM role maintains security by granting Step Functions access to * AWS resources.)

*/ inline void SetRoleArn(const char* value) { m_roleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the IAM role used when creating this state * machine. (The IAM role maintains security by granting Step Functions access to * AWS resources.)

*/ inline DescribeStateMachineResult& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role used when creating this state * machine. (The IAM role maintains security by granting Step Functions access to * AWS resources.)

*/ inline DescribeStateMachineResult& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role used when creating this state * machine. (The IAM role maintains security by granting Step Functions access to * AWS resources.)

*/ inline DescribeStateMachineResult& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

The type of the state machine (STANDARD or * EXPRESS).

*/ inline const StateMachineType& GetType() const{ return m_type; } /** *

The type of the state machine (STANDARD or * EXPRESS).

*/ inline void SetType(const StateMachineType& value) { m_type = value; } /** *

The type of the state machine (STANDARD or * EXPRESS).

*/ inline void SetType(StateMachineType&& value) { m_type = std::move(value); } /** *

The type of the state machine (STANDARD or * EXPRESS).

*/ inline DescribeStateMachineResult& WithType(const StateMachineType& value) { SetType(value); return *this;} /** *

The type of the state machine (STANDARD or * EXPRESS).

*/ inline DescribeStateMachineResult& WithType(StateMachineType&& value) { SetType(std::move(value)); return *this;} /** *

The date the state machine is created.

*/ inline const Aws::Utils::DateTime& GetCreationDate() const{ return m_creationDate; } /** *

The date the state machine is created.

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

The date the state machine is created.

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

The date the state machine is created.

*/ inline DescribeStateMachineResult& WithCreationDate(const Aws::Utils::DateTime& value) { SetCreationDate(value); return *this;} /** *

The date the state machine is created.

*/ inline DescribeStateMachineResult& WithCreationDate(Aws::Utils::DateTime&& value) { SetCreationDate(std::move(value)); return *this;} inline const LoggingConfiguration& GetLoggingConfiguration() const{ return m_loggingConfiguration; } inline void SetLoggingConfiguration(const LoggingConfiguration& value) { m_loggingConfiguration = value; } inline void SetLoggingConfiguration(LoggingConfiguration&& value) { m_loggingConfiguration = std::move(value); } inline DescribeStateMachineResult& WithLoggingConfiguration(const LoggingConfiguration& value) { SetLoggingConfiguration(value); return *this;} inline DescribeStateMachineResult& WithLoggingConfiguration(LoggingConfiguration&& value) { SetLoggingConfiguration(std::move(value)); return *this;} private: Aws::String m_stateMachineArn; Aws::String m_name; StateMachineStatus m_status; Aws::String m_definition; Aws::String m_roleArn; StateMachineType m_type; Aws::Utils::DateTime m_creationDate; LoggingConfiguration m_loggingConfiguration; }; } // namespace Model } // namespace SFN } // namespace Aws