AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
AnalysisAclRule.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/PortRange.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2
23{
24namespace Model
25{
26
33 {
34 public:
35 AWS_EC2_API AnalysisAclRule() = default;
36 AWS_EC2_API AnalysisAclRule(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
40 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
41
42
44
47 inline const Aws::String& GetCidr() const { return m_cidr; }
48 inline bool CidrHasBeenSet() const { return m_cidrHasBeenSet; }
49 template<typename CidrT = Aws::String>
50 void SetCidr(CidrT&& value) { m_cidrHasBeenSet = true; m_cidr = std::forward<CidrT>(value); }
51 template<typename CidrT = Aws::String>
52 AnalysisAclRule& WithCidr(CidrT&& value) { SetCidr(std::forward<CidrT>(value)); return *this;}
54
56
59 inline bool GetEgress() const { return m_egress; }
60 inline bool EgressHasBeenSet() const { return m_egressHasBeenSet; }
61 inline void SetEgress(bool value) { m_egressHasBeenSet = true; m_egress = value; }
62 inline AnalysisAclRule& WithEgress(bool value) { SetEgress(value); return *this;}
64
66
69 inline const PortRange& GetPortRange() const { return m_portRange; }
70 inline bool PortRangeHasBeenSet() const { return m_portRangeHasBeenSet; }
71 template<typename PortRangeT = PortRange>
72 void SetPortRange(PortRangeT&& value) { m_portRangeHasBeenSet = true; m_portRange = std::forward<PortRangeT>(value); }
73 template<typename PortRangeT = PortRange>
74 AnalysisAclRule& WithPortRange(PortRangeT&& value) { SetPortRange(std::forward<PortRangeT>(value)); return *this;}
76
78
81 inline const Aws::String& GetProtocol() const { return m_protocol; }
82 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
83 template<typename ProtocolT = Aws::String>
84 void SetProtocol(ProtocolT&& value) { m_protocolHasBeenSet = true; m_protocol = std::forward<ProtocolT>(value); }
85 template<typename ProtocolT = Aws::String>
86 AnalysisAclRule& WithProtocol(ProtocolT&& value) { SetProtocol(std::forward<ProtocolT>(value)); return *this;}
88
90
93 inline const Aws::String& GetRuleAction() const { return m_ruleAction; }
94 inline bool RuleActionHasBeenSet() const { return m_ruleActionHasBeenSet; }
95 template<typename RuleActionT = Aws::String>
96 void SetRuleAction(RuleActionT&& value) { m_ruleActionHasBeenSet = true; m_ruleAction = std::forward<RuleActionT>(value); }
97 template<typename RuleActionT = Aws::String>
98 AnalysisAclRule& WithRuleAction(RuleActionT&& value) { SetRuleAction(std::forward<RuleActionT>(value)); return *this;}
100
102
105 inline int GetRuleNumber() const { return m_ruleNumber; }
106 inline bool RuleNumberHasBeenSet() const { return m_ruleNumberHasBeenSet; }
107 inline void SetRuleNumber(int value) { m_ruleNumberHasBeenSet = true; m_ruleNumber = value; }
108 inline AnalysisAclRule& WithRuleNumber(int value) { SetRuleNumber(value); return *this;}
110 private:
111
112 Aws::String m_cidr;
113 bool m_cidrHasBeenSet = false;
114
115 bool m_egress{false};
116 bool m_egressHasBeenSet = false;
117
118 PortRange m_portRange;
119 bool m_portRangeHasBeenSet = false;
120
121 Aws::String m_protocol;
122 bool m_protocolHasBeenSet = false;
123
124 Aws::String m_ruleAction;
125 bool m_ruleActionHasBeenSet = false;
126
127 int m_ruleNumber{0};
128 bool m_ruleNumberHasBeenSet = false;
129 };
130
131} // namespace Model
132} // namespace EC2
133} // namespace Aws
const PortRange & GetPortRange() const
const Aws::String & GetCidr() const
AnalysisAclRule & WithPortRange(PortRangeT &&value)
AnalysisAclRule & WithEgress(bool value)
AnalysisAclRule & WithRuleNumber(int value)
AnalysisAclRule & WithRuleAction(RuleActionT &&value)
void SetPortRange(PortRangeT &&value)
AnalysisAclRule & WithCidr(CidrT &&value)
void SetProtocol(ProtocolT &&value)
AWS_EC2_API AnalysisAclRule & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API AnalysisAclRule()=default
void SetRuleAction(RuleActionT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::String & GetRuleAction() const
AWS_EC2_API AnalysisAclRule(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetProtocol() const
AnalysisAclRule & WithProtocol(ProtocolT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream