AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
FirewallPolicyDetails.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/FirewallPolicyStatefulRuleGroupReferencesDetails.h>
11#include <aws/securityhub/model/FirewallPolicyStatelessCustomActionsDetails.h>
12#include <aws/securityhub/model/FirewallPolicyStatelessRuleGroupReferencesDetails.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace SecurityHub {
24namespace Model {
25
32 public:
33 AWS_SECURITYHUB_API FirewallPolicyDetails() = default;
34 AWS_SECURITYHUB_API FirewallPolicyDetails(Aws::Utils::Json::JsonView jsonValue);
36 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 return m_statefulRuleGroupReferences;
44 }
45 inline bool StatefulRuleGroupReferencesHasBeenSet() const { return m_statefulRuleGroupReferencesHasBeenSet; }
46 template <typename StatefulRuleGroupReferencesT = Aws::Vector<FirewallPolicyStatefulRuleGroupReferencesDetails>>
47 void SetStatefulRuleGroupReferences(StatefulRuleGroupReferencesT&& value) {
48 m_statefulRuleGroupReferencesHasBeenSet = true;
49 m_statefulRuleGroupReferences = std::forward<StatefulRuleGroupReferencesT>(value);
50 }
51 template <typename StatefulRuleGroupReferencesT = Aws::Vector<FirewallPolicyStatefulRuleGroupReferencesDetails>>
52 FirewallPolicyDetails& WithStatefulRuleGroupReferences(StatefulRuleGroupReferencesT&& value) {
53 SetStatefulRuleGroupReferences(std::forward<StatefulRuleGroupReferencesT>(value));
54 return *this;
55 }
56 template <typename StatefulRuleGroupReferencesT = FirewallPolicyStatefulRuleGroupReferencesDetails>
57 FirewallPolicyDetails& AddStatefulRuleGroupReferences(StatefulRuleGroupReferencesT&& value) {
58 m_statefulRuleGroupReferencesHasBeenSet = true;
59 m_statefulRuleGroupReferences.emplace_back(std::forward<StatefulRuleGroupReferencesT>(value));
60 return *this;
61 }
63
65
70 return m_statelessCustomActions;
71 }
72 inline bool StatelessCustomActionsHasBeenSet() const { return m_statelessCustomActionsHasBeenSet; }
73 template <typename StatelessCustomActionsT = Aws::Vector<FirewallPolicyStatelessCustomActionsDetails>>
74 void SetStatelessCustomActions(StatelessCustomActionsT&& value) {
75 m_statelessCustomActionsHasBeenSet = true;
76 m_statelessCustomActions = std::forward<StatelessCustomActionsT>(value);
77 }
78 template <typename StatelessCustomActionsT = Aws::Vector<FirewallPolicyStatelessCustomActionsDetails>>
79 FirewallPolicyDetails& WithStatelessCustomActions(StatelessCustomActionsT&& value) {
80 SetStatelessCustomActions(std::forward<StatelessCustomActionsT>(value));
81 return *this;
82 }
83 template <typename StatelessCustomActionsT = FirewallPolicyStatelessCustomActionsDetails>
84 FirewallPolicyDetails& AddStatelessCustomActions(StatelessCustomActionsT&& value) {
85 m_statelessCustomActionsHasBeenSet = true;
86 m_statelessCustomActions.emplace_back(std::forward<StatelessCustomActionsT>(value));
87 return *this;
88 }
90
92
99 inline const Aws::Vector<Aws::String>& GetStatelessDefaultActions() const { return m_statelessDefaultActions; }
100 inline bool StatelessDefaultActionsHasBeenSet() const { return m_statelessDefaultActionsHasBeenSet; }
101 template <typename StatelessDefaultActionsT = Aws::Vector<Aws::String>>
102 void SetStatelessDefaultActions(StatelessDefaultActionsT&& value) {
103 m_statelessDefaultActionsHasBeenSet = true;
104 m_statelessDefaultActions = std::forward<StatelessDefaultActionsT>(value);
105 }
106 template <typename StatelessDefaultActionsT = Aws::Vector<Aws::String>>
107 FirewallPolicyDetails& WithStatelessDefaultActions(StatelessDefaultActionsT&& value) {
108 SetStatelessDefaultActions(std::forward<StatelessDefaultActionsT>(value));
109 return *this;
110 }
111 template <typename StatelessDefaultActionsT = Aws::String>
112 FirewallPolicyDetails& AddStatelessDefaultActions(StatelessDefaultActionsT&& value) {
113 m_statelessDefaultActionsHasBeenSet = true;
114 m_statelessDefaultActions.emplace_back(std::forward<StatelessDefaultActionsT>(value));
115 return *this;
116 }
118
120
127 inline const Aws::Vector<Aws::String>& GetStatelessFragmentDefaultActions() const { return m_statelessFragmentDefaultActions; }
128 inline bool StatelessFragmentDefaultActionsHasBeenSet() const { return m_statelessFragmentDefaultActionsHasBeenSet; }
129 template <typename StatelessFragmentDefaultActionsT = Aws::Vector<Aws::String>>
130 void SetStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT&& value) {
131 m_statelessFragmentDefaultActionsHasBeenSet = true;
132 m_statelessFragmentDefaultActions = std::forward<StatelessFragmentDefaultActionsT>(value);
133 }
134 template <typename StatelessFragmentDefaultActionsT = Aws::Vector<Aws::String>>
135 FirewallPolicyDetails& WithStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT&& value) {
136 SetStatelessFragmentDefaultActions(std::forward<StatelessFragmentDefaultActionsT>(value));
137 return *this;
138 }
139 template <typename StatelessFragmentDefaultActionsT = Aws::String>
140 FirewallPolicyDetails& AddStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT&& value) {
141 m_statelessFragmentDefaultActionsHasBeenSet = true;
142 m_statelessFragmentDefaultActions.emplace_back(std::forward<StatelessFragmentDefaultActionsT>(value));
143 return *this;
144 }
146
148
152 return m_statelessRuleGroupReferences;
153 }
154 inline bool StatelessRuleGroupReferencesHasBeenSet() const { return m_statelessRuleGroupReferencesHasBeenSet; }
155 template <typename StatelessRuleGroupReferencesT = Aws::Vector<FirewallPolicyStatelessRuleGroupReferencesDetails>>
156 void SetStatelessRuleGroupReferences(StatelessRuleGroupReferencesT&& value) {
157 m_statelessRuleGroupReferencesHasBeenSet = true;
158 m_statelessRuleGroupReferences = std::forward<StatelessRuleGroupReferencesT>(value);
159 }
160 template <typename StatelessRuleGroupReferencesT = Aws::Vector<FirewallPolicyStatelessRuleGroupReferencesDetails>>
161 FirewallPolicyDetails& WithStatelessRuleGroupReferences(StatelessRuleGroupReferencesT&& value) {
162 SetStatelessRuleGroupReferences(std::forward<StatelessRuleGroupReferencesT>(value));
163 return *this;
164 }
165 template <typename StatelessRuleGroupReferencesT = FirewallPolicyStatelessRuleGroupReferencesDetails>
166 FirewallPolicyDetails& AddStatelessRuleGroupReferences(StatelessRuleGroupReferencesT&& value) {
167 m_statelessRuleGroupReferencesHasBeenSet = true;
168 m_statelessRuleGroupReferences.emplace_back(std::forward<StatelessRuleGroupReferencesT>(value));
169 return *this;
170 }
172 private:
174
176
177 Aws::Vector<Aws::String> m_statelessDefaultActions;
178
179 Aws::Vector<Aws::String> m_statelessFragmentDefaultActions;
180
182 bool m_statefulRuleGroupReferencesHasBeenSet = false;
183 bool m_statelessCustomActionsHasBeenSet = false;
184 bool m_statelessDefaultActionsHasBeenSet = false;
185 bool m_statelessFragmentDefaultActionsHasBeenSet = false;
186 bool m_statelessRuleGroupReferencesHasBeenSet = false;
187};
188
189} // namespace Model
190} // namespace SecurityHub
191} // namespace Aws
void SetStatelessCustomActions(StatelessCustomActionsT &&value)
FirewallPolicyDetails & WithStatelessDefaultActions(StatelessDefaultActionsT &&value)
const Aws::Vector< FirewallPolicyStatelessCustomActionsDetails > & GetStatelessCustomActions() const
const Aws::Vector< Aws::String > & GetStatelessFragmentDefaultActions() const
AWS_SECURITYHUB_API FirewallPolicyDetails(Aws::Utils::Json::JsonView jsonValue)
FirewallPolicyDetails & AddStatelessDefaultActions(StatelessDefaultActionsT &&value)
void SetStatelessRuleGroupReferences(StatelessRuleGroupReferencesT &&value)
FirewallPolicyDetails & WithStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT &&value)
AWS_SECURITYHUB_API FirewallPolicyDetails()=default
AWS_SECURITYHUB_API FirewallPolicyDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
FirewallPolicyDetails & AddStatelessCustomActions(StatelessCustomActionsT &&value)
const Aws::Vector< FirewallPolicyStatelessRuleGroupReferencesDetails > & GetStatelessRuleGroupReferences() const
FirewallPolicyDetails & AddStatelessRuleGroupReferences(StatelessRuleGroupReferencesT &&value)
FirewallPolicyDetails & AddStatefulRuleGroupReferences(StatefulRuleGroupReferencesT &&value)
FirewallPolicyDetails & WithStatelessRuleGroupReferences(StatelessRuleGroupReferencesT &&value)
void SetStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT &&value)
FirewallPolicyDetails & WithStatefulRuleGroupReferences(StatefulRuleGroupReferencesT &&value)
const Aws::Vector< FirewallPolicyStatefulRuleGroupReferencesDetails > & GetStatefulRuleGroupReferences() const
const Aws::Vector< Aws::String > & GetStatelessDefaultActions() const
void SetStatelessDefaultActions(StatelessDefaultActionsT &&value)
FirewallPolicyDetails & WithStatelessCustomActions(StatelessCustomActionsT &&value)
FirewallPolicyDetails & AddStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT &&value)
void SetStatefulRuleGroupReferences(StatefulRuleGroupReferencesT &&value)
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue