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>
27namespace NetworkFirewall
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>>
62 template<
typename StatelessRuleGroupReferencesT = StatelessRuleGroupReference>
63 FirewallPolicy&
AddStatelessRuleGroupReferences(StatelessRuleGroupReferencesT&& value) { m_statelessRuleGroupReferencesHasBeenSet =
true; m_statelessRuleGroupReferences.emplace_back(std::forward<StatelessRuleGroupReferencesT>(value));
return *
this; }
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>>
85 template<
typename StatelessDefaultActionsT = Aws::String>
86 FirewallPolicy&
AddStatelessDefaultActions(StatelessDefaultActionsT&& value) { m_statelessDefaultActionsHasBeenSet =
true; m_statelessDefaultActions.emplace_back(std::forward<StatelessDefaultActionsT>(value));
return *
this; }
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>>
109 template<
typename StatelessFragmentDefaultActionsT = Aws::String>
110 FirewallPolicy&
AddStatelessFragmentDefaultActions(StatelessFragmentDefaultActionsT&& value) { m_statelessFragmentDefaultActionsHasBeenSet =
true; m_statelessFragmentDefaultActions.emplace_back(std::forward<StatelessFragmentDefaultActionsT>(value));
return *
this; }
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>>
126 template<
typename StatelessCustomActionsT = CustomAction>
127 FirewallPolicy&
AddStatelessCustomActions(StatelessCustomActionsT&& value) { m_statelessCustomActionsHasBeenSet =
true; m_statelessCustomActions.emplace_back(std::forward<StatelessCustomActionsT>(value));
return *
this; }
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>>
141 template<
typename StatefulRuleGroupReferencesT = StatefulRuleGroupReference>
142 FirewallPolicy&
AddStatefulRuleGroupReferences(StatefulRuleGroupReferencesT&& value) { m_statefulRuleGroupReferencesHasBeenSet =
true; m_statefulRuleGroupReferences.emplace_back(std::forward<StatefulRuleGroupReferencesT>(value));
return *
this; }
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>>
162 template<
typename StatefulDefaultActionsT = Aws::String>
163 FirewallPolicy&
AddStatefulDefaultActions(StatefulDefaultActionsT&& value) { m_statefulDefaultActionsHasBeenSet =
true; m_statefulDefaultActions.emplace_back(std::forward<StatefulDefaultActionsT>(value));
return *
this; }
174 template<
typename StatefulEngineOptionsT = StatefulEngineOptions>
175 void SetStatefulEngineOptions(StatefulEngineOptionsT&& value) { m_statefulEngineOptionsHasBeenSet =
true; m_statefulEngineOptions = std::forward<StatefulEngineOptionsT>(value); }
176 template<
typename StatefulEngineOptionsT = StatefulEngineOptions>
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>
199 template<
typename PolicyVariablesT = PolicyVariables>
200 void SetPolicyVariables(PolicyVariablesT&& value) { m_policyVariablesHasBeenSet =
true; m_policyVariables = std::forward<PolicyVariablesT>(value); }
201 template<
typename PolicyVariablesT = PolicyVariables>
207 bool m_statelessRuleGroupReferencesHasBeenSet =
false;
210 bool m_statelessDefaultActionsHasBeenSet =
false;
213 bool m_statelessFragmentDefaultActionsHasBeenSet =
false;
216 bool m_statelessCustomActionsHasBeenSet =
false;
219 bool m_statefulRuleGroupReferencesHasBeenSet =
false;
222 bool m_statefulDefaultActionsHasBeenSet =
false;
225 bool m_statefulEngineOptionsHasBeenSet =
false;
228 bool m_tLSInspectionConfigurationArnHasBeenSet =
false;
231 bool m_policyVariablesHasBeenSet =
false;
bool TLSInspectionConfigurationArnHasBeenSet() const
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)
bool StatelessCustomActionsHasBeenSet() const
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)
bool StatelessRuleGroupReferencesHasBeenSet() const
void SetStatelessDefaultActions(StatelessDefaultActionsT &&value)
FirewallPolicy & WithStatelessCustomActions(StatelessCustomActionsT &&value)
bool StatefulEngineOptionsHasBeenSet() const
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
bool StatefulRuleGroupReferencesHasBeenSet() const
bool StatefulDefaultActionsHasBeenSet() const
bool PolicyVariablesHasBeenSet() const
void SetStatelessRuleGroupReferences(StatelessRuleGroupReferencesT &&value)
FirewallPolicy & AddStatelessDefaultActions(StatelessDefaultActionsT &&value)
bool StatelessFragmentDefaultActionsHasBeenSet() const
const Aws::Vector< StatefulRuleGroupReference > & GetStatefulRuleGroupReferences() const
FirewallPolicy & AddStatefulDefaultActions(StatefulDefaultActionsT &&value)
void SetPolicyVariables(PolicyVariablesT &&value)
FirewallPolicy & WithStatefulDefaultActions(StatefulDefaultActionsT &&value)
bool StatelessDefaultActionsHasBeenSet() const
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