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

Recommendation information to help you remediate detected anomalous behavior * that generated an insight.

See Also:

AWS * API Reference

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

A description of the problem.

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

A description of the problem.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

A description of the problem.

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

A description of the problem.

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

A description of the problem.

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

A description of the problem.

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

A description of the problem.

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

A description of the problem.

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

A hyperlink to information to help you address the problem.

*/ inline const Aws::String& GetLink() const{ return m_link; } /** *

A hyperlink to information to help you address the problem.

*/ inline bool LinkHasBeenSet() const { return m_linkHasBeenSet; } /** *

A hyperlink to information to help you address the problem.

*/ inline void SetLink(const Aws::String& value) { m_linkHasBeenSet = true; m_link = value; } /** *

A hyperlink to information to help you address the problem.

*/ inline void SetLink(Aws::String&& value) { m_linkHasBeenSet = true; m_link = std::move(value); } /** *

A hyperlink to information to help you address the problem.

*/ inline void SetLink(const char* value) { m_linkHasBeenSet = true; m_link.assign(value); } /** *

A hyperlink to information to help you address the problem.

*/ inline Recommendation& WithLink(const Aws::String& value) { SetLink(value); return *this;} /** *

A hyperlink to information to help you address the problem.

*/ inline Recommendation& WithLink(Aws::String&& value) { SetLink(std::move(value)); return *this;} /** *

A hyperlink to information to help you address the problem.

*/ inline Recommendation& WithLink(const char* value) { SetLink(value); return *this;} /** *

The name of the recommendation.

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

The name of the recommendation.

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

The name of the recommendation.

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

The name of the recommendation.

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

The name of the recommendation.

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

The name of the recommendation.

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

The name of the recommendation.

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

The name of the recommendation.

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

The reason DevOps Guru flagged the anomalous behavior as a problem.

*/ inline const Aws::String& GetReason() const{ return m_reason; } /** *

The reason DevOps Guru flagged the anomalous behavior as a problem.

*/ inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; } /** *

The reason DevOps Guru flagged the anomalous behavior as a problem.

*/ inline void SetReason(const Aws::String& value) { m_reasonHasBeenSet = true; m_reason = value; } /** *

The reason DevOps Guru flagged the anomalous behavior as a problem.

*/ inline void SetReason(Aws::String&& value) { m_reasonHasBeenSet = true; m_reason = std::move(value); } /** *

The reason DevOps Guru flagged the anomalous behavior as a problem.

*/ inline void SetReason(const char* value) { m_reasonHasBeenSet = true; m_reason.assign(value); } /** *

The reason DevOps Guru flagged the anomalous behavior as a problem.

*/ inline Recommendation& WithReason(const Aws::String& value) { SetReason(value); return *this;} /** *

The reason DevOps Guru flagged the anomalous behavior as a problem.

*/ inline Recommendation& WithReason(Aws::String&& value) { SetReason(std::move(value)); return *this;} /** *

The reason DevOps Guru flagged the anomalous behavior as a problem.

*/ inline Recommendation& WithReason(const char* value) { SetReason(value); return *this;} /** *

Events that are related to the problem. Use these events to learn more about * what's happening and to help address the issue.

*/ inline const Aws::Vector& GetRelatedEvents() const{ return m_relatedEvents; } /** *

Events that are related to the problem. Use these events to learn more about * what's happening and to help address the issue.

*/ inline bool RelatedEventsHasBeenSet() const { return m_relatedEventsHasBeenSet; } /** *

Events that are related to the problem. Use these events to learn more about * what's happening and to help address the issue.

*/ inline void SetRelatedEvents(const Aws::Vector& value) { m_relatedEventsHasBeenSet = true; m_relatedEvents = value; } /** *

Events that are related to the problem. Use these events to learn more about * what's happening and to help address the issue.

*/ inline void SetRelatedEvents(Aws::Vector&& value) { m_relatedEventsHasBeenSet = true; m_relatedEvents = std::move(value); } /** *

Events that are related to the problem. Use these events to learn more about * what's happening and to help address the issue.

*/ inline Recommendation& WithRelatedEvents(const Aws::Vector& value) { SetRelatedEvents(value); return *this;} /** *

Events that are related to the problem. Use these events to learn more about * what's happening and to help address the issue.

*/ inline Recommendation& WithRelatedEvents(Aws::Vector&& value) { SetRelatedEvents(std::move(value)); return *this;} /** *

Events that are related to the problem. Use these events to learn more about * what's happening and to help address the issue.

*/ inline Recommendation& AddRelatedEvents(const RecommendationRelatedEvent& value) { m_relatedEventsHasBeenSet = true; m_relatedEvents.push_back(value); return *this; } /** *

Events that are related to the problem. Use these events to learn more about * what's happening and to help address the issue.

*/ inline Recommendation& AddRelatedEvents(RecommendationRelatedEvent&& value) { m_relatedEventsHasBeenSet = true; m_relatedEvents.push_back(std::move(value)); return *this; } /** *

Anomalies that are related to the problem. Use these Anomalies to learn more * about what's happening and to help address the issue.

*/ inline const Aws::Vector& GetRelatedAnomalies() const{ return m_relatedAnomalies; } /** *

Anomalies that are related to the problem. Use these Anomalies to learn more * about what's happening and to help address the issue.

*/ inline bool RelatedAnomaliesHasBeenSet() const { return m_relatedAnomaliesHasBeenSet; } /** *

Anomalies that are related to the problem. Use these Anomalies to learn more * about what's happening and to help address the issue.

*/ inline void SetRelatedAnomalies(const Aws::Vector& value) { m_relatedAnomaliesHasBeenSet = true; m_relatedAnomalies = value; } /** *

Anomalies that are related to the problem. Use these Anomalies to learn more * about what's happening and to help address the issue.

*/ inline void SetRelatedAnomalies(Aws::Vector&& value) { m_relatedAnomaliesHasBeenSet = true; m_relatedAnomalies = std::move(value); } /** *

Anomalies that are related to the problem. Use these Anomalies to learn more * about what's happening and to help address the issue.

*/ inline Recommendation& WithRelatedAnomalies(const Aws::Vector& value) { SetRelatedAnomalies(value); return *this;} /** *

Anomalies that are related to the problem. Use these Anomalies to learn more * about what's happening and to help address the issue.

*/ inline Recommendation& WithRelatedAnomalies(Aws::Vector&& value) { SetRelatedAnomalies(std::move(value)); return *this;} /** *

Anomalies that are related to the problem. Use these Anomalies to learn more * about what's happening and to help address the issue.

*/ inline Recommendation& AddRelatedAnomalies(const RecommendationRelatedAnomaly& value) { m_relatedAnomaliesHasBeenSet = true; m_relatedAnomalies.push_back(value); return *this; } /** *

Anomalies that are related to the problem. Use these Anomalies to learn more * about what's happening and to help address the issue.

*/ inline Recommendation& AddRelatedAnomalies(RecommendationRelatedAnomaly&& value) { m_relatedAnomaliesHasBeenSet = true; m_relatedAnomalies.push_back(std::move(value)); return *this; } /** *

The category type of the recommendation.

*/ inline const Aws::String& GetCategory() const{ return m_category; } /** *

The category type of the recommendation.

*/ inline bool CategoryHasBeenSet() const { return m_categoryHasBeenSet; } /** *

The category type of the recommendation.

*/ inline void SetCategory(const Aws::String& value) { m_categoryHasBeenSet = true; m_category = value; } /** *

The category type of the recommendation.

*/ inline void SetCategory(Aws::String&& value) { m_categoryHasBeenSet = true; m_category = std::move(value); } /** *

The category type of the recommendation.

*/ inline void SetCategory(const char* value) { m_categoryHasBeenSet = true; m_category.assign(value); } /** *

The category type of the recommendation.

*/ inline Recommendation& WithCategory(const Aws::String& value) { SetCategory(value); return *this;} /** *

The category type of the recommendation.

*/ inline Recommendation& WithCategory(Aws::String&& value) { SetCategory(std::move(value)); return *this;} /** *

The category type of the recommendation.

*/ inline Recommendation& WithCategory(const char* value) { SetCategory(value); return *this;} private: Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_link; bool m_linkHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_reason; bool m_reasonHasBeenSet = false; Aws::Vector m_relatedEvents; bool m_relatedEventsHasBeenSet = false; Aws::Vector m_relatedAnomalies; bool m_relatedAnomaliesHasBeenSet = false; Aws::String m_category; bool m_categoryHasBeenSet = false; }; } // namespace Model } // namespace DevOpsGuru } // namespace Aws