AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
InstanceAccessDetails.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/lightsail/Lightsail_EXPORTS.h>
11#include <aws/lightsail/model/HostKeyAttributes.h>
12#include <aws/lightsail/model/InstanceAccessProtocol.h>
13#include <aws/lightsail/model/PasswordData.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Lightsail {
25namespace Model {
26
34 public:
35 AWS_LIGHTSAIL_API InstanceAccessDetails() = default;
38 AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
46 inline const Aws::String& GetCertKey() const { return m_certKey; }
47 inline bool CertKeyHasBeenSet() const { return m_certKeyHasBeenSet; }
48 template <typename CertKeyT = Aws::String>
49 void SetCertKey(CertKeyT&& value) {
50 m_certKeyHasBeenSet = true;
51 m_certKey = std::forward<CertKeyT>(value);
52 }
53 template <typename CertKeyT = Aws::String>
55 SetCertKey(std::forward<CertKeyT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::Utils::DateTime& GetExpiresAt() const { return m_expiresAt; }
65 inline bool ExpiresAtHasBeenSet() const { return m_expiresAtHasBeenSet; }
66 template <typename ExpiresAtT = Aws::Utils::DateTime>
67 void SetExpiresAt(ExpiresAtT&& value) {
68 m_expiresAtHasBeenSet = true;
69 m_expiresAt = std::forward<ExpiresAtT>(value);
70 }
71 template <typename ExpiresAtT = Aws::Utils::DateTime>
72 InstanceAccessDetails& WithExpiresAt(ExpiresAtT&& value) {
73 SetExpiresAt(std::forward<ExpiresAtT>(value));
74 return *this;
75 }
77
79
82 inline const Aws::String& GetIpAddress() const { return m_ipAddress; }
83 inline bool IpAddressHasBeenSet() const { return m_ipAddressHasBeenSet; }
84 template <typename IpAddressT = Aws::String>
85 void SetIpAddress(IpAddressT&& value) {
86 m_ipAddressHasBeenSet = true;
87 m_ipAddress = std::forward<IpAddressT>(value);
88 }
89 template <typename IpAddressT = Aws::String>
90 InstanceAccessDetails& WithIpAddress(IpAddressT&& value) {
91 SetIpAddress(std::forward<IpAddressT>(value));
92 return *this;
93 }
95
97
100 inline const Aws::Vector<Aws::String>& GetIpv6Addresses() const { return m_ipv6Addresses; }
101 inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
102 template <typename Ipv6AddressesT = Aws::Vector<Aws::String>>
103 void SetIpv6Addresses(Ipv6AddressesT&& value) {
104 m_ipv6AddressesHasBeenSet = true;
105 m_ipv6Addresses = std::forward<Ipv6AddressesT>(value);
106 }
107 template <typename Ipv6AddressesT = Aws::Vector<Aws::String>>
108 InstanceAccessDetails& WithIpv6Addresses(Ipv6AddressesT&& value) {
109 SetIpv6Addresses(std::forward<Ipv6AddressesT>(value));
110 return *this;
111 }
112 template <typename Ipv6AddressesT = Aws::String>
113 InstanceAccessDetails& AddIpv6Addresses(Ipv6AddressesT&& value) {
114 m_ipv6AddressesHasBeenSet = true;
115 m_ipv6Addresses.emplace_back(std::forward<Ipv6AddressesT>(value));
116 return *this;
117 }
119
121
132 inline const Aws::String& GetPassword() const { return m_password; }
133 inline bool PasswordHasBeenSet() const { return m_passwordHasBeenSet; }
134 template <typename PasswordT = Aws::String>
135 void SetPassword(PasswordT&& value) {
136 m_passwordHasBeenSet = true;
137 m_password = std::forward<PasswordT>(value);
138 }
139 template <typename PasswordT = Aws::String>
141 SetPassword(std::forward<PasswordT>(value));
142 return *this;
143 }
145
147
154 inline const PasswordData& GetPasswordData() const { return m_passwordData; }
155 inline bool PasswordDataHasBeenSet() const { return m_passwordDataHasBeenSet; }
156 template <typename PasswordDataT = PasswordData>
157 void SetPasswordData(PasswordDataT&& value) {
158 m_passwordDataHasBeenSet = true;
159 m_passwordData = std::forward<PasswordDataT>(value);
160 }
161 template <typename PasswordDataT = PasswordData>
162 InstanceAccessDetails& WithPasswordData(PasswordDataT&& value) {
163 SetPasswordData(std::forward<PasswordDataT>(value));
164 return *this;
165 }
167
169
173 inline const Aws::String& GetPrivateKey() const { return m_privateKey; }
174 inline bool PrivateKeyHasBeenSet() const { return m_privateKeyHasBeenSet; }
175 template <typename PrivateKeyT = Aws::String>
176 void SetPrivateKey(PrivateKeyT&& value) {
177 m_privateKeyHasBeenSet = true;
178 m_privateKey = std::forward<PrivateKeyT>(value);
179 }
180 template <typename PrivateKeyT = Aws::String>
181 InstanceAccessDetails& WithPrivateKey(PrivateKeyT&& value) {
182 SetPrivateKey(std::forward<PrivateKeyT>(value));
183 return *this;
184 }
186
188
191 inline InstanceAccessProtocol GetProtocol() const { return m_protocol; }
192 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
194 m_protocolHasBeenSet = true;
195 m_protocol = value;
196 }
198 SetProtocol(value);
199 return *this;
200 }
202
204
207 inline const Aws::String& GetInstanceName() const { return m_instanceName; }
208 inline bool InstanceNameHasBeenSet() const { return m_instanceNameHasBeenSet; }
209 template <typename InstanceNameT = Aws::String>
210 void SetInstanceName(InstanceNameT&& value) {
211 m_instanceNameHasBeenSet = true;
212 m_instanceName = std::forward<InstanceNameT>(value);
213 }
214 template <typename InstanceNameT = Aws::String>
215 InstanceAccessDetails& WithInstanceName(InstanceNameT&& value) {
216 SetInstanceName(std::forward<InstanceNameT>(value));
217 return *this;
218 }
220
222
225 inline const Aws::String& GetUsername() const { return m_username; }
226 inline bool UsernameHasBeenSet() const { return m_usernameHasBeenSet; }
227 template <typename UsernameT = Aws::String>
228 void SetUsername(UsernameT&& value) {
229 m_usernameHasBeenSet = true;
230 m_username = std::forward<UsernameT>(value);
231 }
232 template <typename UsernameT = Aws::String>
234 SetUsername(std::forward<UsernameT>(value));
235 return *this;
236 }
238
240
243 inline const Aws::Vector<HostKeyAttributes>& GetHostKeys() const { return m_hostKeys; }
244 inline bool HostKeysHasBeenSet() const { return m_hostKeysHasBeenSet; }
245 template <typename HostKeysT = Aws::Vector<HostKeyAttributes>>
246 void SetHostKeys(HostKeysT&& value) {
247 m_hostKeysHasBeenSet = true;
248 m_hostKeys = std::forward<HostKeysT>(value);
249 }
250 template <typename HostKeysT = Aws::Vector<HostKeyAttributes>>
252 SetHostKeys(std::forward<HostKeysT>(value));
253 return *this;
254 }
255 template <typename HostKeysT = HostKeyAttributes>
256 InstanceAccessDetails& AddHostKeys(HostKeysT&& value) {
257 m_hostKeysHasBeenSet = true;
258 m_hostKeys.emplace_back(std::forward<HostKeysT>(value));
259 return *this;
260 }
262 private:
263 Aws::String m_certKey;
264
265 Aws::Utils::DateTime m_expiresAt{};
266
267 Aws::String m_ipAddress;
268
269 Aws::Vector<Aws::String> m_ipv6Addresses;
270
271 Aws::String m_password;
272
273 PasswordData m_passwordData;
274
275 Aws::String m_privateKey;
276
278
279 Aws::String m_instanceName;
280
281 Aws::String m_username;
282
284 bool m_certKeyHasBeenSet = false;
285 bool m_expiresAtHasBeenSet = false;
286 bool m_ipAddressHasBeenSet = false;
287 bool m_ipv6AddressesHasBeenSet = false;
288 bool m_passwordHasBeenSet = false;
289 bool m_passwordDataHasBeenSet = false;
290 bool m_privateKeyHasBeenSet = false;
291 bool m_protocolHasBeenSet = false;
292 bool m_instanceNameHasBeenSet = false;
293 bool m_usernameHasBeenSet = false;
294 bool m_hostKeysHasBeenSet = false;
295};
296
297} // namespace Model
298} // namespace Lightsail
299} // namespace Aws
const Aws::Vector< HostKeyAttributes > & GetHostKeys() const
InstanceAccessDetails & WithProtocol(InstanceAccessProtocol value)
AWS_LIGHTSAIL_API InstanceAccessDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
InstanceAccessDetails & WithExpiresAt(ExpiresAtT &&value)
InstanceAccessDetails & AddHostKeys(HostKeysT &&value)
const Aws::Vector< Aws::String > & GetIpv6Addresses() const
InstanceAccessDetails & WithInstanceName(InstanceNameT &&value)
InstanceAccessDetails & WithPassword(PasswordT &&value)
AWS_LIGHTSAIL_API InstanceAccessDetails(Aws::Utils::Json::JsonView jsonValue)
InstanceAccessDetails & WithIpAddress(IpAddressT &&value)
InstanceAccessDetails & WithHostKeys(HostKeysT &&value)
InstanceAccessDetails & WithPrivateKey(PrivateKeyT &&value)
void SetProtocol(InstanceAccessProtocol value)
InstanceAccessDetails & WithIpv6Addresses(Ipv6AddressesT &&value)
InstanceAccessDetails & WithPasswordData(PasswordDataT &&value)
InstanceAccessDetails & AddIpv6Addresses(Ipv6AddressesT &&value)
AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Utils::DateTime & GetExpiresAt() const
InstanceAccessDetails & WithCertKey(CertKeyT &&value)
AWS_LIGHTSAIL_API InstanceAccessDetails()=default
InstanceAccessDetails & WithUsername(UsernameT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue