AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
TargetAddress.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/route53resolver/Route53Resolver_EXPORTS.h>
9#include <aws/route53resolver/model/Protocol.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace Route53Resolver {
21namespace Model {
22
32 public:
33 AWS_ROUTE53RESOLVER_API TargetAddress() = default;
34 AWS_ROUTE53RESOLVER_API TargetAddress(Aws::Utils::Json::JsonView jsonValue);
35 AWS_ROUTE53RESOLVER_API TargetAddress& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_ROUTE53RESOLVER_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetIp() const { return m_ip; }
43 inline bool IpHasBeenSet() const { return m_ipHasBeenSet; }
44 template <typename IpT = Aws::String>
45 void SetIp(IpT&& value) {
46 m_ipHasBeenSet = true;
47 m_ip = std::forward<IpT>(value);
48 }
49 template <typename IpT = Aws::String>
50 TargetAddress& WithIp(IpT&& value) {
51 SetIp(std::forward<IpT>(value));
52 return *this;
53 }
55
57
60 inline int GetPort() const { return m_port; }
61 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
62 inline void SetPort(int value) {
63 m_portHasBeenSet = true;
64 m_port = value;
65 }
66 inline TargetAddress& WithPort(int value) {
67 SetPort(value);
68 return *this;
69 }
71
73
76 inline const Aws::String& GetIpv6() const { return m_ipv6; }
77 inline bool Ipv6HasBeenSet() const { return m_ipv6HasBeenSet; }
78 template <typename Ipv6T = Aws::String>
79 void SetIpv6(Ipv6T&& value) {
80 m_ipv6HasBeenSet = true;
81 m_ipv6 = std::forward<Ipv6T>(value);
82 }
83 template <typename Ipv6T = Aws::String>
84 TargetAddress& WithIpv6(Ipv6T&& value) {
85 SetIpv6(std::forward<Ipv6T>(value));
86 return *this;
87 }
89
91
95 inline Protocol GetProtocol() const { return m_protocol; }
96 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
97 inline void SetProtocol(Protocol value) {
98 m_protocolHasBeenSet = true;
99 m_protocol = value;
100 }
102 SetProtocol(value);
103 return *this;
104 }
106
108
113 inline const Aws::String& GetServerNameIndication() const { return m_serverNameIndication; }
114 inline bool ServerNameIndicationHasBeenSet() const { return m_serverNameIndicationHasBeenSet; }
115 template <typename ServerNameIndicationT = Aws::String>
116 void SetServerNameIndication(ServerNameIndicationT&& value) {
117 m_serverNameIndicationHasBeenSet = true;
118 m_serverNameIndication = std::forward<ServerNameIndicationT>(value);
119 }
120 template <typename ServerNameIndicationT = Aws::String>
121 TargetAddress& WithServerNameIndication(ServerNameIndicationT&& value) {
122 SetServerNameIndication(std::forward<ServerNameIndicationT>(value));
123 return *this;
124 }
126 private:
127 Aws::String m_ip;
128
129 int m_port{0};
130
131 Aws::String m_ipv6;
132
133 Protocol m_protocol{Protocol::NOT_SET};
134
135 Aws::String m_serverNameIndication;
136 bool m_ipHasBeenSet = false;
137 bool m_portHasBeenSet = false;
138 bool m_ipv6HasBeenSet = false;
139 bool m_protocolHasBeenSet = false;
140 bool m_serverNameIndicationHasBeenSet = false;
141};
142
143} // namespace Model
144} // namespace Route53Resolver
145} // namespace Aws
const Aws::String & GetServerNameIndication() const
const Aws::String & GetIpv6() const
AWS_ROUTE53RESOLVER_API TargetAddress & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_ROUTE53RESOLVER_API Aws::Utils::Json::JsonValue Jsonize() const
TargetAddress & WithProtocol(Protocol value)
void SetServerNameIndication(ServerNameIndicationT &&value)
TargetAddress & WithIp(IpT &&value)
AWS_ROUTE53RESOLVER_API TargetAddress()=default
TargetAddress & WithIpv6(Ipv6T &&value)
TargetAddress & WithServerNameIndication(ServerNameIndicationT &&value)
AWS_ROUTE53RESOLVER_API TargetAddress(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue