AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
AwsEc2InstanceDetails.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/inspector2/Inspector2_EXPORTS.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Inspector2 {
22namespace Model {
23
31 public:
32 AWS_INSPECTOR2_API AwsEc2InstanceDetails() = default;
35 AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetType() const { return m_type; }
42 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
43 template <typename TypeT = Aws::String>
44 void SetType(TypeT&& value) {
45 m_typeHasBeenSet = true;
46 m_type = std::forward<TypeT>(value);
47 }
48 template <typename TypeT = Aws::String>
50 SetType(std::forward<TypeT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetImageId() const { return m_imageId; }
60 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
61 template <typename ImageIdT = Aws::String>
62 void SetImageId(ImageIdT&& value) {
63 m_imageIdHasBeenSet = true;
64 m_imageId = std::forward<ImageIdT>(value);
65 }
66 template <typename ImageIdT = Aws::String>
68 SetImageId(std::forward<ImageIdT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::Vector<Aws::String>& GetIpV4Addresses() const { return m_ipV4Addresses; }
78 inline bool IpV4AddressesHasBeenSet() const { return m_ipV4AddressesHasBeenSet; }
79 template <typename IpV4AddressesT = Aws::Vector<Aws::String>>
80 void SetIpV4Addresses(IpV4AddressesT&& value) {
81 m_ipV4AddressesHasBeenSet = true;
82 m_ipV4Addresses = std::forward<IpV4AddressesT>(value);
83 }
84 template <typename IpV4AddressesT = Aws::Vector<Aws::String>>
85 AwsEc2InstanceDetails& WithIpV4Addresses(IpV4AddressesT&& value) {
86 SetIpV4Addresses(std::forward<IpV4AddressesT>(value));
87 return *this;
88 }
89 template <typename IpV4AddressesT = Aws::String>
90 AwsEc2InstanceDetails& AddIpV4Addresses(IpV4AddressesT&& value) {
91 m_ipV4AddressesHasBeenSet = true;
92 m_ipV4Addresses.emplace_back(std::forward<IpV4AddressesT>(value));
93 return *this;
94 }
96
98
101 inline const Aws::Vector<Aws::String>& GetIpV6Addresses() const { return m_ipV6Addresses; }
102 inline bool IpV6AddressesHasBeenSet() const { return m_ipV6AddressesHasBeenSet; }
103 template <typename IpV6AddressesT = Aws::Vector<Aws::String>>
104 void SetIpV6Addresses(IpV6AddressesT&& value) {
105 m_ipV6AddressesHasBeenSet = true;
106 m_ipV6Addresses = std::forward<IpV6AddressesT>(value);
107 }
108 template <typename IpV6AddressesT = Aws::Vector<Aws::String>>
109 AwsEc2InstanceDetails& WithIpV6Addresses(IpV6AddressesT&& value) {
110 SetIpV6Addresses(std::forward<IpV6AddressesT>(value));
111 return *this;
112 }
113 template <typename IpV6AddressesT = Aws::String>
114 AwsEc2InstanceDetails& AddIpV6Addresses(IpV6AddressesT&& value) {
115 m_ipV6AddressesHasBeenSet = true;
116 m_ipV6Addresses.emplace_back(std::forward<IpV6AddressesT>(value));
117 return *this;
118 }
120
122
125 inline const Aws::String& GetKeyName() const { return m_keyName; }
126 inline bool KeyNameHasBeenSet() const { return m_keyNameHasBeenSet; }
127 template <typename KeyNameT = Aws::String>
128 void SetKeyName(KeyNameT&& value) {
129 m_keyNameHasBeenSet = true;
130 m_keyName = std::forward<KeyNameT>(value);
131 }
132 template <typename KeyNameT = Aws::String>
134 SetKeyName(std::forward<KeyNameT>(value));
135 return *this;
136 }
138
140
143 inline const Aws::String& GetIamInstanceProfileArn() const { return m_iamInstanceProfileArn; }
144 inline bool IamInstanceProfileArnHasBeenSet() const { return m_iamInstanceProfileArnHasBeenSet; }
145 template <typename IamInstanceProfileArnT = Aws::String>
146 void SetIamInstanceProfileArn(IamInstanceProfileArnT&& value) {
147 m_iamInstanceProfileArnHasBeenSet = true;
148 m_iamInstanceProfileArn = std::forward<IamInstanceProfileArnT>(value);
149 }
150 template <typename IamInstanceProfileArnT = Aws::String>
151 AwsEc2InstanceDetails& WithIamInstanceProfileArn(IamInstanceProfileArnT&& value) {
152 SetIamInstanceProfileArn(std::forward<IamInstanceProfileArnT>(value));
153 return *this;
154 }
156
158
161 inline const Aws::String& GetVpcId() const { return m_vpcId; }
162 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
163 template <typename VpcIdT = Aws::String>
164 void SetVpcId(VpcIdT&& value) {
165 m_vpcIdHasBeenSet = true;
166 m_vpcId = std::forward<VpcIdT>(value);
167 }
168 template <typename VpcIdT = Aws::String>
170 SetVpcId(std::forward<VpcIdT>(value));
171 return *this;
172 }
174
176
179 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
180 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
181 template <typename SubnetIdT = Aws::String>
182 void SetSubnetId(SubnetIdT&& value) {
183 m_subnetIdHasBeenSet = true;
184 m_subnetId = std::forward<SubnetIdT>(value);
185 }
186 template <typename SubnetIdT = Aws::String>
188 SetSubnetId(std::forward<SubnetIdT>(value));
189 return *this;
190 }
192
194
197 inline const Aws::Utils::DateTime& GetLaunchedAt() const { return m_launchedAt; }
198 inline bool LaunchedAtHasBeenSet() const { return m_launchedAtHasBeenSet; }
199 template <typename LaunchedAtT = Aws::Utils::DateTime>
200 void SetLaunchedAt(LaunchedAtT&& value) {
201 m_launchedAtHasBeenSet = true;
202 m_launchedAt = std::forward<LaunchedAtT>(value);
203 }
204 template <typename LaunchedAtT = Aws::Utils::DateTime>
205 AwsEc2InstanceDetails& WithLaunchedAt(LaunchedAtT&& value) {
206 SetLaunchedAt(std::forward<LaunchedAtT>(value));
207 return *this;
208 }
210
212
215 inline const Aws::String& GetPlatform() const { return m_platform; }
216 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
217 template <typename PlatformT = Aws::String>
218 void SetPlatform(PlatformT&& value) {
219 m_platformHasBeenSet = true;
220 m_platform = std::forward<PlatformT>(value);
221 }
222 template <typename PlatformT = Aws::String>
224 SetPlatform(std::forward<PlatformT>(value));
225 return *this;
226 }
228 private:
229 Aws::String m_type;
230
231 Aws::String m_imageId;
232
233 Aws::Vector<Aws::String> m_ipV4Addresses;
234
235 Aws::Vector<Aws::String> m_ipV6Addresses;
236
237 Aws::String m_keyName;
238
239 Aws::String m_iamInstanceProfileArn;
240
241 Aws::String m_vpcId;
242
243 Aws::String m_subnetId;
244
245 Aws::Utils::DateTime m_launchedAt{};
246
247 Aws::String m_platform;
248 bool m_typeHasBeenSet = false;
249 bool m_imageIdHasBeenSet = false;
250 bool m_ipV4AddressesHasBeenSet = false;
251 bool m_ipV6AddressesHasBeenSet = false;
252 bool m_keyNameHasBeenSet = false;
253 bool m_iamInstanceProfileArnHasBeenSet = false;
254 bool m_vpcIdHasBeenSet = false;
255 bool m_subnetIdHasBeenSet = false;
256 bool m_launchedAtHasBeenSet = false;
257 bool m_platformHasBeenSet = false;
258};
259
260} // namespace Model
261} // namespace Inspector2
262} // namespace Aws
AwsEc2InstanceDetails & WithLaunchedAt(LaunchedAtT &&value)
AwsEc2InstanceDetails & WithPlatform(PlatformT &&value)
AwsEc2InstanceDetails & WithIpV6Addresses(IpV6AddressesT &&value)
AwsEc2InstanceDetails & WithImageId(ImageIdT &&value)
AWS_INSPECTOR2_API AwsEc2InstanceDetails(Aws::Utils::Json::JsonView jsonValue)
AwsEc2InstanceDetails & AddIpV4Addresses(IpV4AddressesT &&value)
const Aws::Utils::DateTime & GetLaunchedAt() const
AWS_INSPECTOR2_API AwsEc2InstanceDetails()=default
AwsEc2InstanceDetails & WithType(TypeT &&value)
AwsEc2InstanceDetails & WithIamInstanceProfileArn(IamInstanceProfileArnT &&value)
AwsEc2InstanceDetails & WithSubnetId(SubnetIdT &&value)
AWS_INSPECTOR2_API AwsEc2InstanceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetIamInstanceProfileArn(IamInstanceProfileArnT &&value)
AwsEc2InstanceDetails & WithKeyName(KeyNameT &&value)
AwsEc2InstanceDetails & AddIpV6Addresses(IpV6AddressesT &&value)
AwsEc2InstanceDetails & WithVpcId(VpcIdT &&value)
const Aws::Vector< Aws::String > & GetIpV4Addresses() const
AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const
AwsEc2InstanceDetails & WithIpV4Addresses(IpV4AddressesT &&value)
const Aws::Vector< Aws::String > & GetIpV6Addresses() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue