AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
PillarMetric.h
1
6#pragma once
7#include <aws/wellarchitected/WellArchitected_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/wellarchitected/model/Risk.h>
12#include <aws/wellarchitected/model/QuestionMetric.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace WellArchitected
26{
27namespace Model
28{
29
36 {
37 public:
38 AWS_WELLARCHITECTED_API PillarMetric() = default;
39 AWS_WELLARCHITECTED_API PillarMetric(Aws::Utils::Json::JsonView jsonValue);
40 AWS_WELLARCHITECTED_API PillarMetric& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_WELLARCHITECTED_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
46 inline const Aws::String& GetPillarId() const { return m_pillarId; }
47 inline bool PillarIdHasBeenSet() const { return m_pillarIdHasBeenSet; }
48 template<typename PillarIdT = Aws::String>
49 void SetPillarId(PillarIdT&& value) { m_pillarIdHasBeenSet = true; m_pillarId = std::forward<PillarIdT>(value); }
50 template<typename PillarIdT = Aws::String>
51 PillarMetric& WithPillarId(PillarIdT&& value) { SetPillarId(std::forward<PillarIdT>(value)); return *this;}
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) { m_riskCountsHasBeenSet = true; m_riskCounts = std::forward<RiskCountsT>(value); }
60 template<typename RiskCountsT = Aws::Map<Risk, int>>
61 PillarMetric& WithRiskCounts(RiskCountsT&& value) { SetRiskCounts(std::forward<RiskCountsT>(value)); return *this;}
62 inline PillarMetric& AddRiskCounts(Risk key, int value) {
63 m_riskCountsHasBeenSet = true; m_riskCounts.emplace(key, value); return *this;
64 }
66
68
71 inline const Aws::Vector<QuestionMetric>& GetQuestions() const { return m_questions; }
72 inline bool QuestionsHasBeenSet() const { return m_questionsHasBeenSet; }
73 template<typename QuestionsT = Aws::Vector<QuestionMetric>>
74 void SetQuestions(QuestionsT&& value) { m_questionsHasBeenSet = true; m_questions = std::forward<QuestionsT>(value); }
75 template<typename QuestionsT = Aws::Vector<QuestionMetric>>
76 PillarMetric& WithQuestions(QuestionsT&& value) { SetQuestions(std::forward<QuestionsT>(value)); return *this;}
77 template<typename QuestionsT = QuestionMetric>
78 PillarMetric& AddQuestions(QuestionsT&& value) { m_questionsHasBeenSet = true; m_questions.emplace_back(std::forward<QuestionsT>(value)); return *this; }
80 private:
81
82 Aws::String m_pillarId;
83 bool m_pillarIdHasBeenSet = false;
84
85 Aws::Map<Risk, int> m_riskCounts;
86 bool m_riskCountsHasBeenSet = false;
87
89 bool m_questionsHasBeenSet = false;
90 };
91
92} // namespace Model
93} // namespace WellArchitected
94} // 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