AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
AwsWafRuleGroupDetails.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/securityhub/SecurityHub_EXPORTS.h>
10#include <aws/securityhub/model/AwsWafRuleGroupRulesDetails.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace SecurityHub {
22namespace Model {
23
32 public:
33 AWS_SECURITYHUB_API AwsWafRuleGroupDetails() = default;
34 AWS_SECURITYHUB_API AwsWafRuleGroupDetails(Aws::Utils::Json::JsonView jsonValue);
36 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetMetricName() const { return m_metricName; }
43 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
44 template <typename MetricNameT = Aws::String>
45 void SetMetricName(MetricNameT&& value) {
46 m_metricNameHasBeenSet = true;
47 m_metricName = std::forward<MetricNameT>(value);
48 }
49 template <typename MetricNameT = Aws::String>
50 AwsWafRuleGroupDetails& WithMetricName(MetricNameT&& value) {
51 SetMetricName(std::forward<MetricNameT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetName() const { return m_name; }
61 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
62 template <typename NameT = Aws::String>
63 void SetName(NameT&& value) {
64 m_nameHasBeenSet = true;
65 m_name = std::forward<NameT>(value);
66 }
67 template <typename NameT = Aws::String>
69 SetName(std::forward<NameT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::String& GetRuleGroupId() const { return m_ruleGroupId; }
79 inline bool RuleGroupIdHasBeenSet() const { return m_ruleGroupIdHasBeenSet; }
80 template <typename RuleGroupIdT = Aws::String>
81 void SetRuleGroupId(RuleGroupIdT&& value) {
82 m_ruleGroupIdHasBeenSet = true;
83 m_ruleGroupId = std::forward<RuleGroupIdT>(value);
84 }
85 template <typename RuleGroupIdT = Aws::String>
86 AwsWafRuleGroupDetails& WithRuleGroupId(RuleGroupIdT&& value) {
87 SetRuleGroupId(std::forward<RuleGroupIdT>(value));
88 return *this;
89 }
91
93
97 inline const Aws::Vector<AwsWafRuleGroupRulesDetails>& GetRules() const { return m_rules; }
98 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
99 template <typename RulesT = Aws::Vector<AwsWafRuleGroupRulesDetails>>
100 void SetRules(RulesT&& value) {
101 m_rulesHasBeenSet = true;
102 m_rules = std::forward<RulesT>(value);
103 }
104 template <typename RulesT = Aws::Vector<AwsWafRuleGroupRulesDetails>>
106 SetRules(std::forward<RulesT>(value));
107 return *this;
108 }
109 template <typename RulesT = AwsWafRuleGroupRulesDetails>
111 m_rulesHasBeenSet = true;
112 m_rules.emplace_back(std::forward<RulesT>(value));
113 return *this;
114 }
116 private:
117 Aws::String m_metricName;
118
119 Aws::String m_name;
120
121 Aws::String m_ruleGroupId;
122
124 bool m_metricNameHasBeenSet = false;
125 bool m_nameHasBeenSet = false;
126 bool m_ruleGroupIdHasBeenSet = false;
127 bool m_rulesHasBeenSet = false;
128};
129
130} // namespace Model
131} // namespace SecurityHub
132} // namespace Aws
AwsWafRuleGroupDetails & AddRules(RulesT &&value)
AWS_SECURITYHUB_API AwsWafRuleGroupDetails(Aws::Utils::Json::JsonView jsonValue)
AWS_SECURITYHUB_API AwsWafRuleGroupDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< AwsWafRuleGroupRulesDetails > & GetRules() const
AwsWafRuleGroupDetails & WithRules(RulesT &&value)
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AwsWafRuleGroupDetails & WithMetricName(MetricNameT &&value)
AWS_SECURITYHUB_API AwsWafRuleGroupDetails()=default
AwsWafRuleGroupDetails & WithRuleGroupId(RuleGroupIdT &&value)
AwsWafRuleGroupDetails & WithName(NameT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue