AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
FirewallPolicy.h
1
6#pragma once
7#include <aws/network-firewall/NetworkFirewall_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/network-firewall/model/StatefulEngineOptions.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/network-firewall/model/PolicyVariables.h>
12#include <aws/network-firewall/model/StatelessRuleGroupReference.h>
13#include <aws/network-firewall/model/CustomAction.h>
14#include <aws/network-firewall/model/StatefulRuleGroupReference.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 NetworkFirewall
28{
29namespace Model
30{
31
43 {
44 public:
45 AWS_NETWORKFIREWALL_API FirewallPolicy() = default;
46 AWS_NETWORKFIREWALL_API FirewallPolicy(Aws::Utils::Json::JsonView jsonValue);
47 AWS_NETWORKFIREWALL_API FirewallPolicy& operator=(Aws::Utils::Json::JsonView jsonValue);
48 AWS_NETWORKFIREWALL_API Aws::Utils::Json::JsonValue Jsonize() const;
49
50
52
56 inline const Aws::Vector<StatelessRuleGroupReference>& GetStatelessRuleGroupReferences() const { return m_statelessRuleGroupReferences; }
57 inline bool StatelessRuleGroupReferencesHasBeenSet() const { return m_statelessRuleGroupReferencesHasBeenSet; }
58 template<typename StatelessRuleGroupReferencesT = Aws::Vector<StatelessRuleGroupReference>>
59 void SetStatelessRuleGroupReferences(StatelessRuleGroupReferencesT&& value) { m_statelessRuleGroupReferencesHasBeenSet = true; m_statelessRuleGroupReferences = std::forward<StatelessRuleGroupReferencesT>(value); }
60 template<typename StatelessRuleGroupReferencesT = Aws::Vector<StatelessRuleGroupReference>>
61 FirewallPolicy& WithStatelessRuleGroupReferences(StatelessRuleGroupReferencesT&& value) { SetStatelessRuleGroupReferences(std::forward<StatelessRuleGroupReferencesT>(value)); return *this;}
62 template<typename StatelessRuleGroupReferencesT = StatelessRuleGroupReference>
63 FirewallPolicy& AddStatelessRuleGroupReferences(StatelessRuleGroupReferencesT&& value) { m_statelessRuleGroupReferencesHasBeenSet = true; m_statelessRuleGroupReferences.emplace_back(std::forward<StatelessRuleGroupReferencesT>(value)); return *this; }
65
67
79 inline const Aws::Vector<Aws::String>& GetStatelessDefaultActions() const { return m_statelessDefaultActions; }
80 inline bool StatelessDefaultActionsHasBeenSet() const { return m_statelessDefaultActionsHasBeenSet; }
81 template<typename StatelessDefaultActionsT = Aws::Vector<Aws::String>>
82 void SetStatelessDefaultActions(StatelessDefaultActionsT&& value) { m_statelessDefaultActionsHasBeenSet = true; m_statelessDefaultActions = std::forward<StatelessDefaultActionsT>(value); }
83 template<typename StatelessDefaultActionsT = Aws::Vector<Aws::String>>
84 FirewallPolicy& WithStatelessDefaultActions(StatelessDefaultActionsT&& value) { SetStatelessDefaultActions(std::forward<StatelessDefaultActionsT>(value)); return *this;}
85 template<typename StatelessDefaultActionsT = Aws::String>
86 FirewallPolicy& AddStatelessDefaultActions(StatelessDefaultActionsT&& value) { m_statelessDefaultActionsHasBeenSet = true; m_statelessDefaultActions.emplace_back(std::forward<StatelessDefaultActionsT>(value)); return *this; }
88
90
103 inline const Aws::Vector<Aws::String>& GetStatelessFragmentDefaultActions() const { return m_statelessFragmentDefaultActions; }
104 inline bool StatelessFragmentDefaultActionsHasBeenSet() const { return m_statelessFragmentDefaultActionsHasBeenSet; }
105 template<typename StatelessFragmentDefaultActionsT = Aws::Vector<Aws::String>>
106 void SetStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT&& value) { m_statelessFragmentDefaultActionsHasBeenSet = true; m_statelessFragmentDefaultActions = std::forward<StatelessFragmentDefaultActionsT>(value); }
107 template<typename StatelessFragmentDefaultActionsT = Aws::Vector<Aws::String>>
108 FirewallPolicy& WithStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT&& value) { SetStatelessFragmentDefaultActions(std::forward<StatelessFragmentDefaultActionsT>(value)); return *this;}
109 template<typename StatelessFragmentDefaultActionsT = Aws::String>
110 FirewallPolicy& AddStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT&& value) { m_statelessFragmentDefaultActionsHasBeenSet = true; m_statelessFragmentDefaultActions.emplace_back(std::forward<StatelessFragmentDefaultActionsT>(value)); return *this; }
112
114
120 inline const Aws::Vector<CustomAction>& GetStatelessCustomActions() const { return m_statelessCustomActions; }
121 inline bool StatelessCustomActionsHasBeenSet() const { return m_statelessCustomActionsHasBeenSet; }
122 template<typename StatelessCustomActionsT = Aws::Vector<CustomAction>>
123 void SetStatelessCustomActions(StatelessCustomActionsT&& value) { m_statelessCustomActionsHasBeenSet = true; m_statelessCustomActions = std::forward<StatelessCustomActionsT>(value); }
124 template<typename StatelessCustomActionsT = Aws::Vector<CustomAction>>
125 FirewallPolicy& WithStatelessCustomActions(StatelessCustomActionsT&& value) { SetStatelessCustomActions(std::forward<StatelessCustomActionsT>(value)); return *this;}
126 template<typename StatelessCustomActionsT = CustomAction>
127 FirewallPolicy& AddStatelessCustomActions(StatelessCustomActionsT&& value) { m_statelessCustomActionsHasBeenSet = true; m_statelessCustomActions.emplace_back(std::forward<StatelessCustomActionsT>(value)); return *this; }
129
131
135 inline const Aws::Vector<StatefulRuleGroupReference>& GetStatefulRuleGroupReferences() const { return m_statefulRuleGroupReferences; }
136 inline bool StatefulRuleGroupReferencesHasBeenSet() const { return m_statefulRuleGroupReferencesHasBeenSet; }
137 template<typename StatefulRuleGroupReferencesT = Aws::Vector<StatefulRuleGroupReference>>
138 void SetStatefulRuleGroupReferences(StatefulRuleGroupReferencesT&& value) { m_statefulRuleGroupReferencesHasBeenSet = true; m_statefulRuleGroupReferences = std::forward<StatefulRuleGroupReferencesT>(value); }
139 template<typename StatefulRuleGroupReferencesT = Aws::Vector<StatefulRuleGroupReference>>
140 FirewallPolicy& WithStatefulRuleGroupReferences(StatefulRuleGroupReferencesT&& value) { SetStatefulRuleGroupReferences(std::forward<StatefulRuleGroupReferencesT>(value)); return *this;}
141 template<typename StatefulRuleGroupReferencesT = StatefulRuleGroupReference>
142 FirewallPolicy& AddStatefulRuleGroupReferences(StatefulRuleGroupReferencesT&& value) { m_statefulRuleGroupReferencesHasBeenSet = true; m_statefulRuleGroupReferences.emplace_back(std::forward<StatefulRuleGroupReferencesT>(value)); return *this; }
144
146
156 inline const Aws::Vector<Aws::String>& GetStatefulDefaultActions() const { return m_statefulDefaultActions; }
157 inline bool StatefulDefaultActionsHasBeenSet() const { return m_statefulDefaultActionsHasBeenSet; }
158 template<typename StatefulDefaultActionsT = Aws::Vector<Aws::String>>
159 void SetStatefulDefaultActions(StatefulDefaultActionsT&& value) { m_statefulDefaultActionsHasBeenSet = true; m_statefulDefaultActions = std::forward<StatefulDefaultActionsT>(value); }
160 template<typename StatefulDefaultActionsT = Aws::Vector<Aws::String>>
161 FirewallPolicy& WithStatefulDefaultActions(StatefulDefaultActionsT&& value) { SetStatefulDefaultActions(std::forward<StatefulDefaultActionsT>(value)); return *this;}
162 template<typename StatefulDefaultActionsT = Aws::String>
163 FirewallPolicy& AddStatefulDefaultActions(StatefulDefaultActionsT&& value) { m_statefulDefaultActionsHasBeenSet = true; m_statefulDefaultActions.emplace_back(std::forward<StatefulDefaultActionsT>(value)); return *this; }
165
167
172 inline const StatefulEngineOptions& GetStatefulEngineOptions() const { return m_statefulEngineOptions; }
173 inline bool StatefulEngineOptionsHasBeenSet() const { return m_statefulEngineOptionsHasBeenSet; }
174 template<typename StatefulEngineOptionsT = StatefulEngineOptions>
175 void SetStatefulEngineOptions(StatefulEngineOptionsT&& value) { m_statefulEngineOptionsHasBeenSet = true; m_statefulEngineOptions = std::forward<StatefulEngineOptionsT>(value); }
176 template<typename StatefulEngineOptionsT = StatefulEngineOptions>
177 FirewallPolicy& WithStatefulEngineOptions(StatefulEngineOptionsT&& value) { SetStatefulEngineOptions(std::forward<StatefulEngineOptionsT>(value)); return *this;}
179
181
184 inline const Aws::String& GetTLSInspectionConfigurationArn() const { return m_tLSInspectionConfigurationArn; }
185 inline bool TLSInspectionConfigurationArnHasBeenSet() const { return m_tLSInspectionConfigurationArnHasBeenSet; }
186 template<typename TLSInspectionConfigurationArnT = Aws::String>
187 void SetTLSInspectionConfigurationArn(TLSInspectionConfigurationArnT&& value) { m_tLSInspectionConfigurationArnHasBeenSet = true; m_tLSInspectionConfigurationArn = std::forward<TLSInspectionConfigurationArnT>(value); }
188 template<typename TLSInspectionConfigurationArnT = Aws::String>
189 FirewallPolicy& WithTLSInspectionConfigurationArn(TLSInspectionConfigurationArnT&& value) { SetTLSInspectionConfigurationArn(std::forward<TLSInspectionConfigurationArnT>(value)); return *this;}
191
193
197 inline const PolicyVariables& GetPolicyVariables() const { return m_policyVariables; }
198 inline bool PolicyVariablesHasBeenSet() const { return m_policyVariablesHasBeenSet; }
199 template<typename PolicyVariablesT = PolicyVariables>
200 void SetPolicyVariables(PolicyVariablesT&& value) { m_policyVariablesHasBeenSet = true; m_policyVariables = std::forward<PolicyVariablesT>(value); }
201 template<typename PolicyVariablesT = PolicyVariables>
202 FirewallPolicy& WithPolicyVariables(PolicyVariablesT&& value) { SetPolicyVariables(std::forward<PolicyVariablesT>(value)); return *this;}
204 private:
205
206 Aws::Vector<StatelessRuleGroupReference> m_statelessRuleGroupReferences;
207 bool m_statelessRuleGroupReferencesHasBeenSet = false;
208
209 Aws::Vector<Aws::String> m_statelessDefaultActions;
210 bool m_statelessDefaultActionsHasBeenSet = false;
211
212 Aws::Vector<Aws::String> m_statelessFragmentDefaultActions;
213 bool m_statelessFragmentDefaultActionsHasBeenSet = false;
214
215 Aws::Vector<CustomAction> m_statelessCustomActions;
216 bool m_statelessCustomActionsHasBeenSet = false;
217
218 Aws::Vector<StatefulRuleGroupReference> m_statefulRuleGroupReferences;
219 bool m_statefulRuleGroupReferencesHasBeenSet = false;
220
221 Aws::Vector<Aws::String> m_statefulDefaultActions;
222 bool m_statefulDefaultActionsHasBeenSet = false;
223
224 StatefulEngineOptions m_statefulEngineOptions;
225 bool m_statefulEngineOptionsHasBeenSet = false;
226
227 Aws::String m_tLSInspectionConfigurationArn;
228 bool m_tLSInspectionConfigurationArnHasBeenSet = false;
229
230 PolicyVariables m_policyVariables;
231 bool m_policyVariablesHasBeenSet = false;
232 };
233
234} // namespace Model
235} // namespace NetworkFirewall
236} // namespace Aws
void SetStatefulRuleGroupReferences(StatefulRuleGroupReferencesT &&value)
void SetStatefulEngineOptions(StatefulEngineOptionsT &&value)
FirewallPolicy & WithPolicyVariables(PolicyVariablesT &&value)
void SetStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT &&value)
AWS_NETWORKFIREWALL_API FirewallPolicy(Aws::Utils::Json::JsonView jsonValue)
FirewallPolicy & WithStatefulEngineOptions(StatefulEngineOptionsT &&value)
AWS_NETWORKFIREWALL_API FirewallPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetStatefulDefaultActions() const
const PolicyVariables & GetPolicyVariables() const
const Aws::String & GetTLSInspectionConfigurationArn() const
const Aws::Vector< Aws::String > & GetStatelessDefaultActions() const
FirewallPolicy & AddStatefulRuleGroupReferences(StatefulRuleGroupReferencesT &&value)
FirewallPolicy & WithTLSInspectionConfigurationArn(TLSInspectionConfigurationArnT &&value)
const Aws::Vector< Aws::String > & GetStatelessFragmentDefaultActions() const
AWS_NETWORKFIREWALL_API Aws::Utils::Json::JsonValue Jsonize() const
void SetStatelessCustomActions(StatelessCustomActionsT &&value)
FirewallPolicy & WithStatelessRuleGroupReferences(StatelessRuleGroupReferencesT &&value)
AWS_NETWORKFIREWALL_API FirewallPolicy()=default
void SetStatefulDefaultActions(StatefulDefaultActionsT &&value)
void SetStatelessDefaultActions(StatelessDefaultActionsT &&value)
FirewallPolicy & WithStatelessCustomActions(StatelessCustomActionsT &&value)
FirewallPolicy & AddStatelessRuleGroupReferences(StatelessRuleGroupReferencesT &&value)
FirewallPolicy & AddStatelessCustomActions(StatelessCustomActionsT &&value)
FirewallPolicy & WithStatefulRuleGroupReferences(StatefulRuleGroupReferencesT &&value)
FirewallPolicy & WithStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT &&value)
const Aws::Vector< StatelessRuleGroupReference > & GetStatelessRuleGroupReferences() const
FirewallPolicy & WithStatelessDefaultActions(StatelessDefaultActionsT &&value)
const StatefulEngineOptions & GetStatefulEngineOptions() const
void SetStatelessRuleGroupReferences(StatelessRuleGroupReferencesT &&value)
FirewallPolicy & AddStatelessDefaultActions(StatelessDefaultActionsT &&value)
const Aws::Vector< StatefulRuleGroupReference > & GetStatefulRuleGroupReferences() const
FirewallPolicy & AddStatefulDefaultActions(StatefulDefaultActionsT &&value)
void SetPolicyVariables(PolicyVariablesT &&value)
FirewallPolicy & WithStatefulDefaultActions(StatefulDefaultActionsT &&value)
void SetTLSInspectionConfigurationArn(TLSInspectionConfigurationArnT &&value)
FirewallPolicy & AddStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT &&value)
const Aws::Vector< CustomAction > & GetStatelessCustomActions() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue