AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
TargetAddress.h
1
6#pragma once
7#include <aws/route53resolver/Route53Resolver_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/route53resolver/model/Protocol.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Route53Resolver
23{
24namespace Model
25{
26
36 {
37 public:
38 AWS_ROUTE53RESOLVER_API TargetAddress() = default;
39 AWS_ROUTE53RESOLVER_API TargetAddress(Aws::Utils::Json::JsonView jsonValue);
40 AWS_ROUTE53RESOLVER_API TargetAddress& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_ROUTE53RESOLVER_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::String& GetIp() const { return m_ip; }
49 inline bool IpHasBeenSet() const { return m_ipHasBeenSet; }
50 template<typename IpT = Aws::String>
51 void SetIp(IpT&& value) { m_ipHasBeenSet = true; m_ip = std::forward<IpT>(value); }
52 template<typename IpT = Aws::String>
53 TargetAddress& WithIp(IpT&& value) { SetIp(std::forward<IpT>(value)); return *this;}
55
57
60 inline int GetPort() const { return m_port; }
61 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
62 inline void SetPort(int value) { m_portHasBeenSet = true; m_port = value; }
63 inline TargetAddress& WithPort(int value) { SetPort(value); return *this;}
65
67
70 inline const Aws::String& GetIpv6() const { return m_ipv6; }
71 inline bool Ipv6HasBeenSet() const { return m_ipv6HasBeenSet; }
72 template<typename Ipv6T = Aws::String>
73 void SetIpv6(Ipv6T&& value) { m_ipv6HasBeenSet = true; m_ipv6 = std::forward<Ipv6T>(value); }
74 template<typename Ipv6T = Aws::String>
75 TargetAddress& WithIpv6(Ipv6T&& value) { SetIpv6(std::forward<Ipv6T>(value)); return *this;}
77
79
83 inline Protocol GetProtocol() const { return m_protocol; }
84 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
85 inline void SetProtocol(Protocol value) { m_protocolHasBeenSet = true; m_protocol = value; }
86 inline TargetAddress& WithProtocol(Protocol value) { SetProtocol(value); return *this;}
88
90
95 inline const Aws::String& GetServerNameIndication() const { return m_serverNameIndication; }
96 inline bool ServerNameIndicationHasBeenSet() const { return m_serverNameIndicationHasBeenSet; }
97 template<typename ServerNameIndicationT = Aws::String>
98 void SetServerNameIndication(ServerNameIndicationT&& value) { m_serverNameIndicationHasBeenSet = true; m_serverNameIndication = std::forward<ServerNameIndicationT>(value); }
99 template<typename ServerNameIndicationT = Aws::String>
100 TargetAddress& WithServerNameIndication(ServerNameIndicationT&& value) { SetServerNameIndication(std::forward<ServerNameIndicationT>(value)); return *this;}
102 private:
103
104 Aws::String m_ip;
105 bool m_ipHasBeenSet = false;
106
107 int m_port{0};
108 bool m_portHasBeenSet = false;
109
110 Aws::String m_ipv6;
111 bool m_ipv6HasBeenSet = false;
112
113 Protocol m_protocol{Protocol::NOT_SET};
114 bool m_protocolHasBeenSet = false;
115
116 Aws::String m_serverNameIndication;
117 bool m_serverNameIndicationHasBeenSet = false;
118 };
119
120} // namespace Model
121} // namespace Route53Resolver
122} // 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