/** * 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 ECS { namespace Model { /** *

An object representing the health status of the container * instance.

See Also:

AWS * API Reference

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

The overall health status of the container instance. This is an aggregate * status of all container instance health checks.

*/ inline const InstanceHealthCheckState& GetOverallStatus() const{ return m_overallStatus; } /** *

The overall health status of the container instance. This is an aggregate * status of all container instance health checks.

*/ inline bool OverallStatusHasBeenSet() const { return m_overallStatusHasBeenSet; } /** *

The overall health status of the container instance. This is an aggregate * status of all container instance health checks.

*/ inline void SetOverallStatus(const InstanceHealthCheckState& value) { m_overallStatusHasBeenSet = true; m_overallStatus = value; } /** *

The overall health status of the container instance. This is an aggregate * status of all container instance health checks.

*/ inline void SetOverallStatus(InstanceHealthCheckState&& value) { m_overallStatusHasBeenSet = true; m_overallStatus = std::move(value); } /** *

The overall health status of the container instance. This is an aggregate * status of all container instance health checks.

*/ inline ContainerInstanceHealthStatus& WithOverallStatus(const InstanceHealthCheckState& value) { SetOverallStatus(value); return *this;} /** *

The overall health status of the container instance. This is an aggregate * status of all container instance health checks.

*/ inline ContainerInstanceHealthStatus& WithOverallStatus(InstanceHealthCheckState&& value) { SetOverallStatus(std::move(value)); return *this;} /** *

An array of objects representing the details of the container instance health * status.

*/ inline const Aws::Vector& GetDetails() const{ return m_details; } /** *

An array of objects representing the details of the container instance health * status.

*/ inline bool DetailsHasBeenSet() const { return m_detailsHasBeenSet; } /** *

An array of objects representing the details of the container instance health * status.

*/ inline void SetDetails(const Aws::Vector& value) { m_detailsHasBeenSet = true; m_details = value; } /** *

An array of objects representing the details of the container instance health * status.

*/ inline void SetDetails(Aws::Vector&& value) { m_detailsHasBeenSet = true; m_details = std::move(value); } /** *

An array of objects representing the details of the container instance health * status.

*/ inline ContainerInstanceHealthStatus& WithDetails(const Aws::Vector& value) { SetDetails(value); return *this;} /** *

An array of objects representing the details of the container instance health * status.

*/ inline ContainerInstanceHealthStatus& WithDetails(Aws::Vector&& value) { SetDetails(std::move(value)); return *this;} /** *

An array of objects representing the details of the container instance health * status.

*/ inline ContainerInstanceHealthStatus& AddDetails(const InstanceHealthCheckResult& value) { m_detailsHasBeenSet = true; m_details.push_back(value); return *this; } /** *

An array of objects representing the details of the container instance health * status.

*/ inline ContainerInstanceHealthStatus& AddDetails(InstanceHealthCheckResult&& value) { m_detailsHasBeenSet = true; m_details.push_back(std::move(value)); return *this; } private: InstanceHealthCheckState m_overallStatus; bool m_overallStatusHasBeenSet = false; Aws::Vector m_details; bool m_detailsHasBeenSet = false; }; } // namespace Model } // namespace ECS } // namespace Aws