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

The overall resiliency score, returned as an object that includes the * disruption score and outage score.

See Also:

AWS * API Reference

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

The disruption score for a valid key.

*/ inline const Aws::Map& GetDisruptionScore() const{ return m_disruptionScore; } /** *

The disruption score for a valid key.

*/ inline bool DisruptionScoreHasBeenSet() const { return m_disruptionScoreHasBeenSet; } /** *

The disruption score for a valid key.

*/ inline void SetDisruptionScore(const Aws::Map& value) { m_disruptionScoreHasBeenSet = true; m_disruptionScore = value; } /** *

The disruption score for a valid key.

*/ inline void SetDisruptionScore(Aws::Map&& value) { m_disruptionScoreHasBeenSet = true; m_disruptionScore = std::move(value); } /** *

The disruption score for a valid key.

*/ inline ResiliencyScore& WithDisruptionScore(const Aws::Map& value) { SetDisruptionScore(value); return *this;} /** *

The disruption score for a valid key.

*/ inline ResiliencyScore& WithDisruptionScore(Aws::Map&& value) { SetDisruptionScore(std::move(value)); return *this;} /** *

The disruption score for a valid key.

*/ inline ResiliencyScore& AddDisruptionScore(const DisruptionType& key, double value) { m_disruptionScoreHasBeenSet = true; m_disruptionScore.emplace(key, value); return *this; } /** *

The disruption score for a valid key.

*/ inline ResiliencyScore& AddDisruptionScore(DisruptionType&& key, double value) { m_disruptionScoreHasBeenSet = true; m_disruptionScore.emplace(std::move(key), value); return *this; } /** *

The outage score for a valid key.

*/ inline double GetScore() const{ return m_score; } /** *

The outage score for a valid key.

*/ inline bool ScoreHasBeenSet() const { return m_scoreHasBeenSet; } /** *

The outage score for a valid key.

*/ inline void SetScore(double value) { m_scoreHasBeenSet = true; m_score = value; } /** *

The outage score for a valid key.

*/ inline ResiliencyScore& WithScore(double value) { SetScore(value); return *this;} private: Aws::Map m_disruptionScore; bool m_disruptionScoreHasBeenSet = false; double m_score; bool m_scoreHasBeenSet = false; }; } // namespace Model } // namespace ResilienceHub } // namespace Aws