AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
PolicyOption.h
1
6#pragma once
7#include <aws/fms/FMS_EXPORTS.h>
8#include <aws/fms/model/NetworkAclCommonPolicy.h>
9#include <aws/fms/model/NetworkFirewallPolicy.h>
10#include <aws/fms/model/ThirdPartyFirewallPolicy.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace FMS {
22namespace Model {
23
32 public:
33 AWS_FMS_API PolicyOption() = default;
37
39
42 inline const NetworkFirewallPolicy& GetNetworkFirewallPolicy() const { return m_networkFirewallPolicy; }
43 inline bool NetworkFirewallPolicyHasBeenSet() const { return m_networkFirewallPolicyHasBeenSet; }
44 template <typename NetworkFirewallPolicyT = NetworkFirewallPolicy>
45 void SetNetworkFirewallPolicy(NetworkFirewallPolicyT&& value) {
46 m_networkFirewallPolicyHasBeenSet = true;
47 m_networkFirewallPolicy = std::forward<NetworkFirewallPolicyT>(value);
48 }
49 template <typename NetworkFirewallPolicyT = NetworkFirewallPolicy>
50 PolicyOption& WithNetworkFirewallPolicy(NetworkFirewallPolicyT&& value) {
51 SetNetworkFirewallPolicy(std::forward<NetworkFirewallPolicyT>(value));
52 return *this;
53 }
55
57
60 inline const ThirdPartyFirewallPolicy& GetThirdPartyFirewallPolicy() const { return m_thirdPartyFirewallPolicy; }
61 inline bool ThirdPartyFirewallPolicyHasBeenSet() const { return m_thirdPartyFirewallPolicyHasBeenSet; }
62 template <typename ThirdPartyFirewallPolicyT = ThirdPartyFirewallPolicy>
63 void SetThirdPartyFirewallPolicy(ThirdPartyFirewallPolicyT&& value) {
64 m_thirdPartyFirewallPolicyHasBeenSet = true;
65 m_thirdPartyFirewallPolicy = std::forward<ThirdPartyFirewallPolicyT>(value);
66 }
67 template <typename ThirdPartyFirewallPolicyT = ThirdPartyFirewallPolicy>
68 PolicyOption& WithThirdPartyFirewallPolicy(ThirdPartyFirewallPolicyT&& value) {
69 SetThirdPartyFirewallPolicy(std::forward<ThirdPartyFirewallPolicyT>(value));
70 return *this;
71 }
73
75
78 inline const NetworkAclCommonPolicy& GetNetworkAclCommonPolicy() const { return m_networkAclCommonPolicy; }
79 inline bool NetworkAclCommonPolicyHasBeenSet() const { return m_networkAclCommonPolicyHasBeenSet; }
80 template <typename NetworkAclCommonPolicyT = NetworkAclCommonPolicy>
81 void SetNetworkAclCommonPolicy(NetworkAclCommonPolicyT&& value) {
82 m_networkAclCommonPolicyHasBeenSet = true;
83 m_networkAclCommonPolicy = std::forward<NetworkAclCommonPolicyT>(value);
84 }
85 template <typename NetworkAclCommonPolicyT = NetworkAclCommonPolicy>
86 PolicyOption& WithNetworkAclCommonPolicy(NetworkAclCommonPolicyT&& value) {
87 SetNetworkAclCommonPolicy(std::forward<NetworkAclCommonPolicyT>(value));
88 return *this;
89 }
91 private:
92 NetworkFirewallPolicy m_networkFirewallPolicy;
93
94 ThirdPartyFirewallPolicy m_thirdPartyFirewallPolicy;
95
96 NetworkAclCommonPolicy m_networkAclCommonPolicy;
97 bool m_networkFirewallPolicyHasBeenSet = false;
98 bool m_thirdPartyFirewallPolicyHasBeenSet = false;
99 bool m_networkAclCommonPolicyHasBeenSet = false;
100};
101
102} // namespace Model
103} // namespace FMS
104} // namespace Aws
const NetworkFirewallPolicy & GetNetworkFirewallPolicy() const
AWS_FMS_API PolicyOption & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetNetworkAclCommonPolicy(NetworkAclCommonPolicyT &&value)
PolicyOption & WithNetworkAclCommonPolicy(NetworkAclCommonPolicyT &&value)
bool NetworkAclCommonPolicyHasBeenSet() const
const ThirdPartyFirewallPolicy & GetThirdPartyFirewallPolicy() const
AWS_FMS_API PolicyOption()=default
bool ThirdPartyFirewallPolicyHasBeenSet() const
const NetworkAclCommonPolicy & GetNetworkAclCommonPolicy() const
bool NetworkFirewallPolicyHasBeenSet() const
AWS_FMS_API PolicyOption(Aws::Utils::Json::JsonView jsonValue)
void SetNetworkFirewallPolicy(NetworkFirewallPolicyT &&value)
PolicyOption & WithThirdPartyFirewallPolicy(ThirdPartyFirewallPolicyT &&value)
AWS_FMS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetThirdPartyFirewallPolicy(ThirdPartyFirewallPolicyT &&value)
PolicyOption & WithNetworkFirewallPolicy(NetworkFirewallPolicyT &&value)
Aws::Utils::Json::JsonValue JsonValue