AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
InstanceAccessDetails.h
1
6#pragma once
7#include <aws/lightsail/Lightsail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/lightsail/model/PasswordData.h>
12#include <aws/lightsail/model/InstanceAccessProtocol.h>
13#include <aws/lightsail/model/HostKeyAttributes.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace Lightsail
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_LIGHTSAIL_API InstanceAccessDetails() = default;
43 AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
52 inline const Aws::String& GetCertKey() const { return m_certKey; }
53 inline bool CertKeyHasBeenSet() const { return m_certKeyHasBeenSet; }
54 template<typename CertKeyT = Aws::String>
55 void SetCertKey(CertKeyT&& value) { m_certKeyHasBeenSet = true; m_certKey = std::forward<CertKeyT>(value); }
56 template<typename CertKeyT = Aws::String>
57 InstanceAccessDetails& WithCertKey(CertKeyT&& value) { SetCertKey(std::forward<CertKeyT>(value)); return *this;}
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) { m_expiresAtHasBeenSet = true; m_expiresAt = std::forward<ExpiresAtT>(value); }
68 template<typename ExpiresAtT = Aws::Utils::DateTime>
69 InstanceAccessDetails& WithExpiresAt(ExpiresAtT&& value) { SetExpiresAt(std::forward<ExpiresAtT>(value)); return *this;}
71
73
76 inline const Aws::String& GetIpAddress() const { return m_ipAddress; }
77 inline bool IpAddressHasBeenSet() const { return m_ipAddressHasBeenSet; }
78 template<typename IpAddressT = Aws::String>
79 void SetIpAddress(IpAddressT&& value) { m_ipAddressHasBeenSet = true; m_ipAddress = std::forward<IpAddressT>(value); }
80 template<typename IpAddressT = Aws::String>
81 InstanceAccessDetails& WithIpAddress(IpAddressT&& value) { SetIpAddress(std::forward<IpAddressT>(value)); return *this;}
83
85
88 inline const Aws::Vector<Aws::String>& GetIpv6Addresses() const { return m_ipv6Addresses; }
89 inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
90 template<typename Ipv6AddressesT = Aws::Vector<Aws::String>>
91 void SetIpv6Addresses(Ipv6AddressesT&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses = std::forward<Ipv6AddressesT>(value); }
92 template<typename Ipv6AddressesT = Aws::Vector<Aws::String>>
93 InstanceAccessDetails& WithIpv6Addresses(Ipv6AddressesT&& value) { SetIpv6Addresses(std::forward<Ipv6AddressesT>(value)); return *this;}
94 template<typename Ipv6AddressesT = Aws::String>
95 InstanceAccessDetails& AddIpv6Addresses(Ipv6AddressesT&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses.emplace_back(std::forward<Ipv6AddressesT>(value)); return *this; }
97
99
110 inline const Aws::String& GetPassword() const { return m_password; }
111 inline bool PasswordHasBeenSet() const { return m_passwordHasBeenSet; }
112 template<typename PasswordT = Aws::String>
113 void SetPassword(PasswordT&& value) { m_passwordHasBeenSet = true; m_password = std::forward<PasswordT>(value); }
114 template<typename PasswordT = Aws::String>
115 InstanceAccessDetails& WithPassword(PasswordT&& value) { SetPassword(std::forward<PasswordT>(value)); return *this;}
117
119
126 inline const PasswordData& GetPasswordData() const { return m_passwordData; }
127 inline bool PasswordDataHasBeenSet() const { return m_passwordDataHasBeenSet; }
128 template<typename PasswordDataT = PasswordData>
129 void SetPasswordData(PasswordDataT&& value) { m_passwordDataHasBeenSet = true; m_passwordData = std::forward<PasswordDataT>(value); }
130 template<typename PasswordDataT = PasswordData>
131 InstanceAccessDetails& WithPasswordData(PasswordDataT&& value) { SetPasswordData(std::forward<PasswordDataT>(value)); return *this;}
133
135
139 inline const Aws::String& GetPrivateKey() const { return m_privateKey; }
140 inline bool PrivateKeyHasBeenSet() const { return m_privateKeyHasBeenSet; }
141 template<typename PrivateKeyT = Aws::String>
142 void SetPrivateKey(PrivateKeyT&& value) { m_privateKeyHasBeenSet = true; m_privateKey = std::forward<PrivateKeyT>(value); }
143 template<typename PrivateKeyT = Aws::String>
144 InstanceAccessDetails& WithPrivateKey(PrivateKeyT&& value) { SetPrivateKey(std::forward<PrivateKeyT>(value)); return *this;}
146
148
151 inline InstanceAccessProtocol GetProtocol() const { return m_protocol; }
152 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
153 inline void SetProtocol(InstanceAccessProtocol value) { m_protocolHasBeenSet = true; m_protocol = value; }
156
158
161 inline const Aws::String& GetInstanceName() const { return m_instanceName; }
162 inline bool InstanceNameHasBeenSet() const { return m_instanceNameHasBeenSet; }
163 template<typename InstanceNameT = Aws::String>
164 void SetInstanceName(InstanceNameT&& value) { m_instanceNameHasBeenSet = true; m_instanceName = std::forward<InstanceNameT>(value); }
165 template<typename InstanceNameT = Aws::String>
166 InstanceAccessDetails& WithInstanceName(InstanceNameT&& value) { SetInstanceName(std::forward<InstanceNameT>(value)); return *this;}
168
170
173 inline const Aws::String& GetUsername() const { return m_username; }
174 inline bool UsernameHasBeenSet() const { return m_usernameHasBeenSet; }
175 template<typename UsernameT = Aws::String>
176 void SetUsername(UsernameT&& value) { m_usernameHasBeenSet = true; m_username = std::forward<UsernameT>(value); }
177 template<typename UsernameT = Aws::String>
178 InstanceAccessDetails& WithUsername(UsernameT&& value) { SetUsername(std::forward<UsernameT>(value)); return *this;}
180
182
185 inline const Aws::Vector<HostKeyAttributes>& GetHostKeys() const { return m_hostKeys; }
186 inline bool HostKeysHasBeenSet() const { return m_hostKeysHasBeenSet; }
187 template<typename HostKeysT = Aws::Vector<HostKeyAttributes>>
188 void SetHostKeys(HostKeysT&& value) { m_hostKeysHasBeenSet = true; m_hostKeys = std::forward<HostKeysT>(value); }
189 template<typename HostKeysT = Aws::Vector<HostKeyAttributes>>
190 InstanceAccessDetails& WithHostKeys(HostKeysT&& value) { SetHostKeys(std::forward<HostKeysT>(value)); return *this;}
191 template<typename HostKeysT = HostKeyAttributes>
192 InstanceAccessDetails& AddHostKeys(HostKeysT&& value) { m_hostKeysHasBeenSet = true; m_hostKeys.emplace_back(std::forward<HostKeysT>(value)); return *this; }
194 private:
195
196 Aws::String m_certKey;
197 bool m_certKeyHasBeenSet = false;
198
199 Aws::Utils::DateTime m_expiresAt{};
200 bool m_expiresAtHasBeenSet = false;
201
202 Aws::String m_ipAddress;
203 bool m_ipAddressHasBeenSet = false;
204
205 Aws::Vector<Aws::String> m_ipv6Addresses;
206 bool m_ipv6AddressesHasBeenSet = false;
207
208 Aws::String m_password;
209 bool m_passwordHasBeenSet = false;
210
211 PasswordData m_passwordData;
212 bool m_passwordDataHasBeenSet = false;
213
214 Aws::String m_privateKey;
215 bool m_privateKeyHasBeenSet = false;
216
218 bool m_protocolHasBeenSet = false;
219
220 Aws::String m_instanceName;
221 bool m_instanceNameHasBeenSet = false;
222
223 Aws::String m_username;
224 bool m_usernameHasBeenSet = false;
225
227 bool m_hostKeysHasBeenSet = false;
228 };
229
230} // namespace Model
231} // namespace Lightsail
232} // 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