7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ecs/model/NetworkMode.h>
11#include <aws/ecs/model/TaskDefinitionStatus.h>
12#include <aws/ecs/model/RuntimePlatform.h>
13#include <aws/ecs/model/PidMode.h>
14#include <aws/ecs/model/IpcMode.h>
15#include <aws/ecs/model/ProxyConfiguration.h>
16#include <aws/core/utils/DateTime.h>
17#include <aws/ecs/model/EphemeralStorage.h>
18#include <aws/ecs/model/ContainerDefinition.h>
19#include <aws/ecs/model/Volume.h>
20#include <aws/ecs/model/Attribute.h>
21#include <aws/ecs/model/TaskDefinitionPlacementConstraint.h>
22#include <aws/ecs/model/Compatibility.h>
23#include <aws/ecs/model/InferenceAccelerator.h>
65 template<
typename TaskDefinitionArnT = Aws::String>
66 void SetTaskDefinitionArn(TaskDefinitionArnT&& value) { m_taskDefinitionArnHasBeenSet =
true; m_taskDefinitionArn = std::forward<TaskDefinitionArnT>(value); }
67 template<
typename TaskDefinitionArnT = Aws::String>
82 template<
typename ContainerDefinitionsT = Aws::Vector<ContainerDefinition>>
83 void SetContainerDefinitions(ContainerDefinitionsT&& value) { m_containerDefinitionsHasBeenSet =
true; m_containerDefinitions = std::forward<ContainerDefinitionsT>(value); }
84 template<
typename ContainerDefinitionsT = Aws::Vector<ContainerDefinition>>
86 template<
typename ContainerDefinitionsT = ContainerDefinition>
87 TaskDefinition&
AddContainerDefinitions(ContainerDefinitionsT&& value) { m_containerDefinitionsHasBeenSet =
true; m_containerDefinitions.emplace_back(std::forward<ContainerDefinitionsT>(value));
return *
this; }
101 template<
typename FamilyT = Aws::String>
102 void SetFamily(FamilyT&& value) { m_familyHasBeenSet =
true; m_family = std::forward<FamilyT>(value); }
103 template<
typename FamilyT = Aws::String>
119 template<
typename TaskRoleArnT = Aws::String>
120 void SetTaskRoleArn(TaskRoleArnT&& value) { m_taskRoleArnHasBeenSet =
true; m_taskRoleArn = std::forward<TaskRoleArnT>(value); }
121 template<
typename TaskRoleArnT = Aws::String>
136 template<
typename ExecutionRoleArnT = Aws::String>
137 void SetExecutionRoleArn(ExecutionRoleArnT&& value) { m_executionRoleArnHasBeenSet =
true; m_executionRoleArn = std::forward<ExecutionRoleArnT>(value); }
138 template<
typename ExecutionRoleArnT = Aws::String>
191 inline void SetRevision(
int value) { m_revisionHasBeenSet =
true; m_revision = value; }
206 template<
typename VolumesT = Aws::Vector<Volume>>
207 void SetVolumes(VolumesT&& value) { m_volumesHasBeenSet =
true; m_volumes = std::forward<VolumesT>(value); }
208 template<
typename VolumesT = Aws::Vector<Volume>>
210 template<
typename VolumesT = Volume>
211 TaskDefinition&
AddVolumes(VolumesT&& value) { m_volumesHasBeenSet =
true; m_volumes.emplace_back(std::forward<VolumesT>(value));
return *
this; }
239 template<
typename RequiresAttributesT = Aws::Vector<Attribute>>
240 void SetRequiresAttributes(RequiresAttributesT&& value) { m_requiresAttributesHasBeenSet =
true; m_requiresAttributes = std::forward<RequiresAttributesT>(value); }
241 template<
typename RequiresAttributesT = Aws::Vector<Attribute>>
243 template<
typename RequiresAttributesT = Attribute>
244 TaskDefinition&
AddRequiresAttributes(RequiresAttributesT&& value) { m_requiresAttributesHasBeenSet =
true; m_requiresAttributes.emplace_back(std::forward<RequiresAttributesT>(value));
return *
this; }
254 template<
typename PlacementConstra
intsT = Aws::Vector<TaskDefinitionPlacementConstra
int>>
255 void SetPlacementConstraints(PlacementConstraintsT&& value) { m_placementConstraintsHasBeenSet =
true; m_placementConstraints = std::forward<PlacementConstraintsT>(value); }
256 template<
typename PlacementConstra
intsT = Aws::Vector<TaskDefinitionPlacementConstra
int>>
258 template<
typename PlacementConstra
intsT = TaskDefinitionPlacementConstra
int>
259 TaskDefinition&
AddPlacementConstraints(PlacementConstraintsT&& value) { m_placementConstraintsHasBeenSet =
true; m_placementConstraints.emplace_back(std::forward<PlacementConstraintsT>(value));
return *
this; }
272 template<
typename CompatibilitiesT = Aws::Vector<Compatibility>>
273 void SetCompatibilities(CompatibilitiesT&& value) { m_compatibilitiesHasBeenSet =
true; m_compatibilities = std::forward<CompatibilitiesT>(value); }
274 template<
typename CompatibilitiesT = Aws::Vector<Compatibility>>
288 template<
typename RuntimePlatformT = RuntimePlatform>
289 void SetRuntimePlatform(RuntimePlatformT&& value) { m_runtimePlatformHasBeenSet =
true; m_runtimePlatform = std::forward<RuntimePlatformT>(value); }
290 template<
typename RuntimePlatformT = RuntimePlatform>
305 template<
typename RequiresCompatibilitiesT = Aws::Vector<Compatibility>>
306 void SetRequiresCompatibilities(RequiresCompatibilitiesT&& value) { m_requiresCompatibilitiesHasBeenSet =
true; m_requiresCompatibilities = std::forward<RequiresCompatibilitiesT>(value); }
307 template<
typename RequiresCompatibilitiesT = Aws::Vector<Compatibility>>
328 template<
typename CpuT = Aws::String>
329 void SetCpu(CpuT&& value) { m_cpuHasBeenSet =
true; m_cpu = std::forward<CpuT>(value); }
330 template<
typename CpuT = Aws::String>
363 template<
typename MemoryT = Aws::String>
364 void SetMemory(MemoryT&& value) { m_memoryHasBeenSet =
true; m_memory = std::forward<MemoryT>(value); }
365 template<
typename MemoryT = Aws::String>
375 template<
typename InferenceAcceleratorsT = Aws::Vector<InferenceAccelerator>>
376 void SetInferenceAccelerators(InferenceAcceleratorsT&& value) { m_inferenceAcceleratorsHasBeenSet =
true; m_inferenceAccelerators = std::forward<InferenceAcceleratorsT>(value); }
377 template<
typename InferenceAcceleratorsT = Aws::Vector<InferenceAccelerator>>
379 template<
typename InferenceAcceleratorsT = InferenceAccelerator>
380 TaskDefinition&
AddInferenceAccelerators(InferenceAcceleratorsT&& value) { m_inferenceAcceleratorsHasBeenSet =
true; m_inferenceAccelerators.emplace_back(std::forward<InferenceAcceleratorsT>(value));
return *
this; }
455 template<
typename ProxyConfigurationT = ProxyConfiguration>
456 void SetProxyConfiguration(ProxyConfigurationT&& value) { m_proxyConfigurationHasBeenSet =
true; m_proxyConfiguration = std::forward<ProxyConfigurationT>(value); }
457 template<
typename ProxyConfigurationT = ProxyConfiguration>
467 template<
typename RegisteredAtT = Aws::Utils::DateTime>
468 void SetRegisteredAt(RegisteredAtT&& value) { m_registeredAtHasBeenSet =
true; m_registeredAt = std::forward<RegisteredAtT>(value); }
469 template<
typename RegisteredAtT = Aws::Utils::DateTime>
480 template<
typename DeregisteredAtT = Aws::Utils::DateTime>
481 void SetDeregisteredAt(DeregisteredAtT&& value) { m_deregisteredAtHasBeenSet =
true; m_deregisteredAt = std::forward<DeregisteredAtT>(value); }
482 template<
typename DeregisteredAtT = Aws::Utils::DateTime>
492 template<
typename RegisteredByT = Aws::String>
493 void SetRegisteredBy(RegisteredByT&& value) { m_registeredByHasBeenSet =
true; m_registeredBy = std::forward<RegisteredByT>(value); }
494 template<
typename RegisteredByT = Aws::String>
505 template<
typename EphemeralStorageT = EphemeralStorage>
506 void SetEphemeralStorage(EphemeralStorageT&& value) { m_ephemeralStorageHasBeenSet =
true; m_ephemeralStorage = std::forward<EphemeralStorageT>(value); }
507 template<
typename EphemeralStorageT = EphemeralStorage>
525 bool m_taskDefinitionArnHasBeenSet =
false;
528 bool m_containerDefinitionsHasBeenSet =
false;
531 bool m_familyHasBeenSet =
false;
534 bool m_taskRoleArnHasBeenSet =
false;
537 bool m_executionRoleArnHasBeenSet =
false;
540 bool m_networkModeHasBeenSet =
false;
543 bool m_revisionHasBeenSet =
false;
546 bool m_volumesHasBeenSet =
false;
549 bool m_statusHasBeenSet =
false;
552 bool m_requiresAttributesHasBeenSet =
false;
555 bool m_placementConstraintsHasBeenSet =
false;
558 bool m_compatibilitiesHasBeenSet =
false;
560 RuntimePlatform m_runtimePlatform;
561 bool m_runtimePlatformHasBeenSet =
false;
564 bool m_requiresCompatibilitiesHasBeenSet =
false;
567 bool m_cpuHasBeenSet =
false;
570 bool m_memoryHasBeenSet =
false;
573 bool m_inferenceAcceleratorsHasBeenSet =
false;
576 bool m_pidModeHasBeenSet =
false;
579 bool m_ipcModeHasBeenSet =
false;
581 ProxyConfiguration m_proxyConfiguration;
582 bool m_proxyConfigurationHasBeenSet =
false;
585 bool m_registeredAtHasBeenSet =
false;
588 bool m_deregisteredAtHasBeenSet =
false;
591 bool m_registeredByHasBeenSet =
false;
593 EphemeralStorage m_ephemeralStorage;
594 bool m_ephemeralStorageHasBeenSet =
false;
596 bool m_enableFaultInjection{
false};
597 bool m_enableFaultInjectionHasBeenSet =
false;
const Aws::String & GetRegisteredBy() const
TaskDefinition & WithCpu(CpuT &&value)
void SetIpcMode(IpcMode value)
const Aws::String & GetMemory() const
TaskDefinition & WithVolumes(VolumesT &&value)
TaskDefinition & WithStatus(TaskDefinitionStatus value)
TaskDefinition & AddVolumes(VolumesT &&value)
const Aws::String & GetCpu() const
bool RequiresCompatibilitiesHasBeenSet() const
const Aws::Vector< Volume > & GetVolumes() const
void SetPidMode(PidMode value)
TaskDefinition & WithDeregisteredAt(DeregisteredAtT &&value)
TaskDefinition & WithCompatibilities(CompatibilitiesT &&value)
const ProxyConfiguration & GetProxyConfiguration() const
void SetEnableFaultInjection(bool value)
const Aws::Vector< Compatibility > & GetCompatibilities() const
void SetCompatibilities(CompatibilitiesT &&value)
void SetInferenceAccelerators(InferenceAcceleratorsT &&value)
bool TaskRoleArnHasBeenSet() const
void SetRevision(int value)
const Aws::String & GetTaskDefinitionArn() const
void SetTaskDefinitionArn(TaskDefinitionArnT &&value)
void SetStatus(TaskDefinitionStatus value)
TaskDefinition & WithNetworkMode(NetworkMode value)
void SetRegisteredAt(RegisteredAtT &&value)
bool NetworkModeHasBeenSet() const
const Aws::String & GetTaskRoleArn() const
bool GetEnableFaultInjection() const
bool VolumesHasBeenSet() const
AWS_ECS_API TaskDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetDeregisteredAt(DeregisteredAtT &&value)
TaskDefinition & WithRequiresAttributes(RequiresAttributesT &&value)
TaskDefinition & AddPlacementConstraints(PlacementConstraintsT &&value)
TaskDefinition & WithMemory(MemoryT &&value)
void SetContainerDefinitions(ContainerDefinitionsT &&value)
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
TaskDefinition & WithExecutionRoleArn(ExecutionRoleArnT &&value)
void SetPlacementConstraints(PlacementConstraintsT &&value)
void SetRequiresCompatibilities(RequiresCompatibilitiesT &&value)
TaskDefinition & AddInferenceAccelerators(InferenceAcceleratorsT &&value)
AWS_ECS_API TaskDefinition(Aws::Utils::Json::JsonView jsonValue)
TaskDefinition & WithFamily(FamilyT &&value)
TaskDefinition & WithRegisteredBy(RegisteredByT &&value)
AWS_ECS_API TaskDefinition()=default
bool RevisionHasBeenSet() const
const RuntimePlatform & GetRuntimePlatform() const
PidMode GetPidMode() const
void SetRuntimePlatform(RuntimePlatformT &&value)
TaskDefinition & WithRegisteredAt(RegisteredAtT &&value)
TaskDefinition & WithProxyConfiguration(ProxyConfigurationT &&value)
bool PidModeHasBeenSet() const
bool EnableFaultInjectionHasBeenSet() const
TaskDefinition & WithTaskDefinitionArn(TaskDefinitionArnT &&value)
TaskDefinition & WithIpcMode(IpcMode value)
const Aws::Vector< InferenceAccelerator > & GetInferenceAccelerators() const
bool ContainerDefinitionsHasBeenSet() const
void SetVolumes(VolumesT &&value)
bool RegisteredByHasBeenSet() const
void SetFamily(FamilyT &&value)
bool StatusHasBeenSet() const
void SetRegisteredBy(RegisteredByT &&value)
bool DeregisteredAtHasBeenSet() const
bool IpcModeHasBeenSet() const
const Aws::Vector< Compatibility > & GetRequiresCompatibilities() const
TaskDefinition & WithEnableFaultInjection(bool value)
const Aws::Vector< Attribute > & GetRequiresAttributes() const
bool ProxyConfigurationHasBeenSet() const
bool TaskDefinitionArnHasBeenSet() const
bool ExecutionRoleArnHasBeenSet() const
TaskDefinitionStatus GetStatus() const
const Aws::String & GetExecutionRoleArn() const
const EphemeralStorage & GetEphemeralStorage() const
void SetCpu(CpuT &&value)
TaskDefinition & AddRequiresCompatibilities(Compatibility value)
NetworkMode GetNetworkMode() const
void SetTaskRoleArn(TaskRoleArnT &&value)
TaskDefinition & WithRuntimePlatform(RuntimePlatformT &&value)
const Aws::Vector< TaskDefinitionPlacementConstraint > & GetPlacementConstraints() const
bool CompatibilitiesHasBeenSet() const
const Aws::Utils::DateTime & GetDeregisteredAt() const
TaskDefinition & WithRevision(int value)
void SetProxyConfiguration(ProxyConfigurationT &&value)
TaskDefinition & AddCompatibilities(Compatibility value)
TaskDefinition & WithEphemeralStorage(EphemeralStorageT &&value)
bool EphemeralStorageHasBeenSet() const
const Aws::String & GetFamily() const
void SetEphemeralStorage(EphemeralStorageT &&value)
bool CpuHasBeenSet() const
bool PlacementConstraintsHasBeenSet() const
TaskDefinition & WithTaskRoleArn(TaskRoleArnT &&value)
bool RegisteredAtHasBeenSet() const
TaskDefinition & AddContainerDefinitions(ContainerDefinitionsT &&value)
void SetMemory(MemoryT &&value)
void SetRequiresAttributes(RequiresAttributesT &&value)
TaskDefinition & WithPidMode(PidMode value)
const Aws::Utils::DateTime & GetRegisteredAt() const
IpcMode GetIpcMode() const
bool MemoryHasBeenSet() const
bool RequiresAttributesHasBeenSet() const
TaskDefinition & WithInferenceAccelerators(InferenceAcceleratorsT &&value)
TaskDefinition & WithRequiresCompatibilities(RequiresCompatibilitiesT &&value)
bool RuntimePlatformHasBeenSet() const
const Aws::Vector< ContainerDefinition > & GetContainerDefinitions() const
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
TaskDefinition & WithPlacementConstraints(PlacementConstraintsT &&value)
TaskDefinition & AddRequiresAttributes(RequiresAttributesT &&value)
TaskDefinition & WithContainerDefinitions(ContainerDefinitionsT &&value)
bool InferenceAcceleratorsHasBeenSet() const
void SetNetworkMode(NetworkMode value)
bool FamilyHasBeenSet() 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