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

Represents the health of an Amazon Web Services service.

See * Also:

AWS * API Reference

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

The name of the Amazon Web Services service.

*/ inline const ServiceName& GetServiceName() const{ return m_serviceName; } /** *

The name of the Amazon Web Services service.

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

The name of the Amazon Web Services service.

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

The name of the Amazon Web Services service.

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

The name of the Amazon Web Services service.

*/ inline ServiceHealth& WithServiceName(const ServiceName& value) { SetServiceName(value); return *this;} /** *

The name of the Amazon Web Services service.

*/ inline ServiceHealth& WithServiceName(ServiceName&& value) { SetServiceName(std::move(value)); return *this;} /** *

Represents the health of an Amazon Web Services service. This is a * ServiceInsightHealth that contains the number of open proactive and * reactive insights for this service.

*/ inline const ServiceInsightHealth& GetInsight() const{ return m_insight; } /** *

Represents the health of an Amazon Web Services service. This is a * ServiceInsightHealth that contains the number of open proactive and * reactive insights for this service.

*/ inline bool InsightHasBeenSet() const { return m_insightHasBeenSet; } /** *

Represents the health of an Amazon Web Services service. This is a * ServiceInsightHealth that contains the number of open proactive and * reactive insights for this service.

*/ inline void SetInsight(const ServiceInsightHealth& value) { m_insightHasBeenSet = true; m_insight = value; } /** *

Represents the health of an Amazon Web Services service. This is a * ServiceInsightHealth that contains the number of open proactive and * reactive insights for this service.

*/ inline void SetInsight(ServiceInsightHealth&& value) { m_insightHasBeenSet = true; m_insight = std::move(value); } /** *

Represents the health of an Amazon Web Services service. This is a * ServiceInsightHealth that contains the number of open proactive and * reactive insights for this service.

*/ inline ServiceHealth& WithInsight(const ServiceInsightHealth& value) { SetInsight(value); return *this;} /** *

Represents the health of an Amazon Web Services service. This is a * ServiceInsightHealth that contains the number of open proactive and * reactive insights for this service.

*/ inline ServiceHealth& WithInsight(ServiceInsightHealth&& value) { SetInsight(std::move(value)); return *this;} /** *

Number of resources that DevOps Guru is monitoring in an analyzed Amazon Web * Services service.

*/ inline long long GetAnalyzedResourceCount() const{ return m_analyzedResourceCount; } /** *

Number of resources that DevOps Guru is monitoring in an analyzed Amazon Web * Services service.

*/ inline bool AnalyzedResourceCountHasBeenSet() const { return m_analyzedResourceCountHasBeenSet; } /** *

Number of resources that DevOps Guru is monitoring in an analyzed Amazon Web * Services service.

*/ inline void SetAnalyzedResourceCount(long long value) { m_analyzedResourceCountHasBeenSet = true; m_analyzedResourceCount = value; } /** *

Number of resources that DevOps Guru is monitoring in an analyzed Amazon Web * Services service.

*/ inline ServiceHealth& WithAnalyzedResourceCount(long long value) { SetAnalyzedResourceCount(value); return *this;} private: ServiceName m_serviceName; bool m_serviceNameHasBeenSet = false; ServiceInsightHealth m_insight; bool m_insightHasBeenSet = false; long long m_analyzedResourceCount; bool m_analyzedResourceCountHasBeenSet = false; }; } // namespace Model } // namespace DevOpsGuru } // namespace Aws