AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
AnalysisSecurityGroupRule.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 AnalysisSecurityGroupRule() = default;
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 AnalysisSecurityGroupRule& WithCidr(CidrT&& value) { SetCidr(std::forward<CidrT>(value)); return *this;}
54
56
60 inline const Aws::String& GetDirection() const { return m_direction; }
61 inline bool DirectionHasBeenSet() const { return m_directionHasBeenSet; }
62 template<typename DirectionT = Aws::String>
63 void SetDirection(DirectionT&& value) { m_directionHasBeenSet = true; m_direction = std::forward<DirectionT>(value); }
64 template<typename DirectionT = Aws::String>
65 AnalysisSecurityGroupRule& WithDirection(DirectionT&& value) { SetDirection(std::forward<DirectionT>(value)); return *this;}
67
69
72 inline const Aws::String& GetSecurityGroupId() const { return m_securityGroupId; }
73 inline bool SecurityGroupIdHasBeenSet() const { return m_securityGroupIdHasBeenSet; }
74 template<typename SecurityGroupIdT = Aws::String>
75 void SetSecurityGroupId(SecurityGroupIdT&& value) { m_securityGroupIdHasBeenSet = true; m_securityGroupId = std::forward<SecurityGroupIdT>(value); }
76 template<typename SecurityGroupIdT = Aws::String>
77 AnalysisSecurityGroupRule& WithSecurityGroupId(SecurityGroupIdT&& value) { SetSecurityGroupId(std::forward<SecurityGroupIdT>(value)); return *this;}
79
81
84 inline const PortRange& GetPortRange() const { return m_portRange; }
85 inline bool PortRangeHasBeenSet() const { return m_portRangeHasBeenSet; }
86 template<typename PortRangeT = PortRange>
87 void SetPortRange(PortRangeT&& value) { m_portRangeHasBeenSet = true; m_portRange = std::forward<PortRangeT>(value); }
88 template<typename PortRangeT = PortRange>
89 AnalysisSecurityGroupRule& WithPortRange(PortRangeT&& value) { SetPortRange(std::forward<PortRangeT>(value)); return *this;}
91
93
96 inline const Aws::String& GetPrefixListId() const { return m_prefixListId; }
97 inline bool PrefixListIdHasBeenSet() const { return m_prefixListIdHasBeenSet; }
98 template<typename PrefixListIdT = Aws::String>
99 void SetPrefixListId(PrefixListIdT&& value) { m_prefixListIdHasBeenSet = true; m_prefixListId = std::forward<PrefixListIdT>(value); }
100 template<typename PrefixListIdT = Aws::String>
101 AnalysisSecurityGroupRule& WithPrefixListId(PrefixListIdT&& value) { SetPrefixListId(std::forward<PrefixListIdT>(value)); return *this;}
103
105
108 inline const Aws::String& GetProtocol() const { return m_protocol; }
109 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
110 template<typename ProtocolT = Aws::String>
111 void SetProtocol(ProtocolT&& value) { m_protocolHasBeenSet = true; m_protocol = std::forward<ProtocolT>(value); }
112 template<typename ProtocolT = Aws::String>
113 AnalysisSecurityGroupRule& WithProtocol(ProtocolT&& value) { SetProtocol(std::forward<ProtocolT>(value)); return *this;}
115 private:
116
117 Aws::String m_cidr;
118 bool m_cidrHasBeenSet = false;
119
120 Aws::String m_direction;
121 bool m_directionHasBeenSet = false;
122
123 Aws::String m_securityGroupId;
124 bool m_securityGroupIdHasBeenSet = false;
125
126 PortRange m_portRange;
127 bool m_portRangeHasBeenSet = false;
128
129 Aws::String m_prefixListId;
130 bool m_prefixListIdHasBeenSet = false;
131
132 Aws::String m_protocol;
133 bool m_protocolHasBeenSet = false;
134 };
135
136} // namespace Model
137} // namespace EC2
138} // namespace Aws
AWS_EC2_API AnalysisSecurityGroupRule()=default
AnalysisSecurityGroupRule & WithPrefixListId(PrefixListIdT &&value)
AWS_EC2_API AnalysisSecurityGroupRule & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AnalysisSecurityGroupRule & WithProtocol(ProtocolT &&value)
AnalysisSecurityGroupRule & WithCidr(CidrT &&value)
AWS_EC2_API AnalysisSecurityGroupRule(const Aws::Utils::Xml::XmlNode &xmlNode)
AnalysisSecurityGroupRule & WithSecurityGroupId(SecurityGroupIdT &&value)
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
AnalysisSecurityGroupRule & WithPortRange(PortRangeT &&value)
AnalysisSecurityGroupRule & WithDirection(DirectionT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream