7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/batch/model/EphemeralStorage.h>
9#include <aws/batch/model/FargatePlatformConfiguration.h>
10#include <aws/batch/model/KeyValuePair.h>
11#include <aws/batch/model/LinuxParameters.h>
12#include <aws/batch/model/LogConfiguration.h>
13#include <aws/batch/model/MountPoint.h>
14#include <aws/batch/model/NetworkConfiguration.h>
15#include <aws/batch/model/NetworkInterface.h>
16#include <aws/batch/model/RepositoryCredentials.h>
17#include <aws/batch/model/ResourceRequirement.h>
18#include <aws/batch/model/RuntimePlatform.h>
19#include <aws/batch/model/Secret.h>
20#include <aws/batch/model/Ulimit.h>
21#include <aws/batch/model/Volume.h>
22#include <aws/core/utils/memory/stl/AWSString.h>
23#include <aws/core/utils/memory/stl/AWSVector.h>
56 template <
typename ImageT = Aws::String>
58 m_imageHasBeenSet =
true;
59 m_image = std::forward<ImageT>(value);
61 template <
typename ImageT = Aws::String>
63 SetImage(std::forward<ImageT>(value));
87 inline int GetVcpus()
const {
return m_vcpus; }
90 m_vcpusHasBeenSet =
true;
109 m_memoryHasBeenSet =
true;
124 template <
typename CommandT = Aws::Vector<Aws::String>>
126 m_commandHasBeenSet =
true;
127 m_command = std::forward<CommandT>(value);
129 template <
typename CommandT = Aws::Vector<Aws::String>>
134 template <
typename CommandT = Aws::String>
136 m_commandHasBeenSet =
true;
137 m_command.emplace_back(std::forward<CommandT>(value));
148 template <
typename JobRoleArnT = Aws::String>
150 m_jobRoleArnHasBeenSet =
true;
151 m_jobRoleArn = std::forward<JobRoleArnT>(value);
153 template <
typename JobRoleArnT = Aws::String>
169 template <
typename ExecutionRoleArnT = Aws::String>
171 m_executionRoleArnHasBeenSet =
true;
172 m_executionRoleArn = std::forward<ExecutionRoleArnT>(value);
174 template <
typename ExecutionRoleArnT = Aws::String>
187 template <
typename VolumesT = Aws::Vector<Volume>>
189 m_volumesHasBeenSet =
true;
190 m_volumes = std::forward<VolumesT>(value);
192 template <
typename VolumesT = Aws::Vector<Volume>>
197 template <
typename VolumesT = Volume>
199 m_volumesHasBeenSet =
true;
200 m_volumes.emplace_back(std::forward<VolumesT>(value));
213 template <
typename EnvironmentT = Aws::Vector<KeyValuePair>>
215 m_environmentHasBeenSet =
true;
216 m_environment = std::forward<EnvironmentT>(value);
218 template <
typename EnvironmentT = Aws::Vector<KeyValuePair>>
223 template <
typename EnvironmentT = KeyValuePair>
225 m_environmentHasBeenSet =
true;
226 m_environment.emplace_back(std::forward<EnvironmentT>(value));
237 template <
typename MountPo
intsT = Aws::Vector<MountPo
int>>
239 m_mountPointsHasBeenSet =
true;
240 m_mountPoints = std::forward<MountPointsT>(value);
242 template <
typename MountPo
intsT = Aws::Vector<MountPo
int>>
247 template <
typename MountPo
intsT = MountPo
int>
249 m_mountPointsHasBeenSet =
true;
250 m_mountPoints.emplace_back(std::forward<MountPointsT>(value));
269 m_readonlyRootFilesystemHasBeenSet =
true;
270 m_readonlyRootFilesystem = value;
292 template <
typename UlimitsT = Aws::Vector<Ulimit>>
294 m_ulimitsHasBeenSet =
true;
295 m_ulimits = std::forward<UlimitsT>(value);
297 template <
typename UlimitsT = Aws::Vector<Ulimit>>
302 template <
typename UlimitsT = Ulimit>
304 m_ulimitsHasBeenSet =
true;
305 m_ulimits.emplace_back(std::forward<UlimitsT>(value));
321 m_privilegedHasBeenSet =
true;
322 m_privileged = value;
342 template <
typename UserT = Aws::String>
344 m_userHasBeenSet =
true;
345 m_user = std::forward<UserT>(value);
347 template <
typename UserT = Aws::String>
349 SetUser(std::forward<UserT>(value));
361 m_exitCodeHasBeenSet =
true;
377 template <
typename ReasonT = Aws::String>
379 m_reasonHasBeenSet =
true;
380 m_reason = std::forward<ReasonT>(value);
382 template <
typename ReasonT = Aws::String>
396 template <
typename ContainerInstanceArnT = Aws::String>
398 m_containerInstanceArnHasBeenSet =
true;
399 m_containerInstanceArn = std::forward<ContainerInstanceArnT>(value);
401 template <
typename ContainerInstanceArnT = Aws::String>
416 template <
typename TaskArnT = Aws::String>
418 m_taskArnHasBeenSet =
true;
419 m_taskArn = std::forward<TaskArnT>(value);
421 template <
typename TaskArnT = Aws::String>
437 template <
typename LogStreamNameT = Aws::String>
439 m_logStreamNameHasBeenSet =
true;
440 m_logStreamName = std::forward<LogStreamNameT>(value);
442 template <
typename LogStreamNameT = Aws::String>
457 template <
typename InstanceTypeT = Aws::String>
459 m_instanceTypeHasBeenSet =
true;
460 m_instanceType = std::forward<InstanceTypeT>(value);
462 template <
typename InstanceTypeT = Aws::String>
475 template <
typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
477 m_networkInterfacesHasBeenSet =
true;
478 m_networkInterfaces = std::forward<NetworkInterfacesT>(value);
480 template <
typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
485 template <
typename NetworkInterfacesT = NetworkInterface>
487 m_networkInterfacesHasBeenSet =
true;
488 m_networkInterfaces.emplace_back(std::forward<NetworkInterfacesT>(value));
501 template <
typename ResourceRequirementsT = Aws::Vector<ResourceRequirement>>
503 m_resourceRequirementsHasBeenSet =
true;
504 m_resourceRequirements = std::forward<ResourceRequirementsT>(value);
506 template <
typename ResourceRequirementsT = Aws::Vector<ResourceRequirement>>
511 template <
typename ResourceRequirementsT = ResourceRequirement>
513 m_resourceRequirementsHasBeenSet =
true;
514 m_resourceRequirements.emplace_back(std::forward<ResourceRequirementsT>(value));
526 template <
typename LinuxParametersT = LinuxParameters>
528 m_linuxParametersHasBeenSet =
true;
529 m_linuxParameters = std::forward<LinuxParametersT>(value);
531 template <
typename LinuxParametersT = LinuxParameters>
574 template <
typename LogConfigurationT = LogConfiguration>
576 m_logConfigurationHasBeenSet =
true;
577 m_logConfiguration = std::forward<LogConfigurationT>(value);
579 template <
typename LogConfigurationT = LogConfiguration>
594 template <
typename SecretsT = Aws::Vector<Secret>>
596 m_secretsHasBeenSet =
true;
597 m_secrets = std::forward<SecretsT>(value);
599 template <
typename SecretsT = Aws::Vector<Secret>>
604 template <
typename SecretsT = Secret>
606 m_secretsHasBeenSet =
true;
607 m_secrets.emplace_back(std::forward<SecretsT>(value));
620 template <
typename NetworkConfigurationT = NetworkConfiguration>
622 m_networkConfigurationHasBeenSet =
true;
623 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
625 template <
typename NetworkConfigurationT = NetworkConfiguration>
640 template <
typename FargatePlatformConfigurationT = FargatePlatformConfiguration>
642 m_fargatePlatformConfigurationHasBeenSet =
true;
643 m_fargatePlatformConfiguration = std::forward<FargatePlatformConfigurationT>(value);
645 template <
typename FargatePlatformConfigurationT = FargatePlatformConfiguration>
660 template <
typename EphemeralStorageT = EphemeralStorage>
662 m_ephemeralStorageHasBeenSet =
true;
663 m_ephemeralStorage = std::forward<EphemeralStorageT>(value);
665 template <
typename EphemeralStorageT = EphemeralStorage>
679 template <
typename RuntimePlatformT = RuntimePlatform>
681 m_runtimePlatformHasBeenSet =
true;
682 m_runtimePlatform = std::forward<RuntimePlatformT>(value);
684 template <
typename RuntimePlatformT = RuntimePlatform>
697 template <
typename RepositoryCredentialsT = RepositoryCredentials>
699 m_repositoryCredentialsHasBeenSet =
true;
700 m_repositoryCredentials = std::forward<RepositoryCredentialsT>(value);
702 template <
typename RepositoryCredentialsT = RepositoryCredentials>
718 m_enableExecuteCommandHasBeenSet =
true;
719 m_enableExecuteCommand = value;
745 bool m_readonlyRootFilesystem{
false};
749 bool m_privileged{
false};
769 LinuxParameters m_linuxParameters;
771 LogConfiguration m_logConfiguration;
775 NetworkConfiguration m_networkConfiguration;
777 FargatePlatformConfiguration m_fargatePlatformConfiguration;
779 EphemeralStorage m_ephemeralStorage;
781 RuntimePlatform m_runtimePlatform;
783 RepositoryCredentials m_repositoryCredentials;
785 bool m_enableExecuteCommand{
false};
786 bool m_imageHasBeenSet =
false;
787 bool m_vcpusHasBeenSet =
false;
788 bool m_memoryHasBeenSet =
false;
789 bool m_commandHasBeenSet =
false;
790 bool m_jobRoleArnHasBeenSet =
false;
791 bool m_executionRoleArnHasBeenSet =
false;
792 bool m_volumesHasBeenSet =
false;
793 bool m_environmentHasBeenSet =
false;
794 bool m_mountPointsHasBeenSet =
false;
795 bool m_readonlyRootFilesystemHasBeenSet =
false;
796 bool m_ulimitsHasBeenSet =
false;
797 bool m_privilegedHasBeenSet =
false;
798 bool m_userHasBeenSet =
false;
799 bool m_exitCodeHasBeenSet =
false;
800 bool m_reasonHasBeenSet =
false;
801 bool m_containerInstanceArnHasBeenSet =
false;
802 bool m_taskArnHasBeenSet =
false;
803 bool m_logStreamNameHasBeenSet =
false;
804 bool m_instanceTypeHasBeenSet =
false;
805 bool m_networkInterfacesHasBeenSet =
false;
806 bool m_resourceRequirementsHasBeenSet =
false;
807 bool m_linuxParametersHasBeenSet =
false;
808 bool m_logConfigurationHasBeenSet =
false;
809 bool m_secretsHasBeenSet =
false;
810 bool m_networkConfigurationHasBeenSet =
false;
811 bool m_fargatePlatformConfigurationHasBeenSet =
false;
812 bool m_ephemeralStorageHasBeenSet =
false;
813 bool m_runtimePlatformHasBeenSet =
false;
814 bool m_repositoryCredentialsHasBeenSet =
false;
815 bool m_enableExecuteCommandHasBeenSet =
false;
const Aws::String & GetContainerInstanceArn() const
void SetNetworkConfiguration(NetworkConfigurationT &&value)
bool ReasonHasBeenSet() const
void SetContainerInstanceArn(ContainerInstanceArnT &&value)
void SetMountPoints(MountPointsT &&value)
bool GetEnableExecuteCommand() const
void SetJobRoleArn(JobRoleArnT &&value)
AWS_BATCH_API ContainerDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
ContainerDetail & AddResourceRequirements(ResourceRequirementsT &&value)
void SetPrivileged(bool value)
void SetLogConfiguration(LogConfigurationT &&value)
bool VolumesHasBeenSet() const
const Aws::String & GetImage() const
void SetRepositoryCredentials(RepositoryCredentialsT &&value)
void SetRuntimePlatform(RuntimePlatformT &&value)
ContainerDetail & AddUlimits(UlimitsT &&value)
void SetVolumes(VolumesT &&value)
bool GetPrivileged() const
bool ReadonlyRootFilesystemHasBeenSet() const
const Aws::String & GetExecutionRoleArn() const
ContainerDetail & WithEnvironment(EnvironmentT &&value)
bool CommandHasBeenSet() const
bool LogConfigurationHasBeenSet() const
bool PrivilegedHasBeenSet() const
bool UlimitsHasBeenSet() const
const Aws::Vector< NetworkInterface > & GetNetworkInterfaces() const
void SetLinuxParameters(LinuxParametersT &&value)
void SetTaskArn(TaskArnT &&value)
void SetLogStreamName(LogStreamNameT &&value)
ContainerDetail & WithResourceRequirements(ResourceRequirementsT &&value)
bool MountPointsHasBeenSet() const
bool ExitCodeHasBeenSet() const
const Aws::String & GetJobRoleArn() const
void SetEphemeralStorage(EphemeralStorageT &&value)
ContainerDetail & WithMemory(int value)
bool FargatePlatformConfigurationHasBeenSet() const
ContainerDetail & WithImage(ImageT &&value)
const Aws::String & GetReason() const
const Aws::Vector< Ulimit > & GetUlimits() const
bool InstanceTypeHasBeenSet() const
ContainerDetail & AddMountPoints(MountPointsT &&value)
const Aws::String & GetTaskArn() const
const Aws::String & GetUser() const
const RepositoryCredentials & GetRepositoryCredentials() const
ContainerDetail & WithLinuxParameters(LinuxParametersT &&value)
ContainerDetail & WithLogStreamName(LogStreamNameT &&value)
bool VcpusHasBeenSet() const
ContainerDetail & WithInstanceType(InstanceTypeT &&value)
ContainerDetail & WithCommand(CommandT &&value)
bool ContainerInstanceArnHasBeenSet() const
ContainerDetail & WithReason(ReasonT &&value)
bool NetworkInterfacesHasBeenSet() const
ContainerDetail & WithRuntimePlatform(RuntimePlatformT &&value)
bool JobRoleArnHasBeenSet() const
const LinuxParameters & GetLinuxParameters() const
void SetInstanceType(InstanceTypeT &&value)
const Aws::Vector< Secret > & GetSecrets() const
ContainerDetail & WithRepositoryCredentials(RepositoryCredentialsT &&value)
bool ResourceRequirementsHasBeenSet() const
ContainerDetail & WithTaskArn(TaskArnT &&value)
void SetImage(ImageT &&value)
ContainerDetail & WithLogConfiguration(LogConfigurationT &&value)
bool EphemeralStorageHasBeenSet() const
ContainerDetail & WithUser(UserT &&value)
void SetExitCode(int value)
const Aws::String & GetInstanceType() const
ContainerDetail & WithJobRoleArn(JobRoleArnT &&value)
void SetFargatePlatformConfiguration(FargatePlatformConfigurationT &&value)
const LogConfiguration & GetLogConfiguration() const
const Aws::Vector< MountPoint > & GetMountPoints() const
bool LogStreamNameHasBeenSet() const
void SetSecrets(SecretsT &&value)
bool TaskArnHasBeenSet() const
bool LinuxParametersHasBeenSet() const
ContainerDetail & AddEnvironment(EnvironmentT &&value)
bool EnvironmentHasBeenSet() const
bool RuntimePlatformHasBeenSet() const
void SetReason(ReasonT &&value)
void SetUser(UserT &&value)
void SetEnableExecuteCommand(bool value)
AWS_BATCH_API ContainerDetail(Aws::Utils::Json::JsonView jsonValue)
ContainerDetail & WithEphemeralStorage(EphemeralStorageT &&value)
ContainerDetail & WithReadonlyRootFilesystem(bool value)
ContainerDetail & WithFargatePlatformConfiguration(FargatePlatformConfigurationT &&value)
ContainerDetail & AddSecrets(SecretsT &&value)
ContainerDetail & WithNetworkInterfaces(NetworkInterfacesT &&value)
void SetMemory(int value)
ContainerDetail & WithVolumes(VolumesT &&value)
bool GetReadonlyRootFilesystem() const
ContainerDetail & WithNetworkConfiguration(NetworkConfigurationT &&value)
void SetReadonlyRootFilesystem(bool value)
void SetUlimits(UlimitsT &&value)
AWS_BATCH_API ContainerDetail()=default
const NetworkConfiguration & GetNetworkConfiguration() const
ContainerDetail & WithContainerInstanceArn(ContainerInstanceArnT &&value)
ContainerDetail & WithExecutionRoleArn(ExecutionRoleArnT &&value)
const Aws::String & GetLogStreamName() const
const Aws::Vector< ResourceRequirement > & GetResourceRequirements() const
const Aws::Vector< Aws::String > & GetCommand() const
ContainerDetail & WithVcpus(int value)
bool EnableExecuteCommandHasBeenSet() const
ContainerDetail & WithPrivileged(bool value)
const Aws::Vector< KeyValuePair > & GetEnvironment() const
void SetCommand(CommandT &&value)
void SetEnvironment(EnvironmentT &&value)
bool ImageHasBeenSet() const
ContainerDetail & WithExitCode(int value)
ContainerDetail & WithUlimits(UlimitsT &&value)
const RuntimePlatform & GetRuntimePlatform() const
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
const EphemeralStorage & GetEphemeralStorage() const
bool UserHasBeenSet() const
ContainerDetail & WithSecrets(SecretsT &&value)
ContainerDetail & AddCommand(CommandT &&value)
bool NetworkConfigurationHasBeenSet() const
const FargatePlatformConfiguration & GetFargatePlatformConfiguration() const
bool RepositoryCredentialsHasBeenSet() const
bool ExecutionRoleArnHasBeenSet() const
ContainerDetail & AddNetworkInterfaces(NetworkInterfacesT &&value)
ContainerDetail & WithMountPoints(MountPointsT &&value)
ContainerDetail & WithEnableExecuteCommand(bool value)
void SetResourceRequirements(ResourceRequirementsT &&value)
void SetNetworkInterfaces(NetworkInterfacesT &&value)
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
bool SecretsHasBeenSet() const
ContainerDetail & AddVolumes(VolumesT &&value)
const Aws::Vector< Volume > & GetVolumes() const
bool MemoryHasBeenSet() 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