7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/ecs/ECS_EXPORTS.h>
9#include <aws/ecs/model/CapacityOptionType.h>
10#include <aws/ecs/model/CapacityReservationRequest.h>
11#include <aws/ecs/model/InstanceRequirementsRequest.h>
12#include <aws/ecs/model/ManagedInstancesLocalStorageConfiguration.h>
13#include <aws/ecs/model/ManagedInstancesMonitoringOptions.h>
14#include <aws/ecs/model/ManagedInstancesNetworkConfiguration.h>
15#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>
76 template <
typename NetworkConfigurationT = ManagedInstancesNetworkConfiguration>
78 m_networkConfigurationHasBeenSet =
true;
79 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
81 template <
typename NetworkConfigurationT = ManagedInstancesNetworkConfiguration>
95 template <
typename StorageConfigurationT = ManagedInstancesStorageConfiguration>
97 m_storageConfigurationHasBeenSet =
true;
98 m_storageConfiguration = std::forward<StorageConfigurationT>(value);
100 template <
typename StorageConfigurationT = ManagedInstancesStorageConfiguration>
115 template <
typename LocalStorageConfigurationT = ManagedInstancesLocalStorageConfiguration>
117 m_localStorageConfigurationHasBeenSet =
true;
118 m_localStorageConfiguration = std::forward<LocalStorageConfigurationT>(value);
120 template <
typename LocalStorageConfigurationT = ManagedInstancesLocalStorageConfiguration>
142 m_monitoringHasBeenSet =
true;
143 m_monitoring = value;
172 m_capacityOptionTypeHasBeenSet =
true;
173 m_capacityOptionType = value;
198 m_instanceMetadataTagsPropagationHasBeenSet =
true;
199 m_instanceMetadataTagsPropagation = value;
216 template <
typename InstanceRequirementsT = InstanceRequirementsRequest>
218 m_instanceRequirementsHasBeenSet =
true;
219 m_instanceRequirements = std::forward<InstanceRequirementsT>(value);
221 template <
typename InstanceRequirementsT = InstanceRequirementsRequest>
241 m_fipsEnabledHasBeenSet =
true;
242 m_fipsEnabled = value;
259 template <
typename CapacityReservationsT = CapacityReservationRequest>
261 m_capacityReservationsHasBeenSet =
true;
262 m_capacityReservations = std::forward<CapacityReservationsT>(value);
264 template <
typename CapacityReservationsT = CapacityReservationRequest>
283 bool m_instanceMetadataTagsPropagation{
false};
285 InstanceRequirementsRequest m_instanceRequirements;
287 bool m_fipsEnabled{
false};
289 CapacityReservationRequest m_capacityReservations;
290 bool m_ec2InstanceProfileArnHasBeenSet =
false;
291 bool m_networkConfigurationHasBeenSet =
false;
292 bool m_storageConfigurationHasBeenSet =
false;
293 bool m_localStorageConfigurationHasBeenSet =
false;
294 bool m_monitoringHasBeenSet =
false;
295 bool m_capacityOptionTypeHasBeenSet =
false;
296 bool m_instanceMetadataTagsPropagationHasBeenSet =
false;
297 bool m_instanceRequirementsHasBeenSet =
false;
298 bool m_fipsEnabledHasBeenSet =
false;
299 bool m_capacityReservationsHasBeenSet =
false;
bool StorageConfigurationHasBeenSet() const
bool InstanceRequirementsHasBeenSet() const
bool GetFipsEnabled() const
void SetCapacityReservations(CapacityReservationsT &&value)
AWS_ECS_API InstanceLaunchTemplate & operator=(Aws::Utils::Json::JsonView jsonValue)
InstanceLaunchTemplate & WithCapacityOptionType(CapacityOptionType value)
const ManagedInstancesLocalStorageConfiguration & GetLocalStorageConfiguration() const
InstanceLaunchTemplate & WithInstanceMetadataTagsPropagation(bool value)
bool MonitoringHasBeenSet() const
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetNetworkConfiguration(NetworkConfigurationT &&value)
InstanceLaunchTemplate & WithFipsEnabled(bool value)
InstanceLaunchTemplate & WithMonitoring(ManagedInstancesMonitoringOptions value)
InstanceLaunchTemplate & WithCapacityReservations(CapacityReservationsT &&value)
bool CapacityOptionTypeHasBeenSet() const
InstanceLaunchTemplate & WithLocalStorageConfiguration(LocalStorageConfigurationT &&value)
bool FipsEnabledHasBeenSet() const
bool InstanceMetadataTagsPropagationHasBeenSet() const
void SetInstanceRequirements(InstanceRequirementsT &&value)
void SetFipsEnabled(bool value)
void SetCapacityOptionType(CapacityOptionType value)
void SetMonitoring(ManagedInstancesMonitoringOptions value)
void SetEc2InstanceProfileArn(Ec2InstanceProfileArnT &&value)
AWS_ECS_API InstanceLaunchTemplate(Aws::Utils::Json::JsonView jsonValue)
bool LocalStorageConfigurationHasBeenSet() const
bool GetInstanceMetadataTagsPropagation() const
bool CapacityReservationsHasBeenSet() const
bool Ec2InstanceProfileArnHasBeenSet() const
void SetStorageConfiguration(StorageConfigurationT &&value)
InstanceLaunchTemplate & WithStorageConfiguration(StorageConfigurationT &&value)
ManagedInstancesMonitoringOptions GetMonitoring() const
const CapacityReservationRequest & GetCapacityReservations() const
void SetLocalStorageConfiguration(LocalStorageConfigurationT &&value)
InstanceLaunchTemplate & WithEc2InstanceProfileArn(Ec2InstanceProfileArnT &&value)
const InstanceRequirementsRequest & GetInstanceRequirements() const
InstanceLaunchTemplate & WithInstanceRequirements(InstanceRequirementsT &&value)
const Aws::String & GetEc2InstanceProfileArn() const
void SetInstanceMetadataTagsPropagation(bool value)
const ManagedInstancesNetworkConfiguration & GetNetworkConfiguration() const
AWS_ECS_API InstanceLaunchTemplate()=default
CapacityOptionType GetCapacityOptionType() const
bool NetworkConfigurationHasBeenSet() const
InstanceLaunchTemplate & WithNetworkConfiguration(NetworkConfigurationT &&value)
const ManagedInstancesStorageConfiguration & GetStorageConfiguration() const
ManagedInstancesMonitoringOptions
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue