7#include <aws/network-firewall/NetworkFirewall_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/network-firewall/model/Address.h>
10#include <aws/network-firewall/model/PortRange.h>
11#include <aws/network-firewall/model/TCPFlagField.h>
24namespace NetworkFirewall
53 template<
typename SourcesT = Aws::Vector<Address>>
54 void SetSources(SourcesT&& value) { m_sourcesHasBeenSet =
true; m_sources = std::forward<SourcesT>(value); }
55 template<
typename SourcesT = Aws::Vector<Address>>
57 template<
typename SourcesT = Address>
58 MatchAttributes&
AddSources(SourcesT&& value) { m_sourcesHasBeenSet =
true; m_sources.emplace_back(std::forward<SourcesT>(value));
return *
this; }
68 template<
typename DestinationsT = Aws::Vector<Address>>
69 void SetDestinations(DestinationsT&& value) { m_destinationsHasBeenSet =
true; m_destinations = std::forward<DestinationsT>(value); }
70 template<
typename DestinationsT = Aws::Vector<Address>>
72 template<
typename DestinationsT = Address>
73 MatchAttributes&
AddDestinations(DestinationsT&& value) { m_destinationsHasBeenSet =
true; m_destinations.emplace_back(std::forward<DestinationsT>(value));
return *
this; }
86 template<
typename SourcePortsT = Aws::Vector<PortRange>>
87 void SetSourcePorts(SourcePortsT&& value) { m_sourcePortsHasBeenSet =
true; m_sourcePorts = std::forward<SourcePortsT>(value); }
88 template<
typename SourcePortsT = Aws::Vector<PortRange>>
90 template<
typename SourcePortsT = PortRange>
91 MatchAttributes&
AddSourcePorts(SourcePortsT&& value) { m_sourcePortsHasBeenSet =
true; m_sourcePorts.emplace_back(std::forward<SourcePortsT>(value));
return *
this; }
103 template<
typename DestinationPortsT = Aws::Vector<PortRange>>
104 void SetDestinationPorts(DestinationPortsT&& value) { m_destinationPortsHasBeenSet =
true; m_destinationPorts = std::forward<DestinationPortsT>(value); }
105 template<
typename DestinationPortsT = Aws::Vector<PortRange>>
107 template<
typename DestinationPortsT = PortRange>
108 MatchAttributes&
AddDestinationPorts(DestinationPortsT&& value) { m_destinationPortsHasBeenSet =
true; m_destinationPorts.emplace_back(std::forward<DestinationPortsT>(value));
return *
this; }
119 template<
typename ProtocolsT = Aws::Vector<
int>>
120 void SetProtocols(ProtocolsT&& value) { m_protocolsHasBeenSet =
true; m_protocols = std::forward<ProtocolsT>(value); }
121 template<
typename ProtocolsT = Aws::Vector<
int>>
133 template<
typename TCPFlagsT = Aws::Vector<TCPFlagField>>
134 void SetTCPFlags(TCPFlagsT&& value) { m_tCPFlagsHasBeenSet =
true; m_tCPFlags = std::forward<TCPFlagsT>(value); }
135 template<
typename TCPFlagsT = Aws::Vector<TCPFlagField>>
137 template<
typename TCPFlagsT = TCPFlagField>
138 MatchAttributes&
AddTCPFlags(TCPFlagsT&& value) { m_tCPFlagsHasBeenSet =
true; m_tCPFlags.emplace_back(std::forward<TCPFlagsT>(value));
return *
this; }
143 bool m_sourcesHasBeenSet =
false;
146 bool m_destinationsHasBeenSet =
false;
149 bool m_sourcePortsHasBeenSet =
false;
152 bool m_destinationPortsHasBeenSet =
false;
155 bool m_protocolsHasBeenSet =
false;
158 bool m_tCPFlagsHasBeenSet =
false;
AWS_NETWORKFIREWALL_API MatchAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetDestinations(DestinationsT &&value)
bool ProtocolsHasBeenSet() const
MatchAttributes & AddProtocols(int value)
MatchAttributes & AddDestinations(DestinationsT &&value)
const Aws::Vector< int > & GetProtocols() const
MatchAttributes & WithProtocols(ProtocolsT &&value)
bool DestinationPortsHasBeenSet() const
const Aws::Vector< PortRange > & GetSourcePorts() const
bool TCPFlagsHasBeenSet() const
bool SourcesHasBeenSet() const
MatchAttributes & WithSourcePorts(SourcePortsT &&value)
AWS_NETWORKFIREWALL_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< PortRange > & GetDestinationPorts() const
void SetProtocols(ProtocolsT &&value)
void SetDestinationPorts(DestinationPortsT &&value)
bool SourcePortsHasBeenSet() const
MatchAttributes & AddDestinationPorts(DestinationPortsT &&value)
void SetSources(SourcesT &&value)
void SetSourcePorts(SourcePortsT &&value)
MatchAttributes & AddSourcePorts(SourcePortsT &&value)
MatchAttributes & AddTCPFlags(TCPFlagsT &&value)
AWS_NETWORKFIREWALL_API MatchAttributes(Aws::Utils::Json::JsonView jsonValue)
MatchAttributes & WithSources(SourcesT &&value)
const Aws::Vector< TCPFlagField > & GetTCPFlags() const
AWS_NETWORKFIREWALL_API MatchAttributes()=default
void SetTCPFlags(TCPFlagsT &&value)
MatchAttributes & WithDestinationPorts(DestinationPortsT &&value)
MatchAttributes & WithTCPFlags(TCPFlagsT &&value)
MatchAttributes & WithDestinations(DestinationsT &&value)
bool DestinationsHasBeenSet() const
const Aws::Vector< Address > & GetDestinations() const
const Aws::Vector< Address > & GetSources() const
MatchAttributes & AddSources(SourcesT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue