7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/ecs/ECS_EXPORTS.h>
9#include <aws/ecs/model/CapacityReservationRequest.h>
10#include <aws/ecs/model/InstanceRequirementsRequest.h>
11#include <aws/ecs/model/ManagedInstancesLocalStorageConfiguration.h>
12#include <aws/ecs/model/ManagedInstancesMonitoringOptions.h>
13#include <aws/ecs/model/ManagedInstancesNetworkConfiguration.h>
14#include <aws/ecs/model/ManagedInstancesStorageConfiguration.h>
57 template <
typename Ec2InstanceProfileArnT = Aws::String>
59 m_ec2InstanceProfileArnHasBeenSet =
true;
60 m_ec2InstanceProfileArn = std::forward<Ec2InstanceProfileArnT>(value);
62 template <
typename Ec2InstanceProfileArnT = Aws::String>
77 template <
typename NetworkConfigurationT = ManagedInstancesNetworkConfiguration>
79 m_networkConfigurationHasBeenSet =
true;
80 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
82 template <
typename NetworkConfigurationT = ManagedInstancesNetworkConfiguration>
96 template <
typename StorageConfigurationT = ManagedInstancesStorageConfiguration>
98 m_storageConfigurationHasBeenSet =
true;
99 m_storageConfiguration = std::forward<StorageConfigurationT>(value);
101 template <
typename StorageConfigurationT = ManagedInstancesStorageConfiguration>
125 m_instanceMetadataTagsPropagationHasBeenSet =
true;
126 m_instanceMetadataTagsPropagation = value;
142 template <
typename LocalStorageConfigurationT = ManagedInstancesLocalStorageConfiguration>
144 m_localStorageConfigurationHasBeenSet =
true;
145 m_localStorageConfiguration = std::forward<LocalStorageConfigurationT>(value);
147 template <
typename LocalStorageConfigurationT = ManagedInstancesLocalStorageConfiguration>
169 m_monitoringHasBeenSet =
true;
170 m_monitoring = value;
186 template <
typename InstanceRequirementsT = InstanceRequirementsRequest>
188 m_instanceRequirementsHasBeenSet =
true;
189 m_instanceRequirements = std::forward<InstanceRequirementsT>(value);
191 template <
typename InstanceRequirementsT = InstanceRequirementsRequest>
206 template <
typename CapacityReservationsT = CapacityReservationRequest>
208 m_capacityReservationsHasBeenSet =
true;
209 m_capacityReservations = std::forward<CapacityReservationsT>(value);
211 template <
typename CapacityReservationsT = CapacityReservationRequest>
224 bool m_instanceMetadataTagsPropagation{
false};
226 ManagedInstancesLocalStorageConfiguration m_localStorageConfiguration;
230 InstanceRequirementsRequest m_instanceRequirements;
232 CapacityReservationRequest m_capacityReservations;
233 bool m_ec2InstanceProfileArnHasBeenSet =
false;
234 bool m_networkConfigurationHasBeenSet =
false;
235 bool m_storageConfigurationHasBeenSet =
false;
236 bool m_instanceMetadataTagsPropagationHasBeenSet =
false;
237 bool m_localStorageConfigurationHasBeenSet =
false;
238 bool m_monitoringHasBeenSet =
false;
239 bool m_instanceRequirementsHasBeenSet =
false;
240 bool m_capacityReservationsHasBeenSet =
false;
InstanceLaunchTemplateUpdate & WithNetworkConfiguration(NetworkConfigurationT &&value)
const InstanceRequirementsRequest & GetInstanceRequirements() const
void SetCapacityReservations(CapacityReservationsT &&value)
void SetInstanceRequirements(InstanceRequirementsT &&value)
void SetInstanceMetadataTagsPropagation(bool value)
bool StorageConfigurationHasBeenSet() const
void SetMonitoring(ManagedInstancesMonitoringOptions value)
InstanceLaunchTemplateUpdate & WithMonitoring(ManagedInstancesMonitoringOptions value)
const ManagedInstancesNetworkConfiguration & GetNetworkConfiguration() const
ManagedInstancesMonitoringOptions GetMonitoring() const
bool LocalStorageConfigurationHasBeenSet() const
const ManagedInstancesStorageConfiguration & GetStorageConfiguration() const
bool Ec2InstanceProfileArnHasBeenSet() const
bool MonitoringHasBeenSet() const
const ManagedInstancesLocalStorageConfiguration & GetLocalStorageConfiguration() const
AWS_ECS_API InstanceLaunchTemplateUpdate(Aws::Utils::Json::JsonView jsonValue)
bool CapacityReservationsHasBeenSet() const
InstanceLaunchTemplateUpdate & WithInstanceRequirements(InstanceRequirementsT &&value)
InstanceLaunchTemplateUpdate & WithLocalStorageConfiguration(LocalStorageConfigurationT &&value)
const Aws::String & GetEc2InstanceProfileArn() const
void SetStorageConfiguration(StorageConfigurationT &&value)
InstanceLaunchTemplateUpdate & WithEc2InstanceProfileArn(Ec2InstanceProfileArnT &&value)
bool NetworkConfigurationHasBeenSet() const
InstanceLaunchTemplateUpdate & WithCapacityReservations(CapacityReservationsT &&value)
void SetNetworkConfiguration(NetworkConfigurationT &&value)
const CapacityReservationRequest & GetCapacityReservations() const
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_ECS_API InstanceLaunchTemplateUpdate & operator=(Aws::Utils::Json::JsonView jsonValue)
bool GetInstanceMetadataTagsPropagation() const
InstanceLaunchTemplateUpdate & WithStorageConfiguration(StorageConfigurationT &&value)
InstanceLaunchTemplateUpdate & WithInstanceMetadataTagsPropagation(bool value)
void SetLocalStorageConfiguration(LocalStorageConfigurationT &&value)
void SetEc2InstanceProfileArn(Ec2InstanceProfileArnT &&value)
bool InstanceMetadataTagsPropagationHasBeenSet() const
AWS_ECS_API InstanceLaunchTemplateUpdate()=default
bool InstanceRequirementsHasBeenSet() const
ManagedInstancesMonitoringOptions
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue