/** * 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 #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace SimSpaceWeaver { namespace Model { class DescribeSimulationResult { public: AWS_SIMSPACEWEAVER_API DescribeSimulationResult(); AWS_SIMSPACEWEAVER_API DescribeSimulationResult(const Aws::AmazonWebServiceResult& result); AWS_SIMSPACEWEAVER_API DescribeSimulationResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The Amazon Resource Name (ARN) of the simulation. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) of the simulation. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

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

The Amazon Resource Name (ARN) of the simulation. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

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

The Amazon Resource Name (ARN) of the simulation. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline void SetArn(const char* value) { m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) of the simulation. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline DescribeSimulationResult& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the simulation. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline DescribeSimulationResult& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the simulation. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline DescribeSimulationResult& WithArn(const char* value) { SetArn(value); return *this;} /** *

The time when the simulation was created, expressed as the number of seconds * and milliseconds in UTC since the Unix epoch (0:0:0.000, January 1, 1970).

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The time when the simulation was created, expressed as the number of seconds * and milliseconds in UTC since the Unix epoch (0:0:0.000, January 1, 1970).

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

The time when the simulation was created, expressed as the number of seconds * and milliseconds in UTC since the Unix epoch (0:0:0.000, January 1, 1970).

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

The time when the simulation was created, expressed as the number of seconds * and milliseconds in UTC since the Unix epoch (0:0:0.000, January 1, 1970).

*/ inline DescribeSimulationResult& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The time when the simulation was created, expressed as the number of seconds * and milliseconds in UTC since the Unix epoch (0:0:0.000, January 1, 1970).

*/ inline DescribeSimulationResult& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The description of the simulation.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The description of the simulation.

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

The description of the simulation.

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

The description of the simulation.

*/ inline void SetDescription(const char* value) { m_description.assign(value); } /** *

The description of the simulation.

*/ inline DescribeSimulationResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The description of the simulation.

*/ inline DescribeSimulationResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The description of the simulation.

*/ inline DescribeSimulationResult& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

A universally unique identifier (UUID) for this simulation.

*/ inline const Aws::String& GetExecutionId() const{ return m_executionId; } /** *

A universally unique identifier (UUID) for this simulation.

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

A universally unique identifier (UUID) for this simulation.

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

A universally unique identifier (UUID) for this simulation.

*/ inline void SetExecutionId(const char* value) { m_executionId.assign(value); } /** *

A universally unique identifier (UUID) for this simulation.

*/ inline DescribeSimulationResult& WithExecutionId(const Aws::String& value) { SetExecutionId(value); return *this;} /** *

A universally unique identifier (UUID) for this simulation.

*/ inline DescribeSimulationResult& WithExecutionId(Aws::String&& value) { SetExecutionId(std::move(value)); return *this;} /** *

A universally unique identifier (UUID) for this simulation.

*/ inline DescribeSimulationResult& WithExecutionId(const char* value) { SetExecutionId(value); return *this;} /** *

A collection of additional state information, such as domain and clock * configuration.

*/ inline const LiveSimulationState& GetLiveSimulationState() const{ return m_liveSimulationState; } /** *

A collection of additional state information, such as domain and clock * configuration.

*/ inline void SetLiveSimulationState(const LiveSimulationState& value) { m_liveSimulationState = value; } /** *

A collection of additional state information, such as domain and clock * configuration.

*/ inline void SetLiveSimulationState(LiveSimulationState&& value) { m_liveSimulationState = std::move(value); } /** *

A collection of additional state information, such as domain and clock * configuration.

*/ inline DescribeSimulationResult& WithLiveSimulationState(const LiveSimulationState& value) { SetLiveSimulationState(value); return *this;} /** *

A collection of additional state information, such as domain and clock * configuration.

*/ inline DescribeSimulationResult& WithLiveSimulationState(LiveSimulationState&& value) { SetLiveSimulationState(std::move(value)); return *this;} /** *

Settings that control how SimSpace Weaver handles your simulation log * data.

*/ inline const LoggingConfiguration& GetLoggingConfiguration() const{ return m_loggingConfiguration; } /** *

Settings that control how SimSpace Weaver handles your simulation log * data.

*/ inline void SetLoggingConfiguration(const LoggingConfiguration& value) { m_loggingConfiguration = value; } /** *

Settings that control how SimSpace Weaver handles your simulation log * data.

*/ inline void SetLoggingConfiguration(LoggingConfiguration&& value) { m_loggingConfiguration = std::move(value); } /** *

Settings that control how SimSpace Weaver handles your simulation log * data.

*/ inline DescribeSimulationResult& WithLoggingConfiguration(const LoggingConfiguration& value) { SetLoggingConfiguration(value); return *this;} /** *

Settings that control how SimSpace Weaver handles your simulation log * data.

*/ inline DescribeSimulationResult& WithLoggingConfiguration(LoggingConfiguration&& value) { SetLoggingConfiguration(std::move(value)); return *this;} /** *

The maximum running time of the simulation, specified as a number of minutes * (m or M), hours (h or H), or days (d or D). The simulation stops when it reaches * this limit. The maximum value is 14D, or its equivalent in the * other units. The default value is 14D. A value equivalent to * 0 makes the simulation immediately transition to * Stopping as soon as it reaches Started.

*/ inline const Aws::String& GetMaximumDuration() const{ return m_maximumDuration; } /** *

The maximum running time of the simulation, specified as a number of minutes * (m or M), hours (h or H), or days (d or D). The simulation stops when it reaches * this limit. The maximum value is 14D, or its equivalent in the * other units. The default value is 14D. A value equivalent to * 0 makes the simulation immediately transition to * Stopping as soon as it reaches Started.

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

The maximum running time of the simulation, specified as a number of minutes * (m or M), hours (h or H), or days (d or D). The simulation stops when it reaches * this limit. The maximum value is 14D, or its equivalent in the * other units. The default value is 14D. A value equivalent to * 0 makes the simulation immediately transition to * Stopping as soon as it reaches Started.

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

The maximum running time of the simulation, specified as a number of minutes * (m or M), hours (h or H), or days (d or D). The simulation stops when it reaches * this limit. The maximum value is 14D, or its equivalent in the * other units. The default value is 14D. A value equivalent to * 0 makes the simulation immediately transition to * Stopping as soon as it reaches Started.

*/ inline void SetMaximumDuration(const char* value) { m_maximumDuration.assign(value); } /** *

The maximum running time of the simulation, specified as a number of minutes * (m or M), hours (h or H), or days (d or D). The simulation stops when it reaches * this limit. The maximum value is 14D, or its equivalent in the * other units. The default value is 14D. A value equivalent to * 0 makes the simulation immediately transition to * Stopping as soon as it reaches Started.

*/ inline DescribeSimulationResult& WithMaximumDuration(const Aws::String& value) { SetMaximumDuration(value); return *this;} /** *

The maximum running time of the simulation, specified as a number of minutes * (m or M), hours (h or H), or days (d or D). The simulation stops when it reaches * this limit. The maximum value is 14D, or its equivalent in the * other units. The default value is 14D. A value equivalent to * 0 makes the simulation immediately transition to * Stopping as soon as it reaches Started.

*/ inline DescribeSimulationResult& WithMaximumDuration(Aws::String&& value) { SetMaximumDuration(std::move(value)); return *this;} /** *

The maximum running time of the simulation, specified as a number of minutes * (m or M), hours (h or H), or days (d or D). The simulation stops when it reaches * this limit. The maximum value is 14D, or its equivalent in the * other units. The default value is 14D. A value equivalent to * 0 makes the simulation immediately transition to * Stopping as soon as it reaches Started.

*/ inline DescribeSimulationResult& WithMaximumDuration(const char* value) { SetMaximumDuration(value); return *this;} /** *

The name of the simulation.

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

The name of the simulation.

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

The name of the simulation.

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

The name of the simulation.

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

The name of the simulation.

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

The name of the simulation.

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

The name of the simulation.

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

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that the simulation assumes to perform actions. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General Reference. * For more information about IAM roles, see IAM * roles in the Identity and Access Management User Guide.

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

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that the simulation assumes to perform actions. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General Reference. * For more information about IAM roles, see IAM * roles in the Identity and Access Management User Guide.

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

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that the simulation assumes to perform actions. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General Reference. * For more information about IAM roles, see IAM * roles in the Identity and Access Management User Guide.

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

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that the simulation assumes to perform actions. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General Reference. * For more information about IAM roles, see IAM * roles in the Identity and Access Management User Guide.

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

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that the simulation assumes to perform actions. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General Reference. * For more information about IAM roles, see IAM * roles in the Identity and Access Management User Guide.

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

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that the simulation assumes to perform actions. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General Reference. * For more information about IAM roles, see IAM * roles in the Identity and Access Management User Guide.

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

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) * role that the simulation assumes to perform actions. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General Reference. * For more information about IAM roles, see IAM * roles in the Identity and Access Management User Guide.

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

The location of the simulation schema in Amazon Simple Storage Service * (Amazon S3). For more information about Amazon S3, see the * Amazon Simple Storage Service User Guide .

*/ inline const S3Location& GetSchemaS3Location() const{ return m_schemaS3Location; } /** *

The location of the simulation schema in Amazon Simple Storage Service * (Amazon S3). For more information about Amazon S3, see the * Amazon Simple Storage Service User Guide .

*/ inline void SetSchemaS3Location(const S3Location& value) { m_schemaS3Location = value; } /** *

The location of the simulation schema in Amazon Simple Storage Service * (Amazon S3). For more information about Amazon S3, see the * Amazon Simple Storage Service User Guide .

*/ inline void SetSchemaS3Location(S3Location&& value) { m_schemaS3Location = std::move(value); } /** *

The location of the simulation schema in Amazon Simple Storage Service * (Amazon S3). For more information about Amazon S3, see the * Amazon Simple Storage Service User Guide .

*/ inline DescribeSimulationResult& WithSchemaS3Location(const S3Location& value) { SetSchemaS3Location(value); return *this;} /** *

The location of the simulation schema in Amazon Simple Storage Service * (Amazon S3). For more information about Amazon S3, see the * Amazon Simple Storage Service User Guide .

*/ inline DescribeSimulationResult& WithSchemaS3Location(S3Location&& value) { SetSchemaS3Location(std::move(value)); return *this;} inline const S3Location& GetSnapshotS3Location() const{ return m_snapshotS3Location; } inline void SetSnapshotS3Location(const S3Location& value) { m_snapshotS3Location = value; } inline void SetSnapshotS3Location(S3Location&& value) { m_snapshotS3Location = std::move(value); } inline DescribeSimulationResult& WithSnapshotS3Location(const S3Location& value) { SetSnapshotS3Location(value); return *this;} inline DescribeSimulationResult& WithSnapshotS3Location(S3Location&& value) { SetSnapshotS3Location(std::move(value)); return *this;} /** *

An error message that SimSpace Weaver returns only if a problem occurs when * the simulation is in the STARTING state.

*/ inline const Aws::String& GetStartError() const{ return m_startError; } /** *

An error message that SimSpace Weaver returns only if a problem occurs when * the simulation is in the STARTING state.

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

An error message that SimSpace Weaver returns only if a problem occurs when * the simulation is in the STARTING state.

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

An error message that SimSpace Weaver returns only if a problem occurs when * the simulation is in the STARTING state.

*/ inline void SetStartError(const char* value) { m_startError.assign(value); } /** *

An error message that SimSpace Weaver returns only if a problem occurs when * the simulation is in the STARTING state.

*/ inline DescribeSimulationResult& WithStartError(const Aws::String& value) { SetStartError(value); return *this;} /** *

An error message that SimSpace Weaver returns only if a problem occurs when * the simulation is in the STARTING state.

*/ inline DescribeSimulationResult& WithStartError(Aws::String&& value) { SetStartError(std::move(value)); return *this;} /** *

An error message that SimSpace Weaver returns only if a problem occurs when * the simulation is in the STARTING state.

*/ inline DescribeSimulationResult& WithStartError(const char* value) { SetStartError(value); return *this;} /** *

The current lifecycle state of the simulation.

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

The current lifecycle state of the simulation.

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

The current lifecycle state of the simulation.

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

The current lifecycle state of the simulation.

*/ inline DescribeSimulationResult& WithStatus(const SimulationStatus& value) { SetStatus(value); return *this;} /** *

The current lifecycle state of the simulation.

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

The desired lifecycle state of the simulation.

*/ inline const SimulationTargetStatus& GetTargetStatus() const{ return m_targetStatus; } /** *

The desired lifecycle state of the simulation.

*/ inline void SetTargetStatus(const SimulationTargetStatus& value) { m_targetStatus = value; } /** *

The desired lifecycle state of the simulation.

*/ inline void SetTargetStatus(SimulationTargetStatus&& value) { m_targetStatus = std::move(value); } /** *

The desired lifecycle state of the simulation.

*/ inline DescribeSimulationResult& WithTargetStatus(const SimulationTargetStatus& value) { SetTargetStatus(value); return *this;} /** *

The desired lifecycle state of the simulation.

*/ inline DescribeSimulationResult& WithTargetStatus(SimulationTargetStatus&& value) { SetTargetStatus(std::move(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 DescribeSimulationResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeSimulationResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeSimulationResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_arn; Aws::Utils::DateTime m_creationTime; Aws::String m_description; Aws::String m_executionId; LiveSimulationState m_liveSimulationState; LoggingConfiguration m_loggingConfiguration; Aws::String m_maximumDuration; Aws::String m_name; Aws::String m_roleArn; S3Location m_schemaS3Location; S3Location m_snapshotS3Location; Aws::String m_startError; SimulationStatus m_status; SimulationTargetStatus m_targetStatus; Aws::String m_requestId; }; } // namespace Model } // namespace SimSpaceWeaver } // namespace Aws