AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ManagedInstanceRequest.h
1
6#pragma once
7#include <aws/workspaces-instances/WorkspacesInstances_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/workspaces-instances/model/CapacityReservationSpecification.h>
10#include <aws/workspaces-instances/model/CpuOptionsRequest.h>
11#include <aws/workspaces-instances/model/CreditSpecificationRequest.h>
12#include <aws/workspaces-instances/model/EnclaveOptionsRequest.h>
13#include <aws/workspaces-instances/model/HibernationOptionsRequest.h>
14#include <aws/workspaces-instances/model/IamInstanceProfileSpecification.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
16#include <aws/workspaces-instances/model/InstanceMarketOptionsRequest.h>
17#include <aws/workspaces-instances/model/InstanceMaintenanceOptionsRequest.h>
18#include <aws/workspaces-instances/model/InstanceMetadataOptionsRequest.h>
19#include <aws/workspaces-instances/model/RunInstancesMonitoringEnabled.h>
20#include <aws/workspaces-instances/model/InstanceNetworkPerformanceOptionsRequest.h>
21#include <aws/workspaces-instances/model/Placement.h>
22#include <aws/workspaces-instances/model/PrivateDnsNameOptionsRequest.h>
23#include <aws/workspaces-instances/model/BlockDeviceMappingRequest.h>
24#include <aws/workspaces-instances/model/InstanceIpv6Address.h>
25#include <aws/workspaces-instances/model/LicenseConfigurationRequest.h>
26#include <aws/workspaces-instances/model/InstanceNetworkInterfaceSpecification.h>
27#include <aws/workspaces-instances/model/TagSpecification.h>
28#include <utility>
29
30namespace Aws
31{
32namespace Utils
33{
34namespace Json
35{
36 class JsonValue;
37 class JsonView;
38} // namespace Json
39} // namespace Utils
40namespace WorkspacesInstances
41{
42namespace Model
43{
44
52 {
53 public:
54 AWS_WORKSPACESINSTANCES_API ManagedInstanceRequest() = default;
55 AWS_WORKSPACESINSTANCES_API ManagedInstanceRequest(Aws::Utils::Json::JsonView jsonValue);
56 AWS_WORKSPACESINSTANCES_API ManagedInstanceRequest& operator=(Aws::Utils::Json::JsonView jsonValue);
57 AWS_WORKSPACESINSTANCES_API Aws::Utils::Json::JsonValue Jsonize() const;
58
59
61
64 inline const Aws::Vector<BlockDeviceMappingRequest>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
65 inline bool BlockDeviceMappingsHasBeenSet() const { return m_blockDeviceMappingsHasBeenSet; }
66 template<typename BlockDeviceMappingsT = Aws::Vector<BlockDeviceMappingRequest>>
67 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
68 template<typename BlockDeviceMappingsT = Aws::Vector<BlockDeviceMappingRequest>>
69 ManagedInstanceRequest& WithBlockDeviceMappings(BlockDeviceMappingsT&& value) { SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value)); return *this;}
70 template<typename BlockDeviceMappingsT = BlockDeviceMappingRequest>
71 ManagedInstanceRequest& AddBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value)); return *this; }
73
75
78 inline const CapacityReservationSpecification& GetCapacityReservationSpecification() const { return m_capacityReservationSpecification; }
79 inline bool CapacityReservationSpecificationHasBeenSet() const { return m_capacityReservationSpecificationHasBeenSet; }
80 template<typename CapacityReservationSpecificationT = CapacityReservationSpecification>
81 void SetCapacityReservationSpecification(CapacityReservationSpecificationT&& value) { m_capacityReservationSpecificationHasBeenSet = true; m_capacityReservationSpecification = std::forward<CapacityReservationSpecificationT>(value); }
82 template<typename CapacityReservationSpecificationT = CapacityReservationSpecification>
83 ManagedInstanceRequest& WithCapacityReservationSpecification(CapacityReservationSpecificationT&& value) { SetCapacityReservationSpecification(std::forward<CapacityReservationSpecificationT>(value)); return *this;}
85
87
90 inline const CpuOptionsRequest& GetCpuOptions() const { return m_cpuOptions; }
91 inline bool CpuOptionsHasBeenSet() const { return m_cpuOptionsHasBeenSet; }
92 template<typename CpuOptionsT = CpuOptionsRequest>
93 void SetCpuOptions(CpuOptionsT&& value) { m_cpuOptionsHasBeenSet = true; m_cpuOptions = std::forward<CpuOptionsT>(value); }
94 template<typename CpuOptionsT = CpuOptionsRequest>
95 ManagedInstanceRequest& WithCpuOptions(CpuOptionsT&& value) { SetCpuOptions(std::forward<CpuOptionsT>(value)); return *this;}
97
99
102 inline const CreditSpecificationRequest& GetCreditSpecification() const { return m_creditSpecification; }
103 inline bool CreditSpecificationHasBeenSet() const { return m_creditSpecificationHasBeenSet; }
104 template<typename CreditSpecificationT = CreditSpecificationRequest>
105 void SetCreditSpecification(CreditSpecificationT&& value) { m_creditSpecificationHasBeenSet = true; m_creditSpecification = std::forward<CreditSpecificationT>(value); }
106 template<typename CreditSpecificationT = CreditSpecificationRequest>
107 ManagedInstanceRequest& WithCreditSpecification(CreditSpecificationT&& value) { SetCreditSpecification(std::forward<CreditSpecificationT>(value)); return *this;}
109
111
114 inline bool GetDisableApiStop() const { return m_disableApiStop; }
115 inline bool DisableApiStopHasBeenSet() const { return m_disableApiStopHasBeenSet; }
116 inline void SetDisableApiStop(bool value) { m_disableApiStopHasBeenSet = true; m_disableApiStop = value; }
117 inline ManagedInstanceRequest& WithDisableApiStop(bool value) { SetDisableApiStop(value); return *this;}
119
121
124 inline bool GetEbsOptimized() const { return m_ebsOptimized; }
125 inline bool EbsOptimizedHasBeenSet() const { return m_ebsOptimizedHasBeenSet; }
126 inline void SetEbsOptimized(bool value) { m_ebsOptimizedHasBeenSet = true; m_ebsOptimized = value; }
127 inline ManagedInstanceRequest& WithEbsOptimized(bool value) { SetEbsOptimized(value); return *this;}
129
131
134 inline bool GetEnablePrimaryIpv6() const { return m_enablePrimaryIpv6; }
135 inline bool EnablePrimaryIpv6HasBeenSet() const { return m_enablePrimaryIpv6HasBeenSet; }
136 inline void SetEnablePrimaryIpv6(bool value) { m_enablePrimaryIpv6HasBeenSet = true; m_enablePrimaryIpv6 = value; }
137 inline ManagedInstanceRequest& WithEnablePrimaryIpv6(bool value) { SetEnablePrimaryIpv6(value); return *this;}
139
141
144 inline const EnclaveOptionsRequest& GetEnclaveOptions() const { return m_enclaveOptions; }
145 inline bool EnclaveOptionsHasBeenSet() const { return m_enclaveOptionsHasBeenSet; }
146 template<typename EnclaveOptionsT = EnclaveOptionsRequest>
147 void SetEnclaveOptions(EnclaveOptionsT&& value) { m_enclaveOptionsHasBeenSet = true; m_enclaveOptions = std::forward<EnclaveOptionsT>(value); }
148 template<typename EnclaveOptionsT = EnclaveOptionsRequest>
149 ManagedInstanceRequest& WithEnclaveOptions(EnclaveOptionsT&& value) { SetEnclaveOptions(std::forward<EnclaveOptionsT>(value)); return *this;}
151
153
156 inline const HibernationOptionsRequest& GetHibernationOptions() const { return m_hibernationOptions; }
157 inline bool HibernationOptionsHasBeenSet() const { return m_hibernationOptionsHasBeenSet; }
158 template<typename HibernationOptionsT = HibernationOptionsRequest>
159 void SetHibernationOptions(HibernationOptionsT&& value) { m_hibernationOptionsHasBeenSet = true; m_hibernationOptions = std::forward<HibernationOptionsT>(value); }
160 template<typename HibernationOptionsT = HibernationOptionsRequest>
161 ManagedInstanceRequest& WithHibernationOptions(HibernationOptionsT&& value) { SetHibernationOptions(std::forward<HibernationOptionsT>(value)); return *this;}
163
165
168 inline const IamInstanceProfileSpecification& GetIamInstanceProfile() const { return m_iamInstanceProfile; }
169 inline bool IamInstanceProfileHasBeenSet() const { return m_iamInstanceProfileHasBeenSet; }
170 template<typename IamInstanceProfileT = IamInstanceProfileSpecification>
171 void SetIamInstanceProfile(IamInstanceProfileT&& value) { m_iamInstanceProfileHasBeenSet = true; m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value); }
172 template<typename IamInstanceProfileT = IamInstanceProfileSpecification>
173 ManagedInstanceRequest& WithIamInstanceProfile(IamInstanceProfileT&& value) { SetIamInstanceProfile(std::forward<IamInstanceProfileT>(value)); return *this;}
175
177
180 inline const Aws::String& GetImageId() const { return m_imageId; }
181 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
182 template<typename ImageIdT = Aws::String>
183 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet = true; m_imageId = std::forward<ImageIdT>(value); }
184 template<typename ImageIdT = Aws::String>
185 ManagedInstanceRequest& WithImageId(ImageIdT&& value) { SetImageId(std::forward<ImageIdT>(value)); return *this;}
187
189
192 inline const InstanceMarketOptionsRequest& GetInstanceMarketOptions() const { return m_instanceMarketOptions; }
193 inline bool InstanceMarketOptionsHasBeenSet() const { return m_instanceMarketOptionsHasBeenSet; }
194 template<typename InstanceMarketOptionsT = InstanceMarketOptionsRequest>
195 void SetInstanceMarketOptions(InstanceMarketOptionsT&& value) { m_instanceMarketOptionsHasBeenSet = true; m_instanceMarketOptions = std::forward<InstanceMarketOptionsT>(value); }
196 template<typename InstanceMarketOptionsT = InstanceMarketOptionsRequest>
197 ManagedInstanceRequest& WithInstanceMarketOptions(InstanceMarketOptionsT&& value) { SetInstanceMarketOptions(std::forward<InstanceMarketOptionsT>(value)); return *this;}
199
201
204 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
205 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
206 template<typename InstanceTypeT = Aws::String>
207 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
208 template<typename InstanceTypeT = Aws::String>
209 ManagedInstanceRequest& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
211
213
216 inline const Aws::Vector<InstanceIpv6Address>& GetIpv6Addresses() const { return m_ipv6Addresses; }
217 inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
218 template<typename Ipv6AddressesT = Aws::Vector<InstanceIpv6Address>>
219 void SetIpv6Addresses(Ipv6AddressesT&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses = std::forward<Ipv6AddressesT>(value); }
220 template<typename Ipv6AddressesT = Aws::Vector<InstanceIpv6Address>>
221 ManagedInstanceRequest& WithIpv6Addresses(Ipv6AddressesT&& value) { SetIpv6Addresses(std::forward<Ipv6AddressesT>(value)); return *this;}
222 template<typename Ipv6AddressesT = InstanceIpv6Address>
223 ManagedInstanceRequest& AddIpv6Addresses(Ipv6AddressesT&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses.emplace_back(std::forward<Ipv6AddressesT>(value)); return *this; }
225
227
230 inline int GetIpv6AddressCount() const { return m_ipv6AddressCount; }
231 inline bool Ipv6AddressCountHasBeenSet() const { return m_ipv6AddressCountHasBeenSet; }
232 inline void SetIpv6AddressCount(int value) { m_ipv6AddressCountHasBeenSet = true; m_ipv6AddressCount = value; }
233 inline ManagedInstanceRequest& WithIpv6AddressCount(int value) { SetIpv6AddressCount(value); return *this;}
235
237
240 inline const Aws::String& GetKernelId() const { return m_kernelId; }
241 inline bool KernelIdHasBeenSet() const { return m_kernelIdHasBeenSet; }
242 template<typename KernelIdT = Aws::String>
243 void SetKernelId(KernelIdT&& value) { m_kernelIdHasBeenSet = true; m_kernelId = std::forward<KernelIdT>(value); }
244 template<typename KernelIdT = Aws::String>
245 ManagedInstanceRequest& WithKernelId(KernelIdT&& value) { SetKernelId(std::forward<KernelIdT>(value)); return *this;}
247
249
252 inline const Aws::String& GetKeyName() const { return m_keyName; }
253 inline bool KeyNameHasBeenSet() const { return m_keyNameHasBeenSet; }
254 template<typename KeyNameT = Aws::String>
255 void SetKeyName(KeyNameT&& value) { m_keyNameHasBeenSet = true; m_keyName = std::forward<KeyNameT>(value); }
256 template<typename KeyNameT = Aws::String>
257 ManagedInstanceRequest& WithKeyName(KeyNameT&& value) { SetKeyName(std::forward<KeyNameT>(value)); return *this;}
259
261
264 inline const Aws::Vector<LicenseConfigurationRequest>& GetLicenseSpecifications() const { return m_licenseSpecifications; }
265 inline bool LicenseSpecificationsHasBeenSet() const { return m_licenseSpecificationsHasBeenSet; }
266 template<typename LicenseSpecificationsT = Aws::Vector<LicenseConfigurationRequest>>
267 void SetLicenseSpecifications(LicenseSpecificationsT&& value) { m_licenseSpecificationsHasBeenSet = true; m_licenseSpecifications = std::forward<LicenseSpecificationsT>(value); }
268 template<typename LicenseSpecificationsT = Aws::Vector<LicenseConfigurationRequest>>
269 ManagedInstanceRequest& WithLicenseSpecifications(LicenseSpecificationsT&& value) { SetLicenseSpecifications(std::forward<LicenseSpecificationsT>(value)); return *this;}
270 template<typename LicenseSpecificationsT = LicenseConfigurationRequest>
271 ManagedInstanceRequest& AddLicenseSpecifications(LicenseSpecificationsT&& value) { m_licenseSpecificationsHasBeenSet = true; m_licenseSpecifications.emplace_back(std::forward<LicenseSpecificationsT>(value)); return *this; }
273
275
278 inline const InstanceMaintenanceOptionsRequest& GetMaintenanceOptions() const { return m_maintenanceOptions; }
279 inline bool MaintenanceOptionsHasBeenSet() const { return m_maintenanceOptionsHasBeenSet; }
280 template<typename MaintenanceOptionsT = InstanceMaintenanceOptionsRequest>
281 void SetMaintenanceOptions(MaintenanceOptionsT&& value) { m_maintenanceOptionsHasBeenSet = true; m_maintenanceOptions = std::forward<MaintenanceOptionsT>(value); }
282 template<typename MaintenanceOptionsT = InstanceMaintenanceOptionsRequest>
283 ManagedInstanceRequest& WithMaintenanceOptions(MaintenanceOptionsT&& value) { SetMaintenanceOptions(std::forward<MaintenanceOptionsT>(value)); return *this;}
285
287
290 inline const InstanceMetadataOptionsRequest& GetMetadataOptions() const { return m_metadataOptions; }
291 inline bool MetadataOptionsHasBeenSet() const { return m_metadataOptionsHasBeenSet; }
292 template<typename MetadataOptionsT = InstanceMetadataOptionsRequest>
293 void SetMetadataOptions(MetadataOptionsT&& value) { m_metadataOptionsHasBeenSet = true; m_metadataOptions = std::forward<MetadataOptionsT>(value); }
294 template<typename MetadataOptionsT = InstanceMetadataOptionsRequest>
295 ManagedInstanceRequest& WithMetadataOptions(MetadataOptionsT&& value) { SetMetadataOptions(std::forward<MetadataOptionsT>(value)); return *this;}
297
299
302 inline const RunInstancesMonitoringEnabled& GetMonitoring() const { return m_monitoring; }
303 inline bool MonitoringHasBeenSet() const { return m_monitoringHasBeenSet; }
304 template<typename MonitoringT = RunInstancesMonitoringEnabled>
305 void SetMonitoring(MonitoringT&& value) { m_monitoringHasBeenSet = true; m_monitoring = std::forward<MonitoringT>(value); }
306 template<typename MonitoringT = RunInstancesMonitoringEnabled>
307 ManagedInstanceRequest& WithMonitoring(MonitoringT&& value) { SetMonitoring(std::forward<MonitoringT>(value)); return *this;}
309
311
314 inline const Aws::Vector<InstanceNetworkInterfaceSpecification>& GetNetworkInterfaces() const { return m_networkInterfaces; }
315 inline bool NetworkInterfacesHasBeenSet() const { return m_networkInterfacesHasBeenSet; }
316 template<typename NetworkInterfacesT = Aws::Vector<InstanceNetworkInterfaceSpecification>>
317 void SetNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces = std::forward<NetworkInterfacesT>(value); }
318 template<typename NetworkInterfacesT = Aws::Vector<InstanceNetworkInterfaceSpecification>>
319 ManagedInstanceRequest& WithNetworkInterfaces(NetworkInterfacesT&& value) { SetNetworkInterfaces(std::forward<NetworkInterfacesT>(value)); return *this;}
320 template<typename NetworkInterfacesT = InstanceNetworkInterfaceSpecification>
321 ManagedInstanceRequest& AddNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.emplace_back(std::forward<NetworkInterfacesT>(value)); return *this; }
323
325
328 inline const InstanceNetworkPerformanceOptionsRequest& GetNetworkPerformanceOptions() const { return m_networkPerformanceOptions; }
329 inline bool NetworkPerformanceOptionsHasBeenSet() const { return m_networkPerformanceOptionsHasBeenSet; }
330 template<typename NetworkPerformanceOptionsT = InstanceNetworkPerformanceOptionsRequest>
331 void SetNetworkPerformanceOptions(NetworkPerformanceOptionsT&& value) { m_networkPerformanceOptionsHasBeenSet = true; m_networkPerformanceOptions = std::forward<NetworkPerformanceOptionsT>(value); }
332 template<typename NetworkPerformanceOptionsT = InstanceNetworkPerformanceOptionsRequest>
333 ManagedInstanceRequest& WithNetworkPerformanceOptions(NetworkPerformanceOptionsT&& value) { SetNetworkPerformanceOptions(std::forward<NetworkPerformanceOptionsT>(value)); return *this;}
335
337
340 inline const Placement& GetPlacement() const { return m_placement; }
341 inline bool PlacementHasBeenSet() const { return m_placementHasBeenSet; }
342 template<typename PlacementT = Placement>
343 void SetPlacement(PlacementT&& value) { m_placementHasBeenSet = true; m_placement = std::forward<PlacementT>(value); }
344 template<typename PlacementT = Placement>
345 ManagedInstanceRequest& WithPlacement(PlacementT&& value) { SetPlacement(std::forward<PlacementT>(value)); return *this;}
347
349
352 inline const PrivateDnsNameOptionsRequest& GetPrivateDnsNameOptions() const { return m_privateDnsNameOptions; }
353 inline bool PrivateDnsNameOptionsHasBeenSet() const { return m_privateDnsNameOptionsHasBeenSet; }
354 template<typename PrivateDnsNameOptionsT = PrivateDnsNameOptionsRequest>
355 void SetPrivateDnsNameOptions(PrivateDnsNameOptionsT&& value) { m_privateDnsNameOptionsHasBeenSet = true; m_privateDnsNameOptions = std::forward<PrivateDnsNameOptionsT>(value); }
356 template<typename PrivateDnsNameOptionsT = PrivateDnsNameOptionsRequest>
357 ManagedInstanceRequest& WithPrivateDnsNameOptions(PrivateDnsNameOptionsT&& value) { SetPrivateDnsNameOptions(std::forward<PrivateDnsNameOptionsT>(value)); return *this;}
359
361
364 inline const Aws::String& GetPrivateIpAddress() const { return m_privateIpAddress; }
365 inline bool PrivateIpAddressHasBeenSet() const { return m_privateIpAddressHasBeenSet; }
366 template<typename PrivateIpAddressT = Aws::String>
367 void SetPrivateIpAddress(PrivateIpAddressT&& value) { m_privateIpAddressHasBeenSet = true; m_privateIpAddress = std::forward<PrivateIpAddressT>(value); }
368 template<typename PrivateIpAddressT = Aws::String>
369 ManagedInstanceRequest& WithPrivateIpAddress(PrivateIpAddressT&& value) { SetPrivateIpAddress(std::forward<PrivateIpAddressT>(value)); return *this;}
371
373
376 inline const Aws::String& GetRamdiskId() const { return m_ramdiskId; }
377 inline bool RamdiskIdHasBeenSet() const { return m_ramdiskIdHasBeenSet; }
378 template<typename RamdiskIdT = Aws::String>
379 void SetRamdiskId(RamdiskIdT&& value) { m_ramdiskIdHasBeenSet = true; m_ramdiskId = std::forward<RamdiskIdT>(value); }
380 template<typename RamdiskIdT = Aws::String>
381 ManagedInstanceRequest& WithRamdiskId(RamdiskIdT&& value) { SetRamdiskId(std::forward<RamdiskIdT>(value)); return *this;}
383
385
388 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
389 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
390 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
391 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
392 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
393 ManagedInstanceRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) { SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value)); return *this;}
394 template<typename SecurityGroupIdsT = Aws::String>
395 ManagedInstanceRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value)); return *this; }
397
399
402 inline const Aws::Vector<Aws::String>& GetSecurityGroups() const { return m_securityGroups; }
403 inline bool SecurityGroupsHasBeenSet() const { return m_securityGroupsHasBeenSet; }
404 template<typename SecurityGroupsT = Aws::Vector<Aws::String>>
405 void SetSecurityGroups(SecurityGroupsT&& value) { m_securityGroupsHasBeenSet = true; m_securityGroups = std::forward<SecurityGroupsT>(value); }
406 template<typename SecurityGroupsT = Aws::Vector<Aws::String>>
407 ManagedInstanceRequest& WithSecurityGroups(SecurityGroupsT&& value) { SetSecurityGroups(std::forward<SecurityGroupsT>(value)); return *this;}
408 template<typename SecurityGroupsT = Aws::String>
409 ManagedInstanceRequest& AddSecurityGroups(SecurityGroupsT&& value) { m_securityGroupsHasBeenSet = true; m_securityGroups.emplace_back(std::forward<SecurityGroupsT>(value)); return *this; }
411
413
416 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
417 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
418 template<typename SubnetIdT = Aws::String>
419 void SetSubnetId(SubnetIdT&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::forward<SubnetIdT>(value); }
420 template<typename SubnetIdT = Aws::String>
421 ManagedInstanceRequest& WithSubnetId(SubnetIdT&& value) { SetSubnetId(std::forward<SubnetIdT>(value)); return *this;}
423
425
428 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
429 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
430 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
431 void SetTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::forward<TagSpecificationsT>(value); }
432 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
433 ManagedInstanceRequest& WithTagSpecifications(TagSpecificationsT&& value) { SetTagSpecifications(std::forward<TagSpecificationsT>(value)); return *this;}
434 template<typename TagSpecificationsT = TagSpecification>
435 ManagedInstanceRequest& AddTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value)); return *this; }
437
439
442 inline const Aws::String& GetUserData() const { return m_userData; }
443 inline bool UserDataHasBeenSet() const { return m_userDataHasBeenSet; }
444 template<typename UserDataT = Aws::String>
445 void SetUserData(UserDataT&& value) { m_userDataHasBeenSet = true; m_userData = std::forward<UserDataT>(value); }
446 template<typename UserDataT = Aws::String>
447 ManagedInstanceRequest& WithUserData(UserDataT&& value) { SetUserData(std::forward<UserDataT>(value)); return *this;}
449 private:
450
451 Aws::Vector<BlockDeviceMappingRequest> m_blockDeviceMappings;
452 bool m_blockDeviceMappingsHasBeenSet = false;
453
454 CapacityReservationSpecification m_capacityReservationSpecification;
455 bool m_capacityReservationSpecificationHasBeenSet = false;
456
457 CpuOptionsRequest m_cpuOptions;
458 bool m_cpuOptionsHasBeenSet = false;
459
460 CreditSpecificationRequest m_creditSpecification;
461 bool m_creditSpecificationHasBeenSet = false;
462
463 bool m_disableApiStop{false};
464 bool m_disableApiStopHasBeenSet = false;
465
466 bool m_ebsOptimized{false};
467 bool m_ebsOptimizedHasBeenSet = false;
468
469 bool m_enablePrimaryIpv6{false};
470 bool m_enablePrimaryIpv6HasBeenSet = false;
471
472 EnclaveOptionsRequest m_enclaveOptions;
473 bool m_enclaveOptionsHasBeenSet = false;
474
475 HibernationOptionsRequest m_hibernationOptions;
476 bool m_hibernationOptionsHasBeenSet = false;
477
478 IamInstanceProfileSpecification m_iamInstanceProfile;
479 bool m_iamInstanceProfileHasBeenSet = false;
480
481 Aws::String m_imageId;
482 bool m_imageIdHasBeenSet = false;
483
484 InstanceMarketOptionsRequest m_instanceMarketOptions;
485 bool m_instanceMarketOptionsHasBeenSet = false;
486
487 Aws::String m_instanceType;
488 bool m_instanceTypeHasBeenSet = false;
489
490 Aws::Vector<InstanceIpv6Address> m_ipv6Addresses;
491 bool m_ipv6AddressesHasBeenSet = false;
492
493 int m_ipv6AddressCount{0};
494 bool m_ipv6AddressCountHasBeenSet = false;
495
496 Aws::String m_kernelId;
497 bool m_kernelIdHasBeenSet = false;
498
499 Aws::String m_keyName;
500 bool m_keyNameHasBeenSet = false;
501
502 Aws::Vector<LicenseConfigurationRequest> m_licenseSpecifications;
503 bool m_licenseSpecificationsHasBeenSet = false;
504
505 InstanceMaintenanceOptionsRequest m_maintenanceOptions;
506 bool m_maintenanceOptionsHasBeenSet = false;
507
508 InstanceMetadataOptionsRequest m_metadataOptions;
509 bool m_metadataOptionsHasBeenSet = false;
510
511 RunInstancesMonitoringEnabled m_monitoring;
512 bool m_monitoringHasBeenSet = false;
513
515 bool m_networkInterfacesHasBeenSet = false;
516
517 InstanceNetworkPerformanceOptionsRequest m_networkPerformanceOptions;
518 bool m_networkPerformanceOptionsHasBeenSet = false;
519
520 Placement m_placement;
521 bool m_placementHasBeenSet = false;
522
523 PrivateDnsNameOptionsRequest m_privateDnsNameOptions;
524 bool m_privateDnsNameOptionsHasBeenSet = false;
525
526 Aws::String m_privateIpAddress;
527 bool m_privateIpAddressHasBeenSet = false;
528
529 Aws::String m_ramdiskId;
530 bool m_ramdiskIdHasBeenSet = false;
531
532 Aws::Vector<Aws::String> m_securityGroupIds;
533 bool m_securityGroupIdsHasBeenSet = false;
534
535 Aws::Vector<Aws::String> m_securityGroups;
536 bool m_securityGroupsHasBeenSet = false;
537
538 Aws::String m_subnetId;
539 bool m_subnetIdHasBeenSet = false;
540
541 Aws::Vector<TagSpecification> m_tagSpecifications;
542 bool m_tagSpecificationsHasBeenSet = false;
543
544 Aws::String m_userData;
545 bool m_userDataHasBeenSet = false;
546 };
547
548} // namespace Model
549} // namespace WorkspacesInstances
550} // namespace Aws
ManagedInstanceRequest & WithKernelId(KernelIdT &&value)
ManagedInstanceRequest & WithSubnetId(SubnetIdT &&value)
ManagedInstanceRequest & WithPrivateIpAddress(PrivateIpAddressT &&value)
ManagedInstanceRequest & WithImageId(ImageIdT &&value)
void SetCapacityReservationSpecification(CapacityReservationSpecificationT &&value)
ManagedInstanceRequest & AddIpv6Addresses(Ipv6AddressesT &&value)
ManagedInstanceRequest & WithIpv6Addresses(Ipv6AddressesT &&value)
const Aws::Vector< InstanceNetworkInterfaceSpecification > & GetNetworkInterfaces() const
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
ManagedInstanceRequest & WithMonitoring(MonitoringT &&value)
void SetNetworkPerformanceOptions(NetworkPerformanceOptionsT &&value)
ManagedInstanceRequest & WithSecurityGroups(SecurityGroupsT &&value)
AWS_WORKSPACESINSTANCES_API ManagedInstanceRequest()=default
const Aws::Vector< InstanceIpv6Address > & GetIpv6Addresses() const
ManagedInstanceRequest & WithPrivateDnsNameOptions(PrivateDnsNameOptionsT &&value)
ManagedInstanceRequest & WithInstanceType(InstanceTypeT &&value)
ManagedInstanceRequest & WithIamInstanceProfile(IamInstanceProfileT &&value)
ManagedInstanceRequest & WithNetworkPerformanceOptions(NetworkPerformanceOptionsT &&value)
ManagedInstanceRequest & WithEnclaveOptions(EnclaveOptionsT &&value)
const CreditSpecificationRequest & GetCreditSpecification() const
const IamInstanceProfileSpecification & GetIamInstanceProfile() const
ManagedInstanceRequest & WithPlacement(PlacementT &&value)
ManagedInstanceRequest & WithMaintenanceOptions(MaintenanceOptionsT &&value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
ManagedInstanceRequest & AddNetworkInterfaces(NetworkInterfacesT &&value)
const Aws::Vector< BlockDeviceMappingRequest > & GetBlockDeviceMappings() const
ManagedInstanceRequest & WithKeyName(KeyNameT &&value)
ManagedInstanceRequest & WithNetworkInterfaces(NetworkInterfacesT &&value)
const RunInstancesMonitoringEnabled & GetMonitoring() const
ManagedInstanceRequest & WithUserData(UserDataT &&value)
ManagedInstanceRequest & AddLicenseSpecifications(LicenseSpecificationsT &&value)
ManagedInstanceRequest & AddTagSpecifications(TagSpecificationsT &&value)
ManagedInstanceRequest & WithRamdiskId(RamdiskIdT &&value)
ManagedInstanceRequest & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
ManagedInstanceRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
const Aws::Vector< LicenseConfigurationRequest > & GetLicenseSpecifications() const
ManagedInstanceRequest & WithHibernationOptions(HibernationOptionsT &&value)
const InstanceMetadataOptionsRequest & GetMetadataOptions() const
const PrivateDnsNameOptionsRequest & GetPrivateDnsNameOptions() const
const Aws::Vector< Aws::String > & GetSecurityGroups() const
ManagedInstanceRequest & WithCpuOptions(CpuOptionsT &&value)
ManagedInstanceRequest & WithLicenseSpecifications(LicenseSpecificationsT &&value)
const InstanceNetworkPerformanceOptionsRequest & GetNetworkPerformanceOptions() const
ManagedInstanceRequest & WithCapacityReservationSpecification(CapacityReservationSpecificationT &&value)
AWS_WORKSPACESINSTANCES_API ManagedInstanceRequest(Aws::Utils::Json::JsonView jsonValue)
const CapacityReservationSpecification & GetCapacityReservationSpecification() const
ManagedInstanceRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
const InstanceMaintenanceOptionsRequest & GetMaintenanceOptions() const
const HibernationOptionsRequest & GetHibernationOptions() const
ManagedInstanceRequest & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
const InstanceMarketOptionsRequest & GetInstanceMarketOptions() const
AWS_WORKSPACESINSTANCES_API ManagedInstanceRequest & operator=(Aws::Utils::Json::JsonView jsonValue)
ManagedInstanceRequest & WithTagSpecifications(TagSpecificationsT &&value)
ManagedInstanceRequest & AddSecurityGroups(SecurityGroupsT &&value)
ManagedInstanceRequest & WithInstanceMarketOptions(InstanceMarketOptionsT &&value)
AWS_WORKSPACESINSTANCES_API Aws::Utils::Json::JsonValue Jsonize() const
ManagedInstanceRequest & WithCreditSpecification(CreditSpecificationT &&value)
ManagedInstanceRequest & WithMetadataOptions(MetadataOptionsT &&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