AWS SDK for C++  1.9.40
AWS SDK for C++
CreateWebACLRequest.h
Go to the documentation of this file.
1 
6 #pragma once
10 #include <aws/wafv2/model/Scope.h>
15 #include <aws/wafv2/model/Rule.h>
16 #include <aws/wafv2/model/Tag.h>
18 #include <utility>
19 
20 namespace Aws
21 {
22 namespace WAFV2
23 {
24 namespace Model
25 {
26 
30  {
31  public:
33 
34  // Service request name is the Operation name which will send this request out,
35  // each operation should has unique request name, so that we can get operation's name from this request.
36  // Note: this is not true for response, multiple operations may have the same response name,
37  // so we can not get operation's name from response.
38  inline virtual const char* GetServiceRequestName() const override { return "CreateWebACL"; }
39 
40  Aws::String SerializePayload() const override;
41 
43 
44 
49  inline const Aws::String& GetName() const{ return m_name; }
50 
55  inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
56 
61  inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
62 
67  inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
68 
73  inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
74 
79  inline CreateWebACLRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
80 
85  inline CreateWebACLRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
86 
91  inline CreateWebACLRequest& WithName(const char* value) { SetName(value); return *this;}
92 
93 
103  inline const Scope& GetScope() const{ return m_scope; }
104 
114  inline bool ScopeHasBeenSet() const { return m_scopeHasBeenSet; }
115 
125  inline void SetScope(const Scope& value) { m_scopeHasBeenSet = true; m_scope = value; }
126 
136  inline void SetScope(Scope&& value) { m_scopeHasBeenSet = true; m_scope = std::move(value); }
137 
147  inline CreateWebACLRequest& WithScope(const Scope& value) { SetScope(value); return *this;}
148 
158  inline CreateWebACLRequest& WithScope(Scope&& value) { SetScope(std::move(value)); return *this;}
159 
160 
165  inline const DefaultAction& GetDefaultAction() const{ return m_defaultAction; }
166 
171  inline bool DefaultActionHasBeenSet() const { return m_defaultActionHasBeenSet; }
172 
177  inline void SetDefaultAction(const DefaultAction& value) { m_defaultActionHasBeenSet = true; m_defaultAction = value; }
178 
183  inline void SetDefaultAction(DefaultAction&& value) { m_defaultActionHasBeenSet = true; m_defaultAction = std::move(value); }
184 
189  inline CreateWebACLRequest& WithDefaultAction(const DefaultAction& value) { SetDefaultAction(value); return *this;}
190 
195  inline CreateWebACLRequest& WithDefaultAction(DefaultAction&& value) { SetDefaultAction(std::move(value)); return *this;}
196 
197 
201  inline const Aws::String& GetDescription() const{ return m_description; }
202 
206  inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
207 
211  inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
212 
216  inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
217 
221  inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
222 
226  inline CreateWebACLRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
227 
231  inline CreateWebACLRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
232 
236  inline CreateWebACLRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
237 
238 
245  inline const Aws::Vector<Rule>& GetRules() const{ return m_rules; }
246 
253  inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
254 
261  inline void SetRules(const Aws::Vector<Rule>& value) { m_rulesHasBeenSet = true; m_rules = value; }
262 
269  inline void SetRules(Aws::Vector<Rule>&& value) { m_rulesHasBeenSet = true; m_rules = std::move(value); }
270 
277  inline CreateWebACLRequest& WithRules(const Aws::Vector<Rule>& value) { SetRules(value); return *this;}
278 
285  inline CreateWebACLRequest& WithRules(Aws::Vector<Rule>&& value) { SetRules(std::move(value)); return *this;}
286 
293  inline CreateWebACLRequest& AddRules(const Rule& value) { m_rulesHasBeenSet = true; m_rules.push_back(value); return *this; }
294 
301  inline CreateWebACLRequest& AddRules(Rule&& value) { m_rulesHasBeenSet = true; m_rules.push_back(std::move(value)); return *this; }
302 
303 
308  inline const VisibilityConfig& GetVisibilityConfig() const{ return m_visibilityConfig; }
309 
314  inline bool VisibilityConfigHasBeenSet() const { return m_visibilityConfigHasBeenSet; }
315 
320  inline void SetVisibilityConfig(const VisibilityConfig& value) { m_visibilityConfigHasBeenSet = true; m_visibilityConfig = value; }
321 
326  inline void SetVisibilityConfig(VisibilityConfig&& value) { m_visibilityConfigHasBeenSet = true; m_visibilityConfig = std::move(value); }
327 
332  inline CreateWebACLRequest& WithVisibilityConfig(const VisibilityConfig& value) { SetVisibilityConfig(value); return *this;}
333 
338  inline CreateWebACLRequest& WithVisibilityConfig(VisibilityConfig&& value) { SetVisibilityConfig(std::move(value)); return *this;}
339 
340 
344  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
345 
349  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
350 
354  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
355 
359  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
360 
364  inline CreateWebACLRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
365 
369  inline CreateWebACLRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
370 
374  inline CreateWebACLRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
375 
379  inline CreateWebACLRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
380 
381 
398  inline const Aws::Map<Aws::String, CustomResponseBody>& GetCustomResponseBodies() const{ return m_customResponseBodies; }
399 
416  inline bool CustomResponseBodiesHasBeenSet() const { return m_customResponseBodiesHasBeenSet; }
417 
434  inline void SetCustomResponseBodies(const Aws::Map<Aws::String, CustomResponseBody>& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies = value; }
435 
452  inline void SetCustomResponseBodies(Aws::Map<Aws::String, CustomResponseBody>&& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies = std::move(value); }
453 
470  inline CreateWebACLRequest& WithCustomResponseBodies(const Aws::Map<Aws::String, CustomResponseBody>& value) { SetCustomResponseBodies(value); return *this;}
471 
488  inline CreateWebACLRequest& WithCustomResponseBodies(Aws::Map<Aws::String, CustomResponseBody>&& value) { SetCustomResponseBodies(std::move(value)); return *this;}
489 
506  inline CreateWebACLRequest& AddCustomResponseBodies(const Aws::String& key, const CustomResponseBody& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(key, value); return *this; }
507 
524  inline CreateWebACLRequest& AddCustomResponseBodies(Aws::String&& key, const CustomResponseBody& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(std::move(key), value); return *this; }
525 
542  inline CreateWebACLRequest& AddCustomResponseBodies(const Aws::String& key, CustomResponseBody&& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(key, std::move(value)); return *this; }
543 
560  inline CreateWebACLRequest& AddCustomResponseBodies(Aws::String&& key, CustomResponseBody&& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(std::move(key), std::move(value)); return *this; }
561 
578  inline CreateWebACLRequest& AddCustomResponseBodies(const char* key, CustomResponseBody&& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(key, std::move(value)); return *this; }
579 
596  inline CreateWebACLRequest& AddCustomResponseBodies(const char* key, const CustomResponseBody& value) { m_customResponseBodiesHasBeenSet = true; m_customResponseBodies.emplace(key, value); return *this; }
597 
598  private:
599 
600  Aws::String m_name;
601  bool m_nameHasBeenSet;
602 
603  Scope m_scope;
604  bool m_scopeHasBeenSet;
605 
606  DefaultAction m_defaultAction;
607  bool m_defaultActionHasBeenSet;
608 
609  Aws::String m_description;
610  bool m_descriptionHasBeenSet;
611 
612  Aws::Vector<Rule> m_rules;
613  bool m_rulesHasBeenSet;
614 
615  VisibilityConfig m_visibilityConfig;
616  bool m_visibilityConfigHasBeenSet;
617 
618  Aws::Vector<Tag> m_tags;
619  bool m_tagsHasBeenSet;
620 
621  Aws::Map<Aws::String, CustomResponseBody> m_customResponseBodies;
622  bool m_customResponseBodiesHasBeenSet;
623  };
624 
625 } // namespace Model
626 } // namespace WAFV2
627 } // namespace Aws
Aws::WAFV2::Model::CreateWebACLRequest::GetRules
const Aws::Vector< Rule > & GetRules() const
Definition: CreateWebACLRequest.h:245
Aws::WAFV2::Model::Rule
Definition: Rule.h:42
WAFV2Request.h
Aws::WAFV2::Model::CreateWebACLRequest::WithDescription
CreateWebACLRequest & WithDescription(Aws::String &&value)
Definition: CreateWebACLRequest.h:231
Aws::WAFV2::Model::CreateWebACLRequest::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: CreateWebACLRequest.h:359
Scope.h
Aws::WAFV2::Model::CreateWebACLRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: CreateWebACLRequest.h:38
Aws::WAFV2::Model::CreateWebACLRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::WAFV2::Model::CreateWebACLRequest::WithDescription
CreateWebACLRequest & WithDescription(const char *value)
Definition: CreateWebACLRequest.h:236
Aws::WAFV2::Model::CreateWebACLRequest::WithTags
CreateWebACLRequest & WithTags(const Aws::Vector< Tag > &value)
Definition: CreateWebACLRequest.h:364
Aws::WAFV2::Model::CreateWebACLRequest::WithScope
CreateWebACLRequest & WithScope(Scope &&value)
Definition: CreateWebACLRequest.h:158
Aws::Http::HeaderValueCollection
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition: HttpTypes.h:53
Aws::WAFV2::Model::CreateWebACLRequest::RulesHasBeenSet
bool RulesHasBeenSet() const
Definition: CreateWebACLRequest.h:253
Aws::WAFV2::Model::CreateWebACLRequest::SetDescription
void SetDescription(const char *value)
Definition: CreateWebACLRequest.h:221
Aws::WAFV2::Model::CreateWebACLRequest::SetCustomResponseBodies
void SetCustomResponseBodies(Aws::Map< Aws::String, CustomResponseBody > &&value)
Definition: CreateWebACLRequest.h:452
Aws::WAFV2::Model::CreateWebACLRequest
Definition: CreateWebACLRequest.h:30
Aws::WAFV2::Model::CreateWebACLRequest::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: CreateWebACLRequest.h:344
Aws::WAFV2::Model::CreateWebACLRequest::SetName
void SetName(const char *value)
Definition: CreateWebACLRequest.h:73
Aws::WAFV2::Model::CreateWebACLRequest::WithScope
CreateWebACLRequest & WithScope(const Scope &value)
Definition: CreateWebACLRequest.h:147
Aws::WAFV2::Model::CreateWebACLRequest::SetScope
void SetScope(Scope &&value)
Definition: CreateWebACLRequest.h:136
Aws::WAFV2::Model::CreateWebACLRequest::AddRules
CreateWebACLRequest & AddRules(Rule &&value)
Definition: CreateWebACLRequest.h:301
Aws::WAFV2::Model::CreateWebACLRequest::GetScope
const Scope & GetScope() const
Definition: CreateWebACLRequest.h:103
Aws::WAFV2::Model::CreateWebACLRequest::SetDefaultAction
void SetDefaultAction(const DefaultAction &value)
Definition: CreateWebACLRequest.h:177
Aws::WAFV2::Model::CreateWebACLRequest::CustomResponseBodiesHasBeenSet
bool CustomResponseBodiesHasBeenSet() const
Definition: CreateWebACLRequest.h:416
Aws::WAFV2::Model::CreateWebACLRequest::SetVisibilityConfig
void SetVisibilityConfig(const VisibilityConfig &value)
Definition: CreateWebACLRequest.h:320
Aws::WAFV2::Model::CreateWebACLRequest::SetRules
void SetRules(Aws::Vector< Rule > &&value)
Definition: CreateWebACLRequest.h:269
Aws::WAFV2::Model::VisibilityConfig
Definition: VisibilityConfig.h:33
Aws::WAFV2::Model::CreateWebACLRequest::WithName
CreateWebACLRequest & WithName(const char *value)
Definition: CreateWebACLRequest.h:91
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::WAFV2::Model::CreateWebACLRequest::SetName
void SetName(const Aws::String &value)
Definition: CreateWebACLRequest.h:61
AWS_WAFV2_API
#define AWS_WAFV2_API
Definition: WAFV2_EXPORTS.h:28
Aws::WAFV2::Model::CreateWebACLRequest::AddCustomResponseBodies
CreateWebACLRequest & AddCustomResponseBodies(const char *key, CustomResponseBody &&value)
Definition: CreateWebACLRequest.h:578
AWSVector.h
CustomResponseBody.h
Rule.h
Aws::WAFV2::Model::CreateWebACLRequest::GetVisibilityConfig
const VisibilityConfig & GetVisibilityConfig() const
Definition: CreateWebACLRequest.h:308
Aws::WAFV2::Model::CreateWebACLRequest::WithName
CreateWebACLRequest & WithName(Aws::String &&value)
Definition: CreateWebACLRequest.h:85
WAFV2_EXPORTS.h
Aws::WAFV2::Model::CreateWebACLRequest::ScopeHasBeenSet
bool ScopeHasBeenSet() const
Definition: CreateWebACLRequest.h:114
Aws::WAFV2::Model::CreateWebACLRequest::AddRules
CreateWebACLRequest & AddRules(const Rule &value)
Definition: CreateWebACLRequest.h:293
Aws::WAFV2::Model::CreateWebACLRequest::GetDefaultAction
const DefaultAction & GetDefaultAction() const
Definition: CreateWebACLRequest.h:165
Aws::WAFV2::Model::CreateWebACLRequest::GetName
const Aws::String & GetName() const
Definition: CreateWebACLRequest.h:49
Aws::WAFV2::Model::CreateWebACLRequest::WithName
CreateWebACLRequest & WithName(const Aws::String &value)
Definition: CreateWebACLRequest.h:79
Aws::WAFV2::Model::CreateWebACLRequest::GetRequestSpecificHeaders
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
Aws::WAFV2::Model::CreateWebACLRequest::AddCustomResponseBodies
CreateWebACLRequest & AddCustomResponseBodies(const Aws::String &key, const CustomResponseBody &value)
Definition: CreateWebACLRequest.h:506
Aws::WAFV2::Model::CreateWebACLRequest::AddCustomResponseBodies
CreateWebACLRequest & AddCustomResponseBodies(Aws::String &&key, const CustomResponseBody &value)
Definition: CreateWebACLRequest.h:524
Aws::WAFV2::Model::CreateWebACLRequest::WithCustomResponseBodies
CreateWebACLRequest & WithCustomResponseBodies(const Aws::Map< Aws::String, CustomResponseBody > &value)
Definition: CreateWebACLRequest.h:470
Aws::WAFV2::WAFV2Request
Definition: WAFV2Request.h:17
Aws::WAFV2::Model::CreateWebACLRequest::WithDefaultAction
CreateWebACLRequest & WithDefaultAction(DefaultAction &&value)
Definition: CreateWebACLRequest.h:195
Aws::WAFV2::Model::CreateWebACLRequest::SetVisibilityConfig
void SetVisibilityConfig(VisibilityConfig &&value)
Definition: CreateWebACLRequest.h:326
Aws::WAFV2::Model::CreateWebACLRequest::AddCustomResponseBodies
CreateWebACLRequest & AddCustomResponseBodies(const char *key, const CustomResponseBody &value)
Definition: CreateWebACLRequest.h:596
Aws::WAFV2::Model::CreateWebACLRequest::SetDescription
void SetDescription(Aws::String &&value)
Definition: CreateWebACLRequest.h:216
Aws::WAFV2::Model::CreateWebACLRequest::GetCustomResponseBodies
const Aws::Map< Aws::String, CustomResponseBody > & GetCustomResponseBodies() const
Definition: CreateWebACLRequest.h:398
Aws::WAFV2::Model::CreateWebACLRequest::GetDescription
const Aws::String & GetDescription() const
Definition: CreateWebACLRequest.h:201
Aws::WAFV2::Model::DefaultAction
Definition: DefaultAction.h:36
Aws::WAFV2::Model::CustomResponseBody
Definition: CustomResponseBody.h:35
Aws::WAFV2::Model::CreateWebACLRequest::SetName
void SetName(Aws::String &&value)
Definition: CreateWebACLRequest.h:67
Aws::WAFV2::Model::CreateWebACLRequest::DescriptionHasBeenSet
bool DescriptionHasBeenSet() const
Definition: CreateWebACLRequest.h:206
Aws::WAFV2::Model::CreateWebACLRequest::CreateWebACLRequest
CreateWebACLRequest()
Aws::WAFV2::Model::CreateWebACLRequest::WithRules
CreateWebACLRequest & WithRules(const Aws::Vector< Rule > &value)
Definition: CreateWebACLRequest.h:277
Aws::WAFV2::Model::CreateWebACLRequest::WithRules
CreateWebACLRequest & WithRules(Aws::Vector< Rule > &&value)
Definition: CreateWebACLRequest.h:285
AWSString.h
Aws::WAFV2::Model::CreateWebACLRequest::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: CreateWebACLRequest.h:354
Aws::WAFV2::Model::CreateWebACLRequest::WithTags
CreateWebACLRequest & WithTags(Aws::Vector< Tag > &&value)
Definition: CreateWebACLRequest.h:369
Aws::WAFV2::Model::CreateWebACLRequest::AddCustomResponseBodies
CreateWebACLRequest & AddCustomResponseBodies(const Aws::String &key, CustomResponseBody &&value)
Definition: CreateWebACLRequest.h:542
Aws::WAFV2::Model::CreateWebACLRequest::SetDefaultAction
void SetDefaultAction(DefaultAction &&value)
Definition: CreateWebACLRequest.h:183
Aws::WAFV2::Model::CreateWebACLRequest::WithCustomResponseBodies
CreateWebACLRequest & WithCustomResponseBodies(Aws::Map< Aws::String, CustomResponseBody > &&value)
Definition: CreateWebACLRequest.h:488
Aws::WAFV2::Model::CreateWebACLRequest::SetDescription
void SetDescription(const Aws::String &value)
Definition: CreateWebACLRequest.h:211
Aws
Definition: AccessManagementClient.h:15
Aws::WAFV2::Model::CreateWebACLRequest::WithDefaultAction
CreateWebACLRequest & WithDefaultAction(const DefaultAction &value)
Definition: CreateWebACLRequest.h:189
Aws::WAFV2::Model::CreateWebACLRequest::DefaultActionHasBeenSet
bool DefaultActionHasBeenSet() const
Definition: CreateWebACLRequest.h:171
Aws::WAFV2::Model::CreateWebACLRequest::NameHasBeenSet
bool NameHasBeenSet() const
Definition: CreateWebACLRequest.h:55
Tag.h
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::WAFV2::Model::CreateWebACLRequest::AddTags
CreateWebACLRequest & AddTags(Tag &&value)
Definition: CreateWebACLRequest.h:379
Aws::WAFV2::Model::Tag
Definition: Tag.h:41
DefaultAction.h
Aws::WAFV2::Model::CreateWebACLRequest::SetRules
void SetRules(const Aws::Vector< Rule > &value)
Definition: CreateWebACLRequest.h:261
Aws::WAFV2::Model::CreateWebACLRequest::VisibilityConfigHasBeenSet
bool VisibilityConfigHasBeenSet() const
Definition: CreateWebACLRequest.h:314
Aws::WAFV2::Model::Scope
Scope
Definition: Scope.h:17
VisibilityConfig.h
Aws::WAFV2::Model::CreateWebACLRequest::SetScope
void SetScope(const Scope &value)
Definition: CreateWebACLRequest.h:125
Aws::WAFV2::Model::CreateWebACLRequest::SetCustomResponseBodies
void SetCustomResponseBodies(const Aws::Map< Aws::String, CustomResponseBody > &value)
Definition: CreateWebACLRequest.h:434
Aws::WAFV2::Model::CreateWebACLRequest::AddTags
CreateWebACLRequest & AddTags(const Tag &value)
Definition: CreateWebACLRequest.h:374
AWSMap.h
Aws::WAFV2::Model::CreateWebACLRequest::WithDescription
CreateWebACLRequest & WithDescription(const Aws::String &value)
Definition: CreateWebACLRequest.h:226
Aws::WAFV2::Model::CreateWebACLRequest::AddCustomResponseBodies
CreateWebACLRequest & AddCustomResponseBodies(Aws::String &&key, CustomResponseBody &&value)
Definition: CreateWebACLRequest.h:560
Aws::WAFV2::Model::CreateWebACLRequest::WithVisibilityConfig
CreateWebACLRequest & WithVisibilityConfig(const VisibilityConfig &value)
Definition: CreateWebACLRequest.h:332
Aws::WAFV2::Model::CreateWebACLRequest::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: CreateWebACLRequest.h:349
Aws::Map
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Definition: AWSMap.h:19
Aws::WAFV2::Model::CreateWebACLRequest::WithVisibilityConfig
CreateWebACLRequest & WithVisibilityConfig(VisibilityConfig &&value)
Definition: CreateWebACLRequest.h:338