7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/batch/model/LinuxParameters.h>
11#include <aws/batch/model/LogConfiguration.h>
12#include <aws/batch/model/NetworkConfiguration.h>
13#include <aws/batch/model/FargatePlatformConfiguration.h>
14#include <aws/batch/model/EphemeralStorage.h>
15#include <aws/batch/model/RuntimePlatform.h>
16#include <aws/batch/model/RepositoryCredentials.h>
17#include <aws/batch/model/Volume.h>
18#include <aws/batch/model/KeyValuePair.h>
19#include <aws/batch/model/MountPoint.h>
20#include <aws/batch/model/Ulimit.h>
21#include <aws/batch/model/ResourceRequirement.h>
22#include <aws/batch/model/Secret.h>
89 template<
typename ImageT = Aws::String>
90 void SetImage(ImageT&& value) { m_imageHasBeenSet =
true; m_image = std::forward<ImageT>(value); }
91 template<
typename ImageT = Aws::String>
109 template<
typename CommandT = Aws::Vector<Aws::String>>
110 void SetCommand(CommandT&& value) { m_commandHasBeenSet =
true; m_command = std::forward<CommandT>(value); }
111 template<
typename CommandT = Aws::Vector<Aws::String>>
113 template<
typename CommandT = Aws::String>
127 template<
typename JobRoleArnT = Aws::String>
128 void SetJobRoleArn(JobRoleArnT&& value) { m_jobRoleArnHasBeenSet =
true; m_jobRoleArn = std::forward<JobRoleArnT>(value); }
129 template<
typename JobRoleArnT = Aws::String>
143 template<
typename ExecutionRoleArnT = Aws::String>
144 void SetExecutionRoleArn(ExecutionRoleArnT&& value) { m_executionRoleArnHasBeenSet =
true; m_executionRoleArn = std::forward<ExecutionRoleArnT>(value); }
145 template<
typename ExecutionRoleArnT = Aws::String>
155 template<
typename VolumesT = Aws::Vector<Volume>>
156 void SetVolumes(VolumesT&& value) { m_volumesHasBeenSet =
true; m_volumes = std::forward<VolumesT>(value); }
157 template<
typename VolumesT = Aws::Vector<Volume>>
159 template<
typename VolumesT = Volume>
179 template<
typename EnvironmentT = Aws::Vector<KeyValuePair>>
180 void SetEnvironment(EnvironmentT&& value) { m_environmentHasBeenSet =
true; m_environment = std::forward<EnvironmentT>(value); }
181 template<
typename EnvironmentT = Aws::Vector<KeyValuePair>>
183 template<
typename EnvironmentT = KeyValuePair>
199 template<
typename MountPo
intsT = Aws::Vector<MountPo
int>>
200 void SetMountPoints(MountPointsT&& value) { m_mountPointsHasBeenSet =
true; m_mountPoints = std::forward<MountPointsT>(value); }
201 template<
typename MountPo
intsT = Aws::Vector<MountPo
int>>
203 template<
typename MountPo
intsT = MountPo
int>
238 inline void SetPrivileged(
bool value) { m_privilegedHasBeenSet =
true; m_privileged = value; }
256 template<
typename UlimitsT = Aws::Vector<Ulimit>>
257 void SetUlimits(UlimitsT&& value) { m_ulimitsHasBeenSet =
true; m_ulimits = std::forward<UlimitsT>(value); }
258 template<
typename UlimitsT = Aws::Vector<Ulimit>>
260 template<
typename UlimitsT = Ulimit>
276 template<
typename UserT = Aws::String>
277 void SetUser(UserT&& value) { m_userHasBeenSet =
true; m_user = std::forward<UserT>(value); }
278 template<
typename UserT = Aws::String>
291 template<
typename InstanceTypeT = Aws::String>
292 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
293 template<
typename InstanceTypeT = Aws::String>
305 template<
typename ResourceRequirementsT = Aws::Vector<ResourceRequirement>>
306 void SetResourceRequirements(ResourceRequirementsT&& value) { m_resourceRequirementsHasBeenSet =
true; m_resourceRequirements = std::forward<ResourceRequirementsT>(value); }
307 template<
typename ResourceRequirementsT = Aws::Vector<ResourceRequirement>>
309 template<
typename ResourceRequirementsT = ResourceRequirement>
320 template<
typename LinuxParametersT = LinuxParameters>
321 void SetLinuxParameters(LinuxParametersT&& value) { m_linuxParametersHasBeenSet =
true; m_linuxParameters = std::forward<LinuxParametersT>(value); }
322 template<
typename LinuxParametersT = LinuxParameters>
361 template<
typename LogConfigurationT = LogConfiguration>
362 void SetLogConfiguration(LogConfigurationT&& value) { m_logConfigurationHasBeenSet =
true; m_logConfiguration = std::forward<LogConfigurationT>(value); }
363 template<
typename LogConfigurationT = LogConfiguration>
375 template<
typename SecretsT = Aws::Vector<Secret>>
376 void SetSecrets(SecretsT&& value) { m_secretsHasBeenSet =
true; m_secrets = std::forward<SecretsT>(value); }
377 template<
typename SecretsT = Aws::Vector<Secret>>
379 template<
typename SecretsT = Secret>
391 template<
typename NetworkConfigurationT = NetworkConfiguration>
392 void SetNetworkConfiguration(NetworkConfigurationT&& value) { m_networkConfigurationHasBeenSet =
true; m_networkConfiguration = std::forward<NetworkConfigurationT>(value); }
393 template<
typename NetworkConfigurationT = NetworkConfiguration>
405 template<
typename FargatePlatformConfigurationT = FargatePlatformConfiguration>
406 void SetFargatePlatformConfiguration(FargatePlatformConfigurationT&& value) { m_fargatePlatformConfigurationHasBeenSet =
true; m_fargatePlatformConfiguration = std::forward<FargatePlatformConfigurationT>(value); }
407 template<
typename FargatePlatformConfigurationT = FargatePlatformConfiguration>
431 template<
typename EphemeralStorageT = EphemeralStorage>
432 void SetEphemeralStorage(EphemeralStorageT&& value) { m_ephemeralStorageHasBeenSet =
true; m_ephemeralStorage = std::forward<EphemeralStorageT>(value); }
433 template<
typename EphemeralStorageT = EphemeralStorage>
444 template<
typename RuntimePlatformT = RuntimePlatform>
445 void SetRuntimePlatform(RuntimePlatformT&& value) { m_runtimePlatformHasBeenSet =
true; m_runtimePlatform = std::forward<RuntimePlatformT>(value); }
446 template<
typename RuntimePlatformT = RuntimePlatform>
456 template<
typename RepositoryCredentialsT = RepositoryCredentials>
457 void SetRepositoryCredentials(RepositoryCredentialsT&& value) { m_repositoryCredentialsHasBeenSet =
true; m_repositoryCredentials = std::forward<RepositoryCredentialsT>(value); }
458 template<
typename RepositoryCredentialsT = RepositoryCredentials>
464 bool m_imageHasBeenSet =
false;
467 bool m_commandHasBeenSet =
false;
470 bool m_jobRoleArnHasBeenSet =
false;
473 bool m_executionRoleArnHasBeenSet =
false;
476 bool m_volumesHasBeenSet =
false;
479 bool m_environmentHasBeenSet =
false;
482 bool m_mountPointsHasBeenSet =
false;
484 bool m_readonlyRootFilesystem{
false};
485 bool m_readonlyRootFilesystemHasBeenSet =
false;
487 bool m_privileged{
false};
488 bool m_privilegedHasBeenSet =
false;
491 bool m_ulimitsHasBeenSet =
false;
494 bool m_userHasBeenSet =
false;
497 bool m_instanceTypeHasBeenSet =
false;
500 bool m_resourceRequirementsHasBeenSet =
false;
502 LinuxParameters m_linuxParameters;
503 bool m_linuxParametersHasBeenSet =
false;
505 LogConfiguration m_logConfiguration;
506 bool m_logConfigurationHasBeenSet =
false;
509 bool m_secretsHasBeenSet =
false;
511 NetworkConfiguration m_networkConfiguration;
512 bool m_networkConfigurationHasBeenSet =
false;
514 FargatePlatformConfiguration m_fargatePlatformConfiguration;
515 bool m_fargatePlatformConfigurationHasBeenSet =
false;
517 bool m_enableExecuteCommand{
false};
518 bool m_enableExecuteCommandHasBeenSet =
false;
520 EphemeralStorage m_ephemeralStorage;
521 bool m_ephemeralStorageHasBeenSet =
false;
523 RuntimePlatform m_runtimePlatform;
524 bool m_runtimePlatformHasBeenSet =
false;
526 RepositoryCredentials m_repositoryCredentials;
527 bool m_repositoryCredentialsHasBeenSet =
false;
const Aws::String & GetExecutionRoleArn() const
bool LinuxParametersHasBeenSet() const
AWS_BATCH_API ContainerProperties(Aws::Utils::Json::JsonView jsonValue)
ContainerProperties & WithLogConfiguration(LogConfigurationT &&value)
const Aws::Vector< Ulimit > & GetUlimits() const
void SetResourceRequirements(ResourceRequirementsT &&value)
ContainerProperties & WithVolumes(VolumesT &&value)
ContainerProperties & WithExecutionRoleArn(ExecutionRoleArnT &&value)
AWS_BATCH_API ContainerProperties()=default
const Aws::String & GetInstanceType() const
bool UlimitsHasBeenSet() const
const RuntimePlatform & GetRuntimePlatform() const
void SetLogConfiguration(LogConfigurationT &&value)
void SetUser(UserT &&value)
void SetNetworkConfiguration(NetworkConfigurationT &&value)
ContainerProperties & WithUlimits(UlimitsT &&value)
ContainerProperties & AddEnvironment(EnvironmentT &&value)
ContainerProperties & WithReadonlyRootFilesystem(bool value)
ContainerProperties & AddMountPoints(MountPointsT &&value)
ContainerProperties & WithSecrets(SecretsT &&value)
bool VolumesHasBeenSet() const
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
void SetCommand(CommandT &&value)
void SetEphemeralStorage(EphemeralStorageT &&value)
const Aws::String & GetJobRoleArn() const
bool InstanceTypeHasBeenSet() const
void SetJobRoleArn(JobRoleArnT &&value)
ContainerProperties & WithResourceRequirements(ResourceRequirementsT &&value)
AWS_BATCH_API ContainerProperties & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< ResourceRequirement > & GetResourceRequirements() const
bool EnableExecuteCommandHasBeenSet() const
ContainerProperties & AddResourceRequirements(ResourceRequirementsT &&value)
const Aws::String & GetImage() const
const Aws::Vector< Volume > & GetVolumes() const
bool GetReadonlyRootFilesystem() const
bool RepositoryCredentialsHasBeenSet() const
const LogConfiguration & GetLogConfiguration() const
const Aws::Vector< MountPoint > & GetMountPoints() const
bool EphemeralStorageHasBeenSet() const
const Aws::Vector< KeyValuePair > & GetEnvironment() const
bool ExecutionRoleArnHasBeenSet() const
bool LogConfigurationHasBeenSet() const
const FargatePlatformConfiguration & GetFargatePlatformConfiguration() const
ContainerProperties & WithJobRoleArn(JobRoleArnT &&value)
bool CommandHasBeenSet() const
bool SecretsHasBeenSet() const
bool NetworkConfigurationHasBeenSet() const
bool ImageHasBeenSet() const
void SetSecrets(SecretsT &&value)
ContainerProperties & WithInstanceType(InstanceTypeT &&value)
ContainerProperties & WithEnvironment(EnvironmentT &&value)
ContainerProperties & WithLinuxParameters(LinuxParametersT &&value)
ContainerProperties & WithUser(UserT &&value)
bool GetPrivileged() const
void SetInstanceType(InstanceTypeT &&value)
void SetPrivileged(bool value)
ContainerProperties & WithFargatePlatformConfiguration(FargatePlatformConfigurationT &&value)
const EphemeralStorage & GetEphemeralStorage() const
ContainerProperties & WithMountPoints(MountPointsT &&value)
ContainerProperties & WithRuntimePlatform(RuntimePlatformT &&value)
ContainerProperties & WithCommand(CommandT &&value)
bool GetEnableExecuteCommand() const
void SetUlimits(UlimitsT &&value)
ContainerProperties & AddSecrets(SecretsT &&value)
void SetLinuxParameters(LinuxParametersT &&value)
const LinuxParameters & GetLinuxParameters() const
const RepositoryCredentials & GetRepositoryCredentials() const
const Aws::Vector< Secret > & GetSecrets() const
void SetFargatePlatformConfiguration(FargatePlatformConfigurationT &&value)
void SetRepositoryCredentials(RepositoryCredentialsT &&value)
const Aws::String & GetUser() const
bool FargatePlatformConfigurationHasBeenSet() const
void SetEnableExecuteCommand(bool value)
bool MountPointsHasBeenSet() const
bool RuntimePlatformHasBeenSet() const
ContainerProperties & WithNetworkConfiguration(NetworkConfigurationT &&value)
ContainerProperties & WithImage(ImageT &&value)
bool JobRoleArnHasBeenSet() const
bool UserHasBeenSet() const
bool ResourceRequirementsHasBeenSet() const
void SetRuntimePlatform(RuntimePlatformT &&value)
void SetReadonlyRootFilesystem(bool value)
const NetworkConfiguration & GetNetworkConfiguration() const
ContainerProperties & AddUlimits(UlimitsT &&value)
bool ReadonlyRootFilesystemHasBeenSet() const
void SetImage(ImageT &&value)
ContainerProperties & WithRepositoryCredentials(RepositoryCredentialsT &&value)
bool PrivilegedHasBeenSet() const
ContainerProperties & WithEphemeralStorage(EphemeralStorageT &&value)
void SetVolumes(VolumesT &&value)
ContainerProperties & AddCommand(CommandT &&value)
ContainerProperties & WithPrivileged(bool value)
void SetMountPoints(MountPointsT &&value)
ContainerProperties & AddVolumes(VolumesT &&value)
bool EnvironmentHasBeenSet() const
ContainerProperties & WithEnableExecuteCommand(bool value)
void SetEnvironment(EnvironmentT &&value)
const Aws::Vector< Aws::String > & GetCommand() const
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() 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