AWS SDK for C++

AWS SDK for C++ Version 1.11.685

Loading...
Searching...
No Matches
PillarMetric.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/wellarchitected/WellArchitected_EXPORTS.h>
11#include <aws/wellarchitected/model/QuestionMetric.h>
12#include <aws/wellarchitected/model/Risk.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace WellArchitected {
24namespace Model {
25
32 public:
33 AWS_WELLARCHITECTED_API PillarMetric() = default;
34 AWS_WELLARCHITECTED_API PillarMetric(Aws::Utils::Json::JsonView jsonValue);
35 AWS_WELLARCHITECTED_API PillarMetric& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_WELLARCHITECTED_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
40 inline const Aws::String& GetPillarId() const { return m_pillarId; }
41 inline bool PillarIdHasBeenSet() const { return m_pillarIdHasBeenSet; }
42 template <typename PillarIdT = Aws::String>
43 void SetPillarId(PillarIdT&& value) {
44 m_pillarIdHasBeenSet = true;
45 m_pillarId = std::forward<PillarIdT>(value);
46 }
47 template <typename PillarIdT = Aws::String>
48 PillarMetric& WithPillarId(PillarIdT&& value) {
49 SetPillarId(std::forward<PillarIdT>(value));
50 return *this;
51 }
53
55
56 inline const Aws::Map<Risk, int>& GetRiskCounts() const { return m_riskCounts; }
57 inline bool RiskCountsHasBeenSet() const { return m_riskCountsHasBeenSet; }
58 template <typename RiskCountsT = Aws::Map<Risk, int>>
59 void SetRiskCounts(RiskCountsT&& value) {
60 m_riskCountsHasBeenSet = true;
61 m_riskCounts = std::forward<RiskCountsT>(value);
62 }
63 template <typename RiskCountsT = Aws::Map<Risk, int>>
64 PillarMetric& WithRiskCounts(RiskCountsT&& value) {
65 SetRiskCounts(std::forward<RiskCountsT>(value));
66 return *this;
67 }
68 inline PillarMetric& AddRiskCounts(Risk key, int value) {
69 m_riskCountsHasBeenSet = true;
70 m_riskCounts.emplace(key, value);
71 return *this;
72 }
74
76
79 inline const Aws::Vector<QuestionMetric>& GetQuestions() const { return m_questions; }
80 inline bool QuestionsHasBeenSet() const { return m_questionsHasBeenSet; }
81 template <typename QuestionsT = Aws::Vector<QuestionMetric>>
82 void SetQuestions(QuestionsT&& value) {
83 m_questionsHasBeenSet = true;
84 m_questions = std::forward<QuestionsT>(value);
85 }
86 template <typename QuestionsT = Aws::Vector<QuestionMetric>>
87 PillarMetric& WithQuestions(QuestionsT&& value) {
88 SetQuestions(std::forward<QuestionsT>(value));
89 return *this;
90 }
91 template <typename QuestionsT = QuestionMetric>
92 PillarMetric& AddQuestions(QuestionsT&& value) {
93 m_questionsHasBeenSet = true;
94 m_questions.emplace_back(std::forward<QuestionsT>(value));
95 return *this;
96 }
98 private:
99 Aws::String m_pillarId;
100 bool m_pillarIdHasBeenSet = false;
101
102 Aws::Map<Risk, int> m_riskCounts;
103 bool m_riskCountsHasBeenSet = false;
104
105 Aws::Vector<QuestionMetric> m_questions;
106 bool m_questionsHasBeenSet = false;
107};
108
109} // namespace Model
110} // namespace WellArchitected
111} // namespace Aws
const Aws::String & GetPillarId() const
AWS_WELLARCHITECTED_API PillarMetric & operator=(Aws::Utils::Json::JsonView jsonValue)
PillarMetric & WithRiskCounts(RiskCountsT &&value)
PillarMetric & WithQuestions(QuestionsT &&value)
void SetRiskCounts(RiskCountsT &&value)
AWS_WELLARCHITECTED_API Aws::Utils::Json::JsonValue Jsonize() const
PillarMetric & AddQuestions(QuestionsT &&value)
PillarMetric & WithPillarId(PillarIdT &&value)
void SetQuestions(QuestionsT &&value)
AWS_WELLARCHITECTED_API PillarMetric()=default
PillarMetric & AddRiskCounts(Risk key, int value)
const Aws::Map< Risk, int > & GetRiskCounts() const
const Aws::Vector< QuestionMetric > & GetQuestions() const
AWS_WELLARCHITECTED_API PillarMetric(Aws::Utils::Json::JsonView jsonValue)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue