AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
RuleGroup.h
1
6#pragma once
7#include <aws/wafv2/WAFV2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/wafv2/model/VisibilityConfig.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/wafv2/model/Rule.h>
13#include <aws/wafv2/model/CustomResponseBody.h>
14#include <aws/wafv2/model/LabelSummary.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace WAFV2
28{
29namespace Model
30{
31
42 {
43 public:
44 AWS_WAFV2_API RuleGroup();
45 AWS_WAFV2_API RuleGroup(Aws::Utils::Json::JsonView jsonValue);
47 AWS_WAFV2_API Aws::Utils::Json::JsonValue Jsonize() const;
48
49
51
55 inline const Aws::String& GetName() const{ return m_name; }
56 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
57 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
58 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
59 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
60 inline RuleGroup& WithName(const Aws::String& value) { SetName(value); return *this;}
61 inline RuleGroup& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
62 inline RuleGroup& WithName(const char* value) { SetName(value); return *this;}
64
66
71 inline const Aws::String& GetId() const{ return m_id; }
72 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
73 inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
74 inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
75 inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
76 inline RuleGroup& WithId(const Aws::String& value) { SetId(value); return *this;}
77 inline RuleGroup& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
78 inline RuleGroup& WithId(const char* value) { SetId(value); return *this;}
80
82
97 inline long long GetCapacity() const{ return m_capacity; }
98 inline bool CapacityHasBeenSet() const { return m_capacityHasBeenSet; }
99 inline void SetCapacity(long long value) { m_capacityHasBeenSet = true; m_capacity = value; }
100 inline RuleGroup& WithCapacity(long long value) { SetCapacity(value); return *this;}
102
104
107 inline const Aws::String& GetARN() const{ return m_aRN; }
108 inline bool ARNHasBeenSet() const { return m_aRNHasBeenSet; }
109 inline void SetARN(const Aws::String& value) { m_aRNHasBeenSet = true; m_aRN = value; }
110 inline void SetARN(Aws::String&& value) { m_aRNHasBeenSet = true; m_aRN = std::move(value); }
111 inline void SetARN(const char* value) { m_aRNHasBeenSet = true; m_aRN.assign(value); }
112 inline RuleGroup& WithARN(const Aws::String& value) { SetARN(value); return *this;}
113 inline RuleGroup& WithARN(Aws::String&& value) { SetARN(std::move(value)); return *this;}
114 inline RuleGroup& WithARN(const char* value) { SetARN(value); return *this;}
116
118
121 inline const Aws::String& GetDescription() const{ return m_description; }
122 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
123 inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
124 inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
125 inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
126 inline RuleGroup& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
127 inline RuleGroup& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
128 inline RuleGroup& WithDescription(const char* value) { SetDescription(value); return *this;}
130
132
137 inline const Aws::Vector<Rule>& GetRules() const{ return m_rules; }
138 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
139 inline void SetRules(const Aws::Vector<Rule>& value) { m_rulesHasBeenSet = true; m_rules = value; }
140 inline void SetRules(Aws::Vector<Rule>&& value) { m_rulesHasBeenSet = true; m_rules = std::move(value); }
141 inline RuleGroup& WithRules(const Aws::Vector<Rule>& value) { SetRules(value); return *this;}
142 inline RuleGroup& WithRules(Aws::Vector<Rule>&& value) { SetRules(std::move(value)); return *this;}
143 inline RuleGroup& AddRules(const Rule& value) { m_rulesHasBeenSet = true; m_rules.push_back(value); return *this; }
144 inline RuleGroup& AddRules(Rule&& value) { m_rulesHasBeenSet = true; m_rules.push_back(std::move(value)); return *this; }
146
148
152 inline const VisibilityConfig& GetVisibilityConfig() const{ return m_visibilityConfig; }
153 inline bool VisibilityConfigHasBeenSet() const { return m_visibilityConfigHasBeenSet; }
154 inline void SetVisibilityConfig(const VisibilityConfig& value) { m_visibilityConfigHasBeenSet = true; m_visibilityConfig = value; }
155 inline void SetVisibilityConfig(VisibilityConfig&& value) { m_visibilityConfigHasBeenSet = true; m_visibilityConfig = std::move(value); }
156 inline RuleGroup& WithVisibilityConfig(const VisibilityConfig& value) { SetVisibilityConfig(value); return *this;}
157 inline RuleGroup& WithVisibilityConfig(VisibilityConfig&& value) { SetVisibilityConfig(std::move(value)); return *this;}
159
161
172 inline const Aws::String& GetLabelNamespace() const{ return m_labelNamespace; }
173 inline bool LabelNamespaceHasBeenSet() const { return m_labelNamespaceHasBeenSet; }
174 inline void SetLabelNamespace(const Aws::String& value) { m_labelNamespaceHasBeenSet = true; m_labelNamespace = value; }
175 inline void SetLabelNamespace(Aws::String&& value) { m_labelNamespaceHasBeenSet = true; m_labelNamespace = std::move(value); }
176 inline void SetLabelNamespace(const char* value) { m_labelNamespaceHasBeenSet = true; m_labelNamespace.assign(value); }
177 inline RuleGroup& WithLabelNamespace(const Aws::String& value) { SetLabelNamespace(value); return *this;}
178 inline RuleGroup& WithLabelNamespace(Aws::String&& value) { SetLabelNamespace(std::move(value)); return *this;}
179 inline RuleGroup& WithLabelNamespace(const char* value) { SetLabelNamespace(value); return *this;}
181
183
196 inline const Aws::Map<Aws::String, CustomResponseBody>& GetCustomResponseBodies() const{ return m_customResponseBodies; }
197 inline bool CustomResponseBodiesHasBeenSet() const { return m_customResponseBodiesHasBeenSet; }
198 inline void SetCustomResponseBodies(const Aws::Map<Aws::String, CustomResponseBody>& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies = value; }
199 inline void SetCustomResponseBodies(Aws::Map<Aws::String, CustomResponseBody>&& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies = std::move(value); }
202 inline RuleGroup& AddCustomResponseBodies(const Aws::String& key, const CustomResponseBody& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(key, value); return *this; }
203 inline RuleGroup& AddCustomResponseBodies(Aws::String&& key, const CustomResponseBody& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(std::move(key), value); return *this; }
204 inline RuleGroup& AddCustomResponseBodies(const Aws::String& key, CustomResponseBody&& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(key, std::move(value)); return *this; }
205 inline RuleGroup& AddCustomResponseBodies(Aws::String&& key, CustomResponseBody&& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(std::move(key), std::move(value)); return *this; }
206 inline RuleGroup& AddCustomResponseBodies(const char* key, CustomResponseBody&& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(key, std::move(value)); return *this; }
207 inline RuleGroup& AddCustomResponseBodies(const char* key, const CustomResponseBody& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(key, value); return *this; }
209
211
216 inline const Aws::Vector<LabelSummary>& GetAvailableLabels() const{ return m_availableLabels; }
217 inline bool AvailableLabelsHasBeenSet() const { return m_availableLabelsHasBeenSet; }
218 inline void SetAvailableLabels(const Aws::Vector<LabelSummary>& value) { m_availableLabelsHasBeenSet = true; m_availableLabels = value; }
219 inline void SetAvailableLabels(Aws::Vector<LabelSummary>&& value) { m_availableLabelsHasBeenSet = true; m_availableLabels = std::move(value); }
220 inline RuleGroup& WithAvailableLabels(const Aws::Vector<LabelSummary>& value) { SetAvailableLabels(value); return *this;}
221 inline RuleGroup& WithAvailableLabels(Aws::Vector<LabelSummary>&& value) { SetAvailableLabels(std::move(value)); return *this;}
222 inline RuleGroup& AddAvailableLabels(const LabelSummary& value) { m_availableLabelsHasBeenSet = true; m_availableLabels.push_back(value); return *this; }
223 inline RuleGroup& AddAvailableLabels(LabelSummary&& value) { m_availableLabelsHasBeenSet = true; m_availableLabels.push_back(std::move(value)); return *this; }
225
227
232 inline const Aws::Vector<LabelSummary>& GetConsumedLabels() const{ return m_consumedLabels; }
233 inline bool ConsumedLabelsHasBeenSet() const { return m_consumedLabelsHasBeenSet; }
234 inline void SetConsumedLabels(const Aws::Vector<LabelSummary>& value) { m_consumedLabelsHasBeenSet = true; m_consumedLabels = value; }
235 inline void SetConsumedLabels(Aws::Vector<LabelSummary>&& value) { m_consumedLabelsHasBeenSet = true; m_consumedLabels = std::move(value); }
236 inline RuleGroup& WithConsumedLabels(const Aws::Vector<LabelSummary>& value) { SetConsumedLabels(value); return *this;}
237 inline RuleGroup& WithConsumedLabels(Aws::Vector<LabelSummary>&& value) { SetConsumedLabels(std::move(value)); return *this;}
238 inline RuleGroup& AddConsumedLabels(const LabelSummary& value) { m_consumedLabelsHasBeenSet = true; m_consumedLabels.push_back(value); return *this; }
239 inline RuleGroup& AddConsumedLabels(LabelSummary&& value) { m_consumedLabelsHasBeenSet = true; m_consumedLabels.push_back(std::move(value)); return *this; }
241 private:
242
243 Aws::String m_name;
244 bool m_nameHasBeenSet = false;
245
246 Aws::String m_id;
247 bool m_idHasBeenSet = false;
248
249 long long m_capacity;
250 bool m_capacityHasBeenSet = false;
251
252 Aws::String m_aRN;
253 bool m_aRNHasBeenSet = false;
254
255 Aws::String m_description;
256 bool m_descriptionHasBeenSet = false;
257
258 Aws::Vector<Rule> m_rules;
259 bool m_rulesHasBeenSet = false;
260
261 VisibilityConfig m_visibilityConfig;
262 bool m_visibilityConfigHasBeenSet = false;
263
264 Aws::String m_labelNamespace;
265 bool m_labelNamespaceHasBeenSet = false;
266
267 Aws::Map<Aws::String, CustomResponseBody> m_customResponseBodies;
268 bool m_customResponseBodiesHasBeenSet = false;
269
270 Aws::Vector<LabelSummary> m_availableLabels;
271 bool m_availableLabelsHasBeenSet = false;
272
273 Aws::Vector<LabelSummary> m_consumedLabels;
274 bool m_consumedLabelsHasBeenSet = false;
275 };
276
277} // namespace Model
278} // namespace WAFV2
279} // namespace Aws
void SetRules(const Aws::Vector< Rule > &value)
Definition RuleGroup.h:139
void SetCustomResponseBodies(const Aws::Map< Aws::String, CustomResponseBody > &value)
Definition RuleGroup.h:198
RuleGroup & WithId(Aws::String &&value)
Definition RuleGroup.h:77
void SetLabelNamespace(const char *value)
Definition RuleGroup.h:176
RuleGroup & AddConsumedLabels(LabelSummary &&value)
Definition RuleGroup.h:239
RuleGroup & AddCustomResponseBodies(Aws::String &&key, CustomResponseBody &&value)
Definition RuleGroup.h:205
void SetARN(Aws::String &&value)
Definition RuleGroup.h:110
void SetDescription(const Aws::String &value)
Definition RuleGroup.h:123
RuleGroup & WithRules(Aws::Vector< Rule > &&value)
Definition RuleGroup.h:142
RuleGroup & WithRules(const Aws::Vector< Rule > &value)
Definition RuleGroup.h:141
RuleGroup & WithARN(const char *value)
Definition RuleGroup.h:114
void SetVisibilityConfig(VisibilityConfig &&value)
Definition RuleGroup.h:155
RuleGroup & WithAvailableLabels(Aws::Vector< LabelSummary > &&value)
Definition RuleGroup.h:221
void SetConsumedLabels(const Aws::Vector< LabelSummary > &value)
Definition RuleGroup.h:234
void SetConsumedLabels(Aws::Vector< LabelSummary > &&value)
Definition RuleGroup.h:235
void SetDescription(Aws::String &&value)
Definition RuleGroup.h:124
RuleGroup & WithDescription(const Aws::String &value)
Definition RuleGroup.h:126
AWS_WAFV2_API RuleGroup(Aws::Utils::Json::JsonView jsonValue)
RuleGroup & AddConsumedLabels(const LabelSummary &value)
Definition RuleGroup.h:238
const Aws::String & GetARN() const
Definition RuleGroup.h:107
RuleGroup & WithDescription(Aws::String &&value)
Definition RuleGroup.h:127
RuleGroup & WithLabelNamespace(Aws::String &&value)
Definition RuleGroup.h:178
RuleGroup & WithConsumedLabels(Aws::Vector< LabelSummary > &&value)
Definition RuleGroup.h:237
const Aws::String & GetName() const
Definition RuleGroup.h:55
void SetVisibilityConfig(const VisibilityConfig &value)
Definition RuleGroup.h:154
RuleGroup & WithName(const char *value)
Definition RuleGroup.h:62
const VisibilityConfig & GetVisibilityConfig() const
Definition RuleGroup.h:152
AWS_WAFV2_API Aws::Utils::Json::JsonValue Jsonize() const
void SetId(const Aws::String &value)
Definition RuleGroup.h:73
const Aws::Vector< Rule > & GetRules() const
Definition RuleGroup.h:137
const Aws::String & GetId() const
Definition RuleGroup.h:71
const Aws::Map< Aws::String, CustomResponseBody > & GetCustomResponseBodies() const
Definition RuleGroup.h:196
const Aws::Vector< LabelSummary > & GetConsumedLabels() const
Definition RuleGroup.h:232
RuleGroup & AddCustomResponseBodies(const Aws::String &key, CustomResponseBody &&value)
Definition RuleGroup.h:204
bool LabelNamespaceHasBeenSet() const
Definition RuleGroup.h:173
void SetAvailableLabels(const Aws::Vector< LabelSummary > &value)
Definition RuleGroup.h:218
bool DescriptionHasBeenSet() const
Definition RuleGroup.h:122
void SetARN(const char *value)
Definition RuleGroup.h:111
RuleGroup & WithLabelNamespace(const Aws::String &value)
Definition RuleGroup.h:177
RuleGroup & AddCustomResponseBodies(Aws::String &&key, const CustomResponseBody &value)
Definition RuleGroup.h:203
long long GetCapacity() const
Definition RuleGroup.h:97
void SetRules(Aws::Vector< Rule > &&value)
Definition RuleGroup.h:140
void SetARN(const Aws::String &value)
Definition RuleGroup.h:109
RuleGroup & WithARN(Aws::String &&value)
Definition RuleGroup.h:113
void SetName(Aws::String &&value)
Definition RuleGroup.h:58
RuleGroup & WithConsumedLabels(const Aws::Vector< LabelSummary > &value)
Definition RuleGroup.h:236
RuleGroup & WithName(Aws::String &&value)
Definition RuleGroup.h:61
RuleGroup & AddCustomResponseBodies(const char *key, const CustomResponseBody &value)
Definition RuleGroup.h:207
void SetName(const char *value)
Definition RuleGroup.h:59
const Aws::String & GetDescription() const
Definition RuleGroup.h:121
RuleGroup & WithCapacity(long long value)
Definition RuleGroup.h:100
AWS_WAFV2_API RuleGroup & operator=(Aws::Utils::Json::JsonView jsonValue)
bool CapacityHasBeenSet() const
Definition RuleGroup.h:98
bool CustomResponseBodiesHasBeenSet() const
Definition RuleGroup.h:197
const Aws::String & GetLabelNamespace() const
Definition RuleGroup.h:172
RuleGroup & AddAvailableLabels(LabelSummary &&value)
Definition RuleGroup.h:223
RuleGroup & WithDescription(const char *value)
Definition RuleGroup.h:128
RuleGroup & WithId(const Aws::String &value)
Definition RuleGroup.h:76
void SetLabelNamespace(Aws::String &&value)
Definition RuleGroup.h:175
RuleGroup & AddCustomResponseBodies(const Aws::String &key, const CustomResponseBody &value)
Definition RuleGroup.h:202
void SetCapacity(long long value)
Definition RuleGroup.h:99
void SetLabelNamespace(const Aws::String &value)
Definition RuleGroup.h:174
const Aws::Vector< LabelSummary > & GetAvailableLabels() const
Definition RuleGroup.h:216
RuleGroup & WithAvailableLabels(const Aws::Vector< LabelSummary > &value)
Definition RuleGroup.h:220
void SetId(Aws::String &&value)
Definition RuleGroup.h:74
RuleGroup & AddCustomResponseBodies(const char *key, CustomResponseBody &&value)
Definition RuleGroup.h:206
RuleGroup & AddRules(const Rule &value)
Definition RuleGroup.h:143
RuleGroup & WithCustomResponseBodies(const Aws::Map< Aws::String, CustomResponseBody > &value)
Definition RuleGroup.h:200
RuleGroup & AddRules(Rule &&value)
Definition RuleGroup.h:144
RuleGroup & WithName(const Aws::String &value)
Definition RuleGroup.h:60
RuleGroup & WithVisibilityConfig(VisibilityConfig &&value)
Definition RuleGroup.h:157
bool AvailableLabelsHasBeenSet() const
Definition RuleGroup.h:217
void SetCustomResponseBodies(Aws::Map< Aws::String, CustomResponseBody > &&value)
Definition RuleGroup.h:199
RuleGroup & WithVisibilityConfig(const VisibilityConfig &value)
Definition RuleGroup.h:156
void SetId(const char *value)
Definition RuleGroup.h:75
RuleGroup & AddAvailableLabels(const LabelSummary &value)
Definition RuleGroup.h:222
void SetName(const Aws::String &value)
Definition RuleGroup.h:57
bool ConsumedLabelsHasBeenSet() const
Definition RuleGroup.h:233
void SetAvailableLabels(Aws::Vector< LabelSummary > &&value)
Definition RuleGroup.h:219
RuleGroup & WithLabelNamespace(const char *value)
Definition RuleGroup.h:179
bool VisibilityConfigHasBeenSet() const
Definition RuleGroup.h:153
RuleGroup & WithCustomResponseBodies(Aws::Map< Aws::String, CustomResponseBody > &&value)
Definition RuleGroup.h:201
void SetDescription(const char *value)
Definition RuleGroup.h:125
RuleGroup & WithARN(const Aws::String &value)
Definition RuleGroup.h:112
RuleGroup & WithId(const char *value)
Definition RuleGroup.h:78
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