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

Summary data of an Proton component resource.

For more information * about components, see Proton * components in the Proton User Guide.

See Also:

AWS * API Reference

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

The Amazon Resource Name (ARN) of the component.

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

The Amazon Resource Name (ARN) of the component.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the component.

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

The Amazon Resource Name (ARN) of the component.

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

The Amazon Resource Name (ARN) of the component.

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

The Amazon Resource Name (ARN) of the component.

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

The Amazon Resource Name (ARN) of the component.

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

The Amazon Resource Name (ARN) of the component.

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

The time when the component was created.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The time when the component was created.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The time when the component was created.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The time when the component was created.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

The time when the component was created.

*/ inline ComponentSummary& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The time when the component was created.

*/ inline ComponentSummary& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The component deployment status.

*/ inline const DeploymentStatus& GetDeploymentStatus() const{ return m_deploymentStatus; } /** *

The component deployment status.

*/ inline bool DeploymentStatusHasBeenSet() const { return m_deploymentStatusHasBeenSet; } /** *

The component deployment status.

*/ inline void SetDeploymentStatus(const DeploymentStatus& value) { m_deploymentStatusHasBeenSet = true; m_deploymentStatus = value; } /** *

The component deployment status.

*/ inline void SetDeploymentStatus(DeploymentStatus&& value) { m_deploymentStatusHasBeenSet = true; m_deploymentStatus = std::move(value); } /** *

The component deployment status.

*/ inline ComponentSummary& WithDeploymentStatus(const DeploymentStatus& value) { SetDeploymentStatus(value); return *this;} /** *

The component deployment status.

*/ inline ComponentSummary& WithDeploymentStatus(DeploymentStatus&& value) { SetDeploymentStatus(std::move(value)); return *this;} /** *

The message associated with the component deployment status.

*/ inline const Aws::String& GetDeploymentStatusMessage() const{ return m_deploymentStatusMessage; } /** *

The message associated with the component deployment status.

*/ inline bool DeploymentStatusMessageHasBeenSet() const { return m_deploymentStatusMessageHasBeenSet; } /** *

The message associated with the component deployment status.

*/ inline void SetDeploymentStatusMessage(const Aws::String& value) { m_deploymentStatusMessageHasBeenSet = true; m_deploymentStatusMessage = value; } /** *

The message associated with the component deployment status.

*/ inline void SetDeploymentStatusMessage(Aws::String&& value) { m_deploymentStatusMessageHasBeenSet = true; m_deploymentStatusMessage = std::move(value); } /** *

The message associated with the component deployment status.

*/ inline void SetDeploymentStatusMessage(const char* value) { m_deploymentStatusMessageHasBeenSet = true; m_deploymentStatusMessage.assign(value); } /** *

The message associated with the component deployment status.

*/ inline ComponentSummary& WithDeploymentStatusMessage(const Aws::String& value) { SetDeploymentStatusMessage(value); return *this;} /** *

The message associated with the component deployment status.

*/ inline ComponentSummary& WithDeploymentStatusMessage(Aws::String&& value) { SetDeploymentStatusMessage(std::move(value)); return *this;} /** *

The message associated with the component deployment status.

*/ inline ComponentSummary& WithDeploymentStatusMessage(const char* value) { SetDeploymentStatusMessage(value); return *this;} /** *

The name of the Proton environment that this component is associated * with.

*/ inline const Aws::String& GetEnvironmentName() const{ return m_environmentName; } /** *

The name of the Proton environment that this component is associated * with.

*/ inline bool EnvironmentNameHasBeenSet() const { return m_environmentNameHasBeenSet; } /** *

The name of the Proton environment that this component is associated * with.

*/ inline void SetEnvironmentName(const Aws::String& value) { m_environmentNameHasBeenSet = true; m_environmentName = value; } /** *

The name of the Proton environment that this component is associated * with.

*/ inline void SetEnvironmentName(Aws::String&& value) { m_environmentNameHasBeenSet = true; m_environmentName = std::move(value); } /** *

The name of the Proton environment that this component is associated * with.

*/ inline void SetEnvironmentName(const char* value) { m_environmentNameHasBeenSet = true; m_environmentName.assign(value); } /** *

The name of the Proton environment that this component is associated * with.

*/ inline ComponentSummary& WithEnvironmentName(const Aws::String& value) { SetEnvironmentName(value); return *this;} /** *

The name of the Proton environment that this component is associated * with.

*/ inline ComponentSummary& WithEnvironmentName(Aws::String&& value) { SetEnvironmentName(std::move(value)); return *this;} /** *

The name of the Proton environment that this component is associated * with.

*/ inline ComponentSummary& WithEnvironmentName(const char* value) { SetEnvironmentName(value); return *this;} /** *

The ID of the last attempted deployment of this component.

*/ inline const Aws::String& GetLastAttemptedDeploymentId() const{ return m_lastAttemptedDeploymentId; } /** *

The ID of the last attempted deployment of this component.

*/ inline bool LastAttemptedDeploymentIdHasBeenSet() const { return m_lastAttemptedDeploymentIdHasBeenSet; } /** *

The ID of the last attempted deployment of this component.

*/ inline void SetLastAttemptedDeploymentId(const Aws::String& value) { m_lastAttemptedDeploymentIdHasBeenSet = true; m_lastAttemptedDeploymentId = value; } /** *

The ID of the last attempted deployment of this component.

*/ inline void SetLastAttemptedDeploymentId(Aws::String&& value) { m_lastAttemptedDeploymentIdHasBeenSet = true; m_lastAttemptedDeploymentId = std::move(value); } /** *

The ID of the last attempted deployment of this component.

*/ inline void SetLastAttemptedDeploymentId(const char* value) { m_lastAttemptedDeploymentIdHasBeenSet = true; m_lastAttemptedDeploymentId.assign(value); } /** *

The ID of the last attempted deployment of this component.

*/ inline ComponentSummary& WithLastAttemptedDeploymentId(const Aws::String& value) { SetLastAttemptedDeploymentId(value); return *this;} /** *

The ID of the last attempted deployment of this component.

*/ inline ComponentSummary& WithLastAttemptedDeploymentId(Aws::String&& value) { SetLastAttemptedDeploymentId(std::move(value)); return *this;} /** *

The ID of the last attempted deployment of this component.

*/ inline ComponentSummary& WithLastAttemptedDeploymentId(const char* value) { SetLastAttemptedDeploymentId(value); return *this;} /** *

The time when a deployment of the component was last attempted.

*/ inline const Aws::Utils::DateTime& GetLastDeploymentAttemptedAt() const{ return m_lastDeploymentAttemptedAt; } /** *

The time when a deployment of the component was last attempted.

*/ inline bool LastDeploymentAttemptedAtHasBeenSet() const { return m_lastDeploymentAttemptedAtHasBeenSet; } /** *

The time when a deployment of the component was last attempted.

*/ inline void SetLastDeploymentAttemptedAt(const Aws::Utils::DateTime& value) { m_lastDeploymentAttemptedAtHasBeenSet = true; m_lastDeploymentAttemptedAt = value; } /** *

The time when a deployment of the component was last attempted.

*/ inline void SetLastDeploymentAttemptedAt(Aws::Utils::DateTime&& value) { m_lastDeploymentAttemptedAtHasBeenSet = true; m_lastDeploymentAttemptedAt = std::move(value); } /** *

The time when a deployment of the component was last attempted.

*/ inline ComponentSummary& WithLastDeploymentAttemptedAt(const Aws::Utils::DateTime& value) { SetLastDeploymentAttemptedAt(value); return *this;} /** *

The time when a deployment of the component was last attempted.

*/ inline ComponentSummary& WithLastDeploymentAttemptedAt(Aws::Utils::DateTime&& value) { SetLastDeploymentAttemptedAt(std::move(value)); return *this;} /** *

The time when the component was last deployed successfully.

*/ inline const Aws::Utils::DateTime& GetLastDeploymentSucceededAt() const{ return m_lastDeploymentSucceededAt; } /** *

The time when the component was last deployed successfully.

*/ inline bool LastDeploymentSucceededAtHasBeenSet() const { return m_lastDeploymentSucceededAtHasBeenSet; } /** *

The time when the component was last deployed successfully.

*/ inline void SetLastDeploymentSucceededAt(const Aws::Utils::DateTime& value) { m_lastDeploymentSucceededAtHasBeenSet = true; m_lastDeploymentSucceededAt = value; } /** *

The time when the component was last deployed successfully.

*/ inline void SetLastDeploymentSucceededAt(Aws::Utils::DateTime&& value) { m_lastDeploymentSucceededAtHasBeenSet = true; m_lastDeploymentSucceededAt = std::move(value); } /** *

The time when the component was last deployed successfully.

*/ inline ComponentSummary& WithLastDeploymentSucceededAt(const Aws::Utils::DateTime& value) { SetLastDeploymentSucceededAt(value); return *this;} /** *

The time when the component was last deployed successfully.

*/ inline ComponentSummary& WithLastDeploymentSucceededAt(Aws::Utils::DateTime&& value) { SetLastDeploymentSucceededAt(std::move(value)); return *this;} /** *

The time when the component was last modified.

*/ inline const Aws::Utils::DateTime& GetLastModifiedAt() const{ return m_lastModifiedAt; } /** *

The time when the component was last modified.

*/ inline bool LastModifiedAtHasBeenSet() const { return m_lastModifiedAtHasBeenSet; } /** *

The time when the component was last modified.

*/ inline void SetLastModifiedAt(const Aws::Utils::DateTime& value) { m_lastModifiedAtHasBeenSet = true; m_lastModifiedAt = value; } /** *

The time when the component was last modified.

*/ inline void SetLastModifiedAt(Aws::Utils::DateTime&& value) { m_lastModifiedAtHasBeenSet = true; m_lastModifiedAt = std::move(value); } /** *

The time when the component was last modified.

*/ inline ComponentSummary& WithLastModifiedAt(const Aws::Utils::DateTime& value) { SetLastModifiedAt(value); return *this;} /** *

The time when the component was last modified.

*/ inline ComponentSummary& WithLastModifiedAt(Aws::Utils::DateTime&& value) { SetLastModifiedAt(std::move(value)); return *this;} /** *

The ID of the last successful deployment of this component.

*/ inline const Aws::String& GetLastSucceededDeploymentId() const{ return m_lastSucceededDeploymentId; } /** *

The ID of the last successful deployment of this component.

*/ inline bool LastSucceededDeploymentIdHasBeenSet() const { return m_lastSucceededDeploymentIdHasBeenSet; } /** *

The ID of the last successful deployment of this component.

*/ inline void SetLastSucceededDeploymentId(const Aws::String& value) { m_lastSucceededDeploymentIdHasBeenSet = true; m_lastSucceededDeploymentId = value; } /** *

The ID of the last successful deployment of this component.

*/ inline void SetLastSucceededDeploymentId(Aws::String&& value) { m_lastSucceededDeploymentIdHasBeenSet = true; m_lastSucceededDeploymentId = std::move(value); } /** *

The ID of the last successful deployment of this component.

*/ inline void SetLastSucceededDeploymentId(const char* value) { m_lastSucceededDeploymentIdHasBeenSet = true; m_lastSucceededDeploymentId.assign(value); } /** *

The ID of the last successful deployment of this component.

*/ inline ComponentSummary& WithLastSucceededDeploymentId(const Aws::String& value) { SetLastSucceededDeploymentId(value); return *this;} /** *

The ID of the last successful deployment of this component.

*/ inline ComponentSummary& WithLastSucceededDeploymentId(Aws::String&& value) { SetLastSucceededDeploymentId(std::move(value)); return *this;} /** *

The ID of the last successful deployment of this component.

*/ inline ComponentSummary& WithLastSucceededDeploymentId(const char* value) { SetLastSucceededDeploymentId(value); return *this;} /** *

The name of the component.

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

The name of the component.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the component.

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

The name of the component.

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

The name of the component.

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

The name of the component.

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

The name of the component.

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

The name of the component.

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

The name of the service instance that this component is attached to. Provided * when a component is attached to a service instance.

*/ inline const Aws::String& GetServiceInstanceName() const{ return m_serviceInstanceName; } /** *

The name of the service instance that this component is attached to. Provided * when a component is attached to a service instance.

*/ inline bool ServiceInstanceNameHasBeenSet() const { return m_serviceInstanceNameHasBeenSet; } /** *

The name of the service instance that this component is attached to. Provided * when a component is attached to a service instance.

*/ inline void SetServiceInstanceName(const Aws::String& value) { m_serviceInstanceNameHasBeenSet = true; m_serviceInstanceName = value; } /** *

The name of the service instance that this component is attached to. Provided * when a component is attached to a service instance.

*/ inline void SetServiceInstanceName(Aws::String&& value) { m_serviceInstanceNameHasBeenSet = true; m_serviceInstanceName = std::move(value); } /** *

The name of the service instance that this component is attached to. Provided * when a component is attached to a service instance.

*/ inline void SetServiceInstanceName(const char* value) { m_serviceInstanceNameHasBeenSet = true; m_serviceInstanceName.assign(value); } /** *

The name of the service instance that this component is attached to. Provided * when a component is attached to a service instance.

*/ inline ComponentSummary& WithServiceInstanceName(const Aws::String& value) { SetServiceInstanceName(value); return *this;} /** *

The name of the service instance that this component is attached to. Provided * when a component is attached to a service instance.

*/ inline ComponentSummary& WithServiceInstanceName(Aws::String&& value) { SetServiceInstanceName(std::move(value)); return *this;} /** *

The name of the service instance that this component is attached to. Provided * when a component is attached to a service instance.

*/ inline ComponentSummary& WithServiceInstanceName(const char* value) { SetServiceInstanceName(value); return *this;} /** *

The name of the service that serviceInstanceName is associated * with. Provided when a component is attached to a service instance.

*/ inline const Aws::String& GetServiceName() const{ return m_serviceName; } /** *

The name of the service that serviceInstanceName is associated * with. Provided when a component is attached to a service instance.

*/ inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; } /** *

The name of the service that serviceInstanceName is associated * with. Provided when a component is attached to a service instance.

*/ inline void SetServiceName(const Aws::String& value) { m_serviceNameHasBeenSet = true; m_serviceName = value; } /** *

The name of the service that serviceInstanceName is associated * with. Provided when a component is attached to a service instance.

*/ inline void SetServiceName(Aws::String&& value) { m_serviceNameHasBeenSet = true; m_serviceName = std::move(value); } /** *

The name of the service that serviceInstanceName is associated * with. Provided when a component is attached to a service instance.

*/ inline void SetServiceName(const char* value) { m_serviceNameHasBeenSet = true; m_serviceName.assign(value); } /** *

The name of the service that serviceInstanceName is associated * with. Provided when a component is attached to a service instance.

*/ inline ComponentSummary& WithServiceName(const Aws::String& value) { SetServiceName(value); return *this;} /** *

The name of the service that serviceInstanceName is associated * with. Provided when a component is attached to a service instance.

*/ inline ComponentSummary& WithServiceName(Aws::String&& value) { SetServiceName(std::move(value)); return *this;} /** *

The name of the service that serviceInstanceName is associated * with. Provided when a component is attached to a service instance.

*/ inline ComponentSummary& WithServiceName(const char* value) { SetServiceName(value); return *this;} private: Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; DeploymentStatus m_deploymentStatus; bool m_deploymentStatusHasBeenSet = false; Aws::String m_deploymentStatusMessage; bool m_deploymentStatusMessageHasBeenSet = false; Aws::String m_environmentName; bool m_environmentNameHasBeenSet = false; Aws::String m_lastAttemptedDeploymentId; bool m_lastAttemptedDeploymentIdHasBeenSet = false; Aws::Utils::DateTime m_lastDeploymentAttemptedAt; bool m_lastDeploymentAttemptedAtHasBeenSet = false; Aws::Utils::DateTime m_lastDeploymentSucceededAt; bool m_lastDeploymentSucceededAtHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedAt; bool m_lastModifiedAtHasBeenSet = false; Aws::String m_lastSucceededDeploymentId; bool m_lastSucceededDeploymentIdHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_serviceInstanceName; bool m_serviceInstanceNameHasBeenSet = false; Aws::String m_serviceName; bool m_serviceNameHasBeenSet = false; }; } // namespace Model } // namespace Proton } // namespace Aws