AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
AwsWafv2RuleGroupDetails.h
1
6#pragma once
7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/securityhub/model/AwsWafv2VisibilityConfigDetails.h>
11#include <aws/securityhub/model/AwsWafv2RulesDetails.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace SecurityHub
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_SECURITYHUB_API AwsWafv2RuleGroupDetails() = default;
40 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline long long GetCapacity() const { return m_capacity; }
48 inline bool CapacityHasBeenSet() const { return m_capacityHasBeenSet; }
49 inline void SetCapacity(long long value) { m_capacityHasBeenSet = true; m_capacity = value; }
50 inline AwsWafv2RuleGroupDetails& WithCapacity(long long value) { SetCapacity(value); return *this;}
52
54
57 inline const Aws::String& GetDescription() const { return m_description; }
58 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
59 template<typename DescriptionT = Aws::String>
60 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
61 template<typename DescriptionT = Aws::String>
62 AwsWafv2RuleGroupDetails& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
64
66
69 inline const Aws::String& GetId() const { return m_id; }
70 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
71 template<typename IdT = Aws::String>
72 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
73 template<typename IdT = Aws::String>
74 AwsWafv2RuleGroupDetails& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
76
78
82 inline const Aws::String& GetName() const { return m_name; }
83 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
84 template<typename NameT = Aws::String>
85 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
86 template<typename NameT = Aws::String>
87 AwsWafv2RuleGroupDetails& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
89
91
94 inline const Aws::String& GetArn() const { return m_arn; }
95 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
96 template<typename ArnT = Aws::String>
97 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
98 template<typename ArnT = Aws::String>
99 AwsWafv2RuleGroupDetails& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
101
103
109 inline const Aws::Vector<AwsWafv2RulesDetails>& GetRules() const { return m_rules; }
110 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
111 template<typename RulesT = Aws::Vector<AwsWafv2RulesDetails>>
112 void SetRules(RulesT&& value) { m_rulesHasBeenSet = true; m_rules = std::forward<RulesT>(value); }
113 template<typename RulesT = Aws::Vector<AwsWafv2RulesDetails>>
114 AwsWafv2RuleGroupDetails& WithRules(RulesT&& value) { SetRules(std::forward<RulesT>(value)); return *this;}
115 template<typename RulesT = AwsWafv2RulesDetails>
116 AwsWafv2RuleGroupDetails& AddRules(RulesT&& value) { m_rulesHasBeenSet = true; m_rules.emplace_back(std::forward<RulesT>(value)); return *this; }
118
120
126 inline const Aws::String& GetScope() const { return m_scope; }
127 inline bool ScopeHasBeenSet() const { return m_scopeHasBeenSet; }
128 template<typename ScopeT = Aws::String>
129 void SetScope(ScopeT&& value) { m_scopeHasBeenSet = true; m_scope = std::forward<ScopeT>(value); }
130 template<typename ScopeT = Aws::String>
131 AwsWafv2RuleGroupDetails& WithScope(ScopeT&& value) { SetScope(std::forward<ScopeT>(value)); return *this;}
133
135
139 inline const AwsWafv2VisibilityConfigDetails& GetVisibilityConfig() const { return m_visibilityConfig; }
140 inline bool VisibilityConfigHasBeenSet() const { return m_visibilityConfigHasBeenSet; }
141 template<typename VisibilityConfigT = AwsWafv2VisibilityConfigDetails>
142 void SetVisibilityConfig(VisibilityConfigT&& value) { m_visibilityConfigHasBeenSet = true; m_visibilityConfig = std::forward<VisibilityConfigT>(value); }
143 template<typename VisibilityConfigT = AwsWafv2VisibilityConfigDetails>
144 AwsWafv2RuleGroupDetails& WithVisibilityConfig(VisibilityConfigT&& value) { SetVisibilityConfig(std::forward<VisibilityConfigT>(value)); return *this;}
146 private:
147
148 long long m_capacity{0};
149 bool m_capacityHasBeenSet = false;
150
151 Aws::String m_description;
152 bool m_descriptionHasBeenSet = false;
153
154 Aws::String m_id;
155 bool m_idHasBeenSet = false;
156
157 Aws::String m_name;
158 bool m_nameHasBeenSet = false;
159
160 Aws::String m_arn;
161 bool m_arnHasBeenSet = false;
162
164 bool m_rulesHasBeenSet = false;
165
166 Aws::String m_scope;
167 bool m_scopeHasBeenSet = false;
168
169 AwsWafv2VisibilityConfigDetails m_visibilityConfig;
170 bool m_visibilityConfigHasBeenSet = false;
171 };
172
173} // namespace Model
174} // namespace SecurityHub
175} // namespace Aws
AWS_SECURITYHUB_API AwsWafv2RuleGroupDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
AwsWafv2RuleGroupDetails & WithName(NameT &&value)
AwsWafv2RuleGroupDetails & WithDescription(DescriptionT &&value)
const Aws::Vector< AwsWafv2RulesDetails > & GetRules() const
const AwsWafv2VisibilityConfigDetails & GetVisibilityConfig() const
AwsWafv2RuleGroupDetails & WithArn(ArnT &&value)
AwsWafv2RuleGroupDetails & WithScope(ScopeT &&value)
AWS_SECURITYHUB_API AwsWafv2RuleGroupDetails()=default
AwsWafv2RuleGroupDetails & WithRules(RulesT &&value)
AWS_SECURITYHUB_API AwsWafv2RuleGroupDetails(Aws::Utils::Json::JsonView jsonValue)
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AwsWafv2RuleGroupDetails & WithVisibilityConfig(VisibilityConfigT &&value)
AwsWafv2RuleGroupDetails & WithCapacity(long long value)
AwsWafv2RuleGroupDetails & AddRules(RulesT &&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