7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/PortRange.h>
44 template <
typename RuleGroupArnT = Aws::String>
46 m_ruleGroupArnHasBeenSet =
true;
47 m_ruleGroupArn = std::forward<RuleGroupArnT>(value);
49 template <
typename RuleGroupArnT = Aws::String>
62 template <
typename SourcesT = Aws::Vector<Aws::String>>
64 m_sourcesHasBeenSet =
true;
65 m_sources = std::forward<SourcesT>(value);
67 template <
typename SourcesT = Aws::Vector<Aws::String>>
72 template <
typename SourcesT = Aws::String>
74 m_sourcesHasBeenSet =
true;
75 m_sources.emplace_back(std::forward<SourcesT>(value));
86 template <
typename DestinationsT = Aws::Vector<Aws::String>>
88 m_destinationsHasBeenSet =
true;
89 m_destinations = std::forward<DestinationsT>(value);
91 template <
typename DestinationsT = Aws::Vector<Aws::String>>
96 template <
typename DestinationsT = Aws::String>
98 m_destinationsHasBeenSet =
true;
99 m_destinations.emplace_back(std::forward<DestinationsT>(value));
110 template <
typename SourcePortsT = Aws::Vector<PortRange>>
112 m_sourcePortsHasBeenSet =
true;
113 m_sourcePorts = std::forward<SourcePortsT>(value);
115 template <
typename SourcePortsT = Aws::Vector<PortRange>>
120 template <
typename SourcePortsT = PortRange>
122 m_sourcePortsHasBeenSet =
true;
123 m_sourcePorts.emplace_back(std::forward<SourcePortsT>(value));
134 template <
typename DestinationPortsT = Aws::Vector<PortRange>>
136 m_destinationPortsHasBeenSet =
true;
137 m_destinationPorts = std::forward<DestinationPortsT>(value);
139 template <
typename DestinationPortsT = Aws::Vector<PortRange>>
144 template <
typename DestinationPortsT = PortRange>
146 m_destinationPortsHasBeenSet =
true;
147 m_destinationPorts.emplace_back(std::forward<DestinationPortsT>(value));
158 template <
typename ProtocolsT = Aws::Vector<
int>>
160 m_protocolsHasBeenSet =
true;
161 m_protocols = std::forward<ProtocolsT>(value);
163 template <
typename ProtocolsT = Aws::Vector<
int>>
169 m_protocolsHasBeenSet =
true;
170 m_protocols.push_back(value);
182 template <
typename RuleActionT = Aws::String>
184 m_ruleActionHasBeenSet =
true;
185 m_ruleAction = std::forward<RuleActionT>(value);
187 template <
typename RuleActionT = Aws::String>
201 m_priorityHasBeenSet =
true;
225 bool m_ruleGroupArnHasBeenSet =
false;
226 bool m_sourcesHasBeenSet =
false;
227 bool m_destinationsHasBeenSet =
false;
228 bool m_sourcePortsHasBeenSet =
false;
229 bool m_destinationPortsHasBeenSet =
false;
230 bool m_protocolsHasBeenSet =
false;
231 bool m_ruleActionHasBeenSet =
false;
232 bool m_priorityHasBeenSet =
false;
bool ProtocolsHasBeenSet() const
FirewallStatelessRule & WithSourcePorts(SourcePortsT &&value)
FirewallStatelessRule & AddDestinationPorts(DestinationPortsT &&value)
FirewallStatelessRule & WithSources(SourcesT &&value)
FirewallStatelessRule & WithPriority(int value)
FirewallStatelessRule & AddSources(SourcesT &&value)
FirewallStatelessRule & AddProtocols(int value)
void SetDestinations(DestinationsT &&value)
FirewallStatelessRule & AddSourcePorts(SourcePortsT &&value)
void SetSources(SourcesT &&value)
void SetSourcePorts(SourcePortsT &&value)
const Aws::Vector< Aws::String > & GetDestinations() const
void SetRuleAction(RuleActionT &&value)
AWS_EC2_API FirewallStatelessRule(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetRuleGroupArn() const
FirewallStatelessRule & AddDestinations(DestinationsT &&value)
const Aws::Vector< int > & GetProtocols() const
bool PriorityHasBeenSet() const
bool RuleGroupArnHasBeenSet() const
FirewallStatelessRule & WithDestinations(DestinationsT &&value)
const Aws::String & GetRuleAction() const
bool SourcesHasBeenSet() const
void SetDestinationPorts(DestinationPortsT &&value)
void SetRuleGroupArn(RuleGroupArnT &&value)
bool RuleActionHasBeenSet() const
bool SourcePortsHasBeenSet() const
void SetPriority(int value)
AWS_EC2_API FirewallStatelessRule()=default
FirewallStatelessRule & WithRuleAction(RuleActionT &&value)
const Aws::Vector< Aws::String > & GetSources() const
bool DestinationPortsHasBeenSet() const
AWS_EC2_API FirewallStatelessRule & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< PortRange > & GetDestinationPorts() const
FirewallStatelessRule & WithRuleGroupArn(RuleGroupArnT &&value)
FirewallStatelessRule & WithDestinationPorts(DestinationPortsT &&value)
FirewallStatelessRule & WithProtocols(ProtocolsT &&value)
void SetProtocols(ProtocolsT &&value)
bool DestinationsHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Vector< PortRange > & GetSourcePorts() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream