AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ContainerDefinition.h
1
6#pragma once
7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ecs/model/RepositoryCredentials.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ecs/model/ContainerRestartPolicy.h>
12#include <aws/ecs/model/LinuxParameters.h>
13#include <aws/ecs/model/VersionConsistency.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/ecs/model/LogConfiguration.h>
16#include <aws/ecs/model/HealthCheck.h>
17#include <aws/ecs/model/FirelensConfiguration.h>
18#include <aws/ecs/model/PortMapping.h>
19#include <aws/ecs/model/KeyValuePair.h>
20#include <aws/ecs/model/EnvironmentFile.h>
21#include <aws/ecs/model/MountPoint.h>
22#include <aws/ecs/model/VolumeFrom.h>
23#include <aws/ecs/model/Secret.h>
24#include <aws/ecs/model/ContainerDependency.h>
25#include <aws/ecs/model/HostEntry.h>
26#include <aws/ecs/model/Ulimit.h>
27#include <aws/ecs/model/SystemControl.h>
28#include <aws/ecs/model/ResourceRequirement.h>
29#include <utility>
30
31namespace Aws
32{
33namespace Utils
34{
35namespace Json
36{
37 class JsonValue;
38 class JsonView;
39} // namespace Json
40} // namespace Utils
41namespace ECS
42{
43namespace Model
44{
45
53 {
54 public:
55 AWS_ECS_API ContainerDefinition() = default;
59
60
62
70 inline const Aws::String& GetName() const { return m_name; }
71 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
72 template<typename NameT = Aws::String>
73 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
74 template<typename NameT = Aws::String>
75 ContainerDefinition& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
77
79
110 inline const Aws::String& GetImage() const { return m_image; }
111 inline bool ImageHasBeenSet() const { return m_imageHasBeenSet; }
112 template<typename ImageT = Aws::String>
113 void SetImage(ImageT&& value) { m_imageHasBeenSet = true; m_image = std::forward<ImageT>(value); }
114 template<typename ImageT = Aws::String>
115 ContainerDefinition& WithImage(ImageT&& value) { SetImage(std::forward<ImageT>(value)); return *this;}
117
119
122 inline const RepositoryCredentials& GetRepositoryCredentials() const { return m_repositoryCredentials; }
123 inline bool RepositoryCredentialsHasBeenSet() const { return m_repositoryCredentialsHasBeenSet; }
124 template<typename RepositoryCredentialsT = RepositoryCredentials>
125 void SetRepositoryCredentials(RepositoryCredentialsT&& value) { m_repositoryCredentialsHasBeenSet = true; m_repositoryCredentials = std::forward<RepositoryCredentialsT>(value); }
126 template<typename RepositoryCredentialsT = RepositoryCredentials>
127 ContainerDefinition& WithRepositoryCredentials(RepositoryCredentialsT&& value) { SetRepositoryCredentials(std::forward<RepositoryCredentialsT>(value)); return *this;}
129
131
171 inline int GetCpu() const { return m_cpu; }
172 inline bool CpuHasBeenSet() const { return m_cpuHasBeenSet; }
173 inline void SetCpu(int value) { m_cpuHasBeenSet = true; m_cpu = value; }
174 inline ContainerDefinition& WithCpu(int value) { SetCpu(value); return *this;}
176
178
198 inline int GetMemory() const { return m_memory; }
199 inline bool MemoryHasBeenSet() const { return m_memoryHasBeenSet; }
200 inline void SetMemory(int value) { m_memoryHasBeenSet = true; m_memory = value; }
201 inline ContainerDefinition& WithMemory(int value) { SetMemory(value); return *this;}
203
205
232 inline int GetMemoryReservation() const { return m_memoryReservation; }
233 inline bool MemoryReservationHasBeenSet() const { return m_memoryReservationHasBeenSet; }
234 inline void SetMemoryReservation(int value) { m_memoryReservationHasBeenSet = true; m_memoryReservation = value; }
235 inline ContainerDefinition& WithMemoryReservation(int value) { SetMemoryReservation(value); return *this;}
237
239
253 inline const Aws::Vector<Aws::String>& GetLinks() const { return m_links; }
254 inline bool LinksHasBeenSet() const { return m_linksHasBeenSet; }
255 template<typename LinksT = Aws::Vector<Aws::String>>
256 void SetLinks(LinksT&& value) { m_linksHasBeenSet = true; m_links = std::forward<LinksT>(value); }
257 template<typename LinksT = Aws::Vector<Aws::String>>
258 ContainerDefinition& WithLinks(LinksT&& value) { SetLinks(std::forward<LinksT>(value)); return *this;}
259 template<typename LinksT = Aws::String>
260 ContainerDefinition& AddLinks(LinksT&& value) { m_linksHasBeenSet = true; m_links.emplace_back(std::forward<LinksT>(value)); return *this; }
262
264
286 inline const Aws::Vector<PortMapping>& GetPortMappings() const { return m_portMappings; }
287 inline bool PortMappingsHasBeenSet() const { return m_portMappingsHasBeenSet; }
288 template<typename PortMappingsT = Aws::Vector<PortMapping>>
289 void SetPortMappings(PortMappingsT&& value) { m_portMappingsHasBeenSet = true; m_portMappings = std::forward<PortMappingsT>(value); }
290 template<typename PortMappingsT = Aws::Vector<PortMapping>>
291 ContainerDefinition& WithPortMappings(PortMappingsT&& value) { SetPortMappings(std::forward<PortMappingsT>(value)); return *this;}
292 template<typename PortMappingsT = PortMapping>
293 ContainerDefinition& AddPortMappings(PortMappingsT&& value) { m_portMappingsHasBeenSet = true; m_portMappings.emplace_back(std::forward<PortMappingsT>(value)); return *this; }
295
297
312 inline bool GetEssential() const { return m_essential; }
313 inline bool EssentialHasBeenSet() const { return m_essentialHasBeenSet; }
314 inline void SetEssential(bool value) { m_essentialHasBeenSet = true; m_essential = value; }
315 inline ContainerDefinition& WithEssential(bool value) { SetEssential(value); return *this;}
317
319
327 inline const ContainerRestartPolicy& GetRestartPolicy() const { return m_restartPolicy; }
328 inline bool RestartPolicyHasBeenSet() const { return m_restartPolicyHasBeenSet; }
329 template<typename RestartPolicyT = ContainerRestartPolicy>
330 void SetRestartPolicy(RestartPolicyT&& value) { m_restartPolicyHasBeenSet = true; m_restartPolicy = std::forward<RestartPolicyT>(value); }
331 template<typename RestartPolicyT = ContainerRestartPolicy>
332 ContainerDefinition& WithRestartPolicy(RestartPolicyT&& value) { SetRestartPolicy(std::forward<RestartPolicyT>(value)); return *this;}
334
336
345 inline const Aws::Vector<Aws::String>& GetEntryPoint() const { return m_entryPoint; }
346 inline bool EntryPointHasBeenSet() const { return m_entryPointHasBeenSet; }
347 template<typename EntryPointT = Aws::Vector<Aws::String>>
348 void SetEntryPoint(EntryPointT&& value) { m_entryPointHasBeenSet = true; m_entryPoint = std::forward<EntryPointT>(value); }
349 template<typename EntryPointT = Aws::Vector<Aws::String>>
350 ContainerDefinition& WithEntryPoint(EntryPointT&& value) { SetEntryPoint(std::forward<EntryPointT>(value)); return *this;}
351 template<typename EntryPointT = Aws::String>
352 ContainerDefinition& AddEntryPoint(EntryPointT&& value) { m_entryPointHasBeenSet = true; m_entryPoint.emplace_back(std::forward<EntryPointT>(value)); return *this; }
354
356
362 inline const Aws::Vector<Aws::String>& GetCommand() const { return m_command; }
363 inline bool CommandHasBeenSet() const { return m_commandHasBeenSet; }
364 template<typename CommandT = Aws::Vector<Aws::String>>
365 void SetCommand(CommandT&& value) { m_commandHasBeenSet = true; m_command = std::forward<CommandT>(value); }
366 template<typename CommandT = Aws::Vector<Aws::String>>
367 ContainerDefinition& WithCommand(CommandT&& value) { SetCommand(std::forward<CommandT>(value)); return *this;}
368 template<typename CommandT = Aws::String>
369 ContainerDefinition& AddCommand(CommandT&& value) { m_commandHasBeenSet = true; m_command.emplace_back(std::forward<CommandT>(value)); return *this; }
371
373
380 inline const Aws::Vector<KeyValuePair>& GetEnvironment() const { return m_environment; }
381 inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; }
382 template<typename EnvironmentT = Aws::Vector<KeyValuePair>>
383 void SetEnvironment(EnvironmentT&& value) { m_environmentHasBeenSet = true; m_environment = std::forward<EnvironmentT>(value); }
384 template<typename EnvironmentT = Aws::Vector<KeyValuePair>>
385 ContainerDefinition& WithEnvironment(EnvironmentT&& value) { SetEnvironment(std::forward<EnvironmentT>(value)); return *this;}
386 template<typename EnvironmentT = KeyValuePair>
387 ContainerDefinition& AddEnvironment(EnvironmentT&& value) { m_environmentHasBeenSet = true; m_environment.emplace_back(std::forward<EnvironmentT>(value)); return *this; }
389
391
407 inline const Aws::Vector<EnvironmentFile>& GetEnvironmentFiles() const { return m_environmentFiles; }
408 inline bool EnvironmentFilesHasBeenSet() const { return m_environmentFilesHasBeenSet; }
409 template<typename EnvironmentFilesT = Aws::Vector<EnvironmentFile>>
410 void SetEnvironmentFiles(EnvironmentFilesT&& value) { m_environmentFilesHasBeenSet = true; m_environmentFiles = std::forward<EnvironmentFilesT>(value); }
411 template<typename EnvironmentFilesT = Aws::Vector<EnvironmentFile>>
412 ContainerDefinition& WithEnvironmentFiles(EnvironmentFilesT&& value) { SetEnvironmentFiles(std::forward<EnvironmentFilesT>(value)); return *this;}
413 template<typename EnvironmentFilesT = EnvironmentFile>
414 ContainerDefinition& AddEnvironmentFiles(EnvironmentFilesT&& value) { m_environmentFilesHasBeenSet = true; m_environmentFiles.emplace_back(std::forward<EnvironmentFilesT>(value)); return *this; }
416
418
426 inline const Aws::Vector<MountPoint>& GetMountPoints() const { return m_mountPoints; }
427 inline bool MountPointsHasBeenSet() const { return m_mountPointsHasBeenSet; }
428 template<typename MountPointsT = Aws::Vector<MountPoint>>
429 void SetMountPoints(MountPointsT&& value) { m_mountPointsHasBeenSet = true; m_mountPoints = std::forward<MountPointsT>(value); }
430 template<typename MountPointsT = Aws::Vector<MountPoint>>
431 ContainerDefinition& WithMountPoints(MountPointsT&& value) { SetMountPoints(std::forward<MountPointsT>(value)); return *this;}
432 template<typename MountPointsT = MountPoint>
433 ContainerDefinition& AddMountPoints(MountPointsT&& value) { m_mountPointsHasBeenSet = true; m_mountPoints.emplace_back(std::forward<MountPointsT>(value)); return *this; }
435
437
442 inline const Aws::Vector<VolumeFrom>& GetVolumesFrom() const { return m_volumesFrom; }
443 inline bool VolumesFromHasBeenSet() const { return m_volumesFromHasBeenSet; }
444 template<typename VolumesFromT = Aws::Vector<VolumeFrom>>
445 void SetVolumesFrom(VolumesFromT&& value) { m_volumesFromHasBeenSet = true; m_volumesFrom = std::forward<VolumesFromT>(value); }
446 template<typename VolumesFromT = Aws::Vector<VolumeFrom>>
447 ContainerDefinition& WithVolumesFrom(VolumesFromT&& value) { SetVolumesFrom(std::forward<VolumesFromT>(value)); return *this;}
448 template<typename VolumesFromT = VolumeFrom>
449 ContainerDefinition& AddVolumesFrom(VolumesFromT&& value) { m_volumesFromHasBeenSet = true; m_volumesFrom.emplace_back(std::forward<VolumesFromT>(value)); return *this; }
451
453
459 inline const LinuxParameters& GetLinuxParameters() const { return m_linuxParameters; }
460 inline bool LinuxParametersHasBeenSet() const { return m_linuxParametersHasBeenSet; }
461 template<typename LinuxParametersT = LinuxParameters>
462 void SetLinuxParameters(LinuxParametersT&& value) { m_linuxParametersHasBeenSet = true; m_linuxParameters = std::forward<LinuxParametersT>(value); }
463 template<typename LinuxParametersT = LinuxParameters>
464 ContainerDefinition& WithLinuxParameters(LinuxParametersT&& value) { SetLinuxParameters(std::forward<LinuxParametersT>(value)); return *this;}
466
468
474 inline const Aws::Vector<Secret>& GetSecrets() const { return m_secrets; }
475 inline bool SecretsHasBeenSet() const { return m_secretsHasBeenSet; }
476 template<typename SecretsT = Aws::Vector<Secret>>
477 void SetSecrets(SecretsT&& value) { m_secretsHasBeenSet = true; m_secrets = std::forward<SecretsT>(value); }
478 template<typename SecretsT = Aws::Vector<Secret>>
479 ContainerDefinition& WithSecrets(SecretsT&& value) { SetSecrets(std::forward<SecretsT>(value)); return *this;}
480 template<typename SecretsT = Secret>
481 ContainerDefinition& AddSecrets(SecretsT&& value) { m_secretsHasBeenSet = true; m_secrets.emplace_back(std::forward<SecretsT>(value)); return *this; }
483
485
508 inline const Aws::Vector<ContainerDependency>& GetDependsOn() const { return m_dependsOn; }
509 inline bool DependsOnHasBeenSet() const { return m_dependsOnHasBeenSet; }
510 template<typename DependsOnT = Aws::Vector<ContainerDependency>>
511 void SetDependsOn(DependsOnT&& value) { m_dependsOnHasBeenSet = true; m_dependsOn = std::forward<DependsOnT>(value); }
512 template<typename DependsOnT = Aws::Vector<ContainerDependency>>
513 ContainerDefinition& WithDependsOn(DependsOnT&& value) { SetDependsOn(std::forward<DependsOnT>(value)); return *this;}
514 template<typename DependsOnT = ContainerDependency>
515 ContainerDefinition& AddDependsOn(DependsOnT&& value) { m_dependsOnHasBeenSet = true; m_dependsOn.emplace_back(std::forward<DependsOnT>(value)); return *this; }
517
519
549 inline int GetStartTimeout() const { return m_startTimeout; }
550 inline bool StartTimeoutHasBeenSet() const { return m_startTimeoutHasBeenSet; }
551 inline void SetStartTimeout(int value) { m_startTimeoutHasBeenSet = true; m_startTimeout = value; }
552 inline ContainerDefinition& WithStartTimeout(int value) { SetStartTimeout(value); return *this;}
554
556
585 inline int GetStopTimeout() const { return m_stopTimeout; }
586 inline bool StopTimeoutHasBeenSet() const { return m_stopTimeoutHasBeenSet; }
587 inline void SetStopTimeout(int value) { m_stopTimeoutHasBeenSet = true; m_stopTimeout = value; }
588 inline ContainerDefinition& WithStopTimeout(int value) { SetStopTimeout(value); return *this;}
590
592
603 inline VersionConsistency GetVersionConsistency() const { return m_versionConsistency; }
604 inline bool VersionConsistencyHasBeenSet() const { return m_versionConsistencyHasBeenSet; }
605 inline void SetVersionConsistency(VersionConsistency value) { m_versionConsistencyHasBeenSet = true; m_versionConsistency = value; }
608
610
617 inline const Aws::String& GetHostname() const { return m_hostname; }
618 inline bool HostnameHasBeenSet() const { return m_hostnameHasBeenSet; }
619 template<typename HostnameT = Aws::String>
620 void SetHostname(HostnameT&& value) { m_hostnameHasBeenSet = true; m_hostname = std::forward<HostnameT>(value); }
621 template<typename HostnameT = Aws::String>
622 ContainerDefinition& WithHostname(HostnameT&& value) { SetHostname(std::forward<HostnameT>(value)); return *this;}
624
626
640 inline const Aws::String& GetUser() const { return m_user; }
641 inline bool UserHasBeenSet() const { return m_userHasBeenSet; }
642 template<typename UserT = Aws::String>
643 void SetUser(UserT&& value) { m_userHasBeenSet = true; m_user = std::forward<UserT>(value); }
644 template<typename UserT = Aws::String>
645 ContainerDefinition& WithUser(UserT&& value) { SetUser(std::forward<UserT>(value)); return *this;}
647
649
654 inline const Aws::String& GetWorkingDirectory() const { return m_workingDirectory; }
655 inline bool WorkingDirectoryHasBeenSet() const { return m_workingDirectoryHasBeenSet; }
656 template<typename WorkingDirectoryT = Aws::String>
657 void SetWorkingDirectory(WorkingDirectoryT&& value) { m_workingDirectoryHasBeenSet = true; m_workingDirectory = std::forward<WorkingDirectoryT>(value); }
658 template<typename WorkingDirectoryT = Aws::String>
659 ContainerDefinition& WithWorkingDirectory(WorkingDirectoryT&& value) { SetWorkingDirectory(std::forward<WorkingDirectoryT>(value)); return *this;}
661
663
669 inline bool GetDisableNetworking() const { return m_disableNetworking; }
670 inline bool DisableNetworkingHasBeenSet() const { return m_disableNetworkingHasBeenSet; }
671 inline void SetDisableNetworking(bool value) { m_disableNetworkingHasBeenSet = true; m_disableNetworking = value; }
672 inline ContainerDefinition& WithDisableNetworking(bool value) { SetDisableNetworking(value); return *this;}
674
676
684 inline bool GetPrivileged() const { return m_privileged; }
685 inline bool PrivilegedHasBeenSet() const { return m_privilegedHasBeenSet; }
686 inline void SetPrivileged(bool value) { m_privilegedHasBeenSet = true; m_privileged = value; }
687 inline ContainerDefinition& WithPrivileged(bool value) { SetPrivileged(value); return *this;}
689
691
698 inline bool GetReadonlyRootFilesystem() const { return m_readonlyRootFilesystem; }
699 inline bool ReadonlyRootFilesystemHasBeenSet() const { return m_readonlyRootFilesystemHasBeenSet; }
700 inline void SetReadonlyRootFilesystem(bool value) { m_readonlyRootFilesystemHasBeenSet = true; m_readonlyRootFilesystem = value; }
703
705
711 inline const Aws::Vector<Aws::String>& GetDnsServers() const { return m_dnsServers; }
712 inline bool DnsServersHasBeenSet() const { return m_dnsServersHasBeenSet; }
713 template<typename DnsServersT = Aws::Vector<Aws::String>>
714 void SetDnsServers(DnsServersT&& value) { m_dnsServersHasBeenSet = true; m_dnsServers = std::forward<DnsServersT>(value); }
715 template<typename DnsServersT = Aws::Vector<Aws::String>>
716 ContainerDefinition& WithDnsServers(DnsServersT&& value) { SetDnsServers(std::forward<DnsServersT>(value)); return *this;}
717 template<typename DnsServersT = Aws::String>
718 ContainerDefinition& AddDnsServers(DnsServersT&& value) { m_dnsServersHasBeenSet = true; m_dnsServers.emplace_back(std::forward<DnsServersT>(value)); return *this; }
720
722
728 inline const Aws::Vector<Aws::String>& GetDnsSearchDomains() const { return m_dnsSearchDomains; }
729 inline bool DnsSearchDomainsHasBeenSet() const { return m_dnsSearchDomainsHasBeenSet; }
730 template<typename DnsSearchDomainsT = Aws::Vector<Aws::String>>
731 void SetDnsSearchDomains(DnsSearchDomainsT&& value) { m_dnsSearchDomainsHasBeenSet = true; m_dnsSearchDomains = std::forward<DnsSearchDomainsT>(value); }
732 template<typename DnsSearchDomainsT = Aws::Vector<Aws::String>>
733 ContainerDefinition& WithDnsSearchDomains(DnsSearchDomainsT&& value) { SetDnsSearchDomains(std::forward<DnsSearchDomainsT>(value)); return *this;}
734 template<typename DnsSearchDomainsT = Aws::String>
735 ContainerDefinition& AddDnsSearchDomains(DnsSearchDomainsT&& value) { m_dnsSearchDomainsHasBeenSet = true; m_dnsSearchDomains.emplace_back(std::forward<DnsSearchDomainsT>(value)); return *this; }
737
739
747 inline const Aws::Vector<HostEntry>& GetExtraHosts() const { return m_extraHosts; }
748 inline bool ExtraHostsHasBeenSet() const { return m_extraHostsHasBeenSet; }
749 template<typename ExtraHostsT = Aws::Vector<HostEntry>>
750 void SetExtraHosts(ExtraHostsT&& value) { m_extraHostsHasBeenSet = true; m_extraHosts = std::forward<ExtraHostsT>(value); }
751 template<typename ExtraHostsT = Aws::Vector<HostEntry>>
752 ContainerDefinition& WithExtraHosts(ExtraHostsT&& value) { SetExtraHosts(std::forward<ExtraHostsT>(value)); return *this;}
753 template<typename ExtraHostsT = HostEntry>
754 ContainerDefinition& AddExtraHosts(ExtraHostsT&& value) { m_extraHostsHasBeenSet = true; m_extraHosts.emplace_back(std::forward<ExtraHostsT>(value)); return *this; }
756
758
782 inline const Aws::Vector<Aws::String>& GetDockerSecurityOptions() const { return m_dockerSecurityOptions; }
783 inline bool DockerSecurityOptionsHasBeenSet() const { return m_dockerSecurityOptionsHasBeenSet; }
784 template<typename DockerSecurityOptionsT = Aws::Vector<Aws::String>>
785 void SetDockerSecurityOptions(DockerSecurityOptionsT&& value) { m_dockerSecurityOptionsHasBeenSet = true; m_dockerSecurityOptions = std::forward<DockerSecurityOptionsT>(value); }
786 template<typename DockerSecurityOptionsT = Aws::Vector<Aws::String>>
787 ContainerDefinition& WithDockerSecurityOptions(DockerSecurityOptionsT&& value) { SetDockerSecurityOptions(std::forward<DockerSecurityOptionsT>(value)); return *this;}
788 template<typename DockerSecurityOptionsT = Aws::String>
789 ContainerDefinition& AddDockerSecurityOptions(DockerSecurityOptionsT&& value) { m_dockerSecurityOptionsHasBeenSet = true; m_dockerSecurityOptions.emplace_back(std::forward<DockerSecurityOptionsT>(value)); return *this; }
791
793
799 inline bool GetInteractive() const { return m_interactive; }
800 inline bool InteractiveHasBeenSet() const { return m_interactiveHasBeenSet; }
801 inline void SetInteractive(bool value) { m_interactiveHasBeenSet = true; m_interactive = value; }
802 inline ContainerDefinition& WithInteractive(bool value) { SetInteractive(value); return *this;}
804
806
811 inline bool GetPseudoTerminal() const { return m_pseudoTerminal; }
812 inline bool PseudoTerminalHasBeenSet() const { return m_pseudoTerminalHasBeenSet; }
813 inline void SetPseudoTerminal(bool value) { m_pseudoTerminalHasBeenSet = true; m_pseudoTerminal = value; }
814 inline ContainerDefinition& WithPseudoTerminal(bool value) { SetPseudoTerminal(value); return *this;}
816
818
827 inline const Aws::Map<Aws::String, Aws::String>& GetDockerLabels() const { return m_dockerLabels; }
828 inline bool DockerLabelsHasBeenSet() const { return m_dockerLabelsHasBeenSet; }
829 template<typename DockerLabelsT = Aws::Map<Aws::String, Aws::String>>
830 void SetDockerLabels(DockerLabelsT&& value) { m_dockerLabelsHasBeenSet = true; m_dockerLabels = std::forward<DockerLabelsT>(value); }
831 template<typename DockerLabelsT = Aws::Map<Aws::String, Aws::String>>
832 ContainerDefinition& WithDockerLabels(DockerLabelsT&& value) { SetDockerLabels(std::forward<DockerLabelsT>(value)); return *this;}
833 template<typename DockerLabelsKeyT = Aws::String, typename DockerLabelsValueT = Aws::String>
834 ContainerDefinition& AddDockerLabels(DockerLabelsKeyT&& key, DockerLabelsValueT&& value) {
835 m_dockerLabelsHasBeenSet = true; m_dockerLabels.emplace(std::forward<DockerLabelsKeyT>(key), std::forward<DockerLabelsValueT>(value)); return *this;
836 }
838
840
859 inline const Aws::Vector<Ulimit>& GetUlimits() const { return m_ulimits; }
860 inline bool UlimitsHasBeenSet() const { return m_ulimitsHasBeenSet; }
861 template<typename UlimitsT = Aws::Vector<Ulimit>>
862 void SetUlimits(UlimitsT&& value) { m_ulimitsHasBeenSet = true; m_ulimits = std::forward<UlimitsT>(value); }
863 template<typename UlimitsT = Aws::Vector<Ulimit>>
864 ContainerDefinition& WithUlimits(UlimitsT&& value) { SetUlimits(std::forward<UlimitsT>(value)); return *this;}
865 template<typename UlimitsT = Ulimit>
866 ContainerDefinition& AddUlimits(UlimitsT&& value) { m_ulimitsHasBeenSet = true; m_ulimits.emplace_back(std::forward<UlimitsT>(value)); return *this; }
868
870
896 inline const LogConfiguration& GetLogConfiguration() const { return m_logConfiguration; }
897 inline bool LogConfigurationHasBeenSet() const { return m_logConfigurationHasBeenSet; }
898 template<typename LogConfigurationT = LogConfiguration>
899 void SetLogConfiguration(LogConfigurationT&& value) { m_logConfigurationHasBeenSet = true; m_logConfiguration = std::forward<LogConfigurationT>(value); }
900 template<typename LogConfigurationT = LogConfiguration>
901 ContainerDefinition& WithLogConfiguration(LogConfigurationT&& value) { SetLogConfiguration(std::forward<LogConfigurationT>(value)); return *this;}
903
905
911 inline const HealthCheck& GetHealthCheck() const { return m_healthCheck; }
912 inline bool HealthCheckHasBeenSet() const { return m_healthCheckHasBeenSet; }
913 template<typename HealthCheckT = HealthCheck>
914 void SetHealthCheck(HealthCheckT&& value) { m_healthCheckHasBeenSet = true; m_healthCheck = std::forward<HealthCheckT>(value); }
915 template<typename HealthCheckT = HealthCheck>
916 ContainerDefinition& WithHealthCheck(HealthCheckT&& value) { SetHealthCheck(std::forward<HealthCheckT>(value)); return *this;}
918
920
927 inline const Aws::Vector<SystemControl>& GetSystemControls() const { return m_systemControls; }
928 inline bool SystemControlsHasBeenSet() const { return m_systemControlsHasBeenSet; }
929 template<typename SystemControlsT = Aws::Vector<SystemControl>>
930 void SetSystemControls(SystemControlsT&& value) { m_systemControlsHasBeenSet = true; m_systemControls = std::forward<SystemControlsT>(value); }
931 template<typename SystemControlsT = Aws::Vector<SystemControl>>
932 ContainerDefinition& WithSystemControls(SystemControlsT&& value) { SetSystemControls(std::forward<SystemControlsT>(value)); return *this;}
933 template<typename SystemControlsT = SystemControl>
934 ContainerDefinition& AddSystemControls(SystemControlsT&& value) { m_systemControlsHasBeenSet = true; m_systemControls.emplace_back(std::forward<SystemControlsT>(value)); return *this; }
936
938
942 inline const Aws::Vector<ResourceRequirement>& GetResourceRequirements() const { return m_resourceRequirements; }
943 inline bool ResourceRequirementsHasBeenSet() const { return m_resourceRequirementsHasBeenSet; }
944 template<typename ResourceRequirementsT = Aws::Vector<ResourceRequirement>>
945 void SetResourceRequirements(ResourceRequirementsT&& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements = std::forward<ResourceRequirementsT>(value); }
946 template<typename ResourceRequirementsT = Aws::Vector<ResourceRequirement>>
947 ContainerDefinition& WithResourceRequirements(ResourceRequirementsT&& value) { SetResourceRequirements(std::forward<ResourceRequirementsT>(value)); return *this;}
948 template<typename ResourceRequirementsT = ResourceRequirement>
949 ContainerDefinition& AddResourceRequirements(ResourceRequirementsT&& value) { m_resourceRequirementsHasBeenSet = true; m_resourceRequirements.emplace_back(std::forward<ResourceRequirementsT>(value)); return *this; }
951
953
960 inline const FirelensConfiguration& GetFirelensConfiguration() const { return m_firelensConfiguration; }
961 inline bool FirelensConfigurationHasBeenSet() const { return m_firelensConfigurationHasBeenSet; }
962 template<typename FirelensConfigurationT = FirelensConfiguration>
963 void SetFirelensConfiguration(FirelensConfigurationT&& value) { m_firelensConfigurationHasBeenSet = true; m_firelensConfiguration = std::forward<FirelensConfigurationT>(value); }
964 template<typename FirelensConfigurationT = FirelensConfiguration>
965 ContainerDefinition& WithFirelensConfiguration(FirelensConfigurationT&& value) { SetFirelensConfiguration(std::forward<FirelensConfigurationT>(value)); return *this;}
967
969
998 inline const Aws::Vector<Aws::String>& GetCredentialSpecs() const { return m_credentialSpecs; }
999 inline bool CredentialSpecsHasBeenSet() const { return m_credentialSpecsHasBeenSet; }
1000 template<typename CredentialSpecsT = Aws::Vector<Aws::String>>
1001 void SetCredentialSpecs(CredentialSpecsT&& value) { m_credentialSpecsHasBeenSet = true; m_credentialSpecs = std::forward<CredentialSpecsT>(value); }
1002 template<typename CredentialSpecsT = Aws::Vector<Aws::String>>
1003 ContainerDefinition& WithCredentialSpecs(CredentialSpecsT&& value) { SetCredentialSpecs(std::forward<CredentialSpecsT>(value)); return *this;}
1004 template<typename CredentialSpecsT = Aws::String>
1005 ContainerDefinition& AddCredentialSpecs(CredentialSpecsT&& value) { m_credentialSpecsHasBeenSet = true; m_credentialSpecs.emplace_back(std::forward<CredentialSpecsT>(value)); return *this; }
1007 private:
1008
1009 Aws::String m_name;
1010 bool m_nameHasBeenSet = false;
1011
1012 Aws::String m_image;
1013 bool m_imageHasBeenSet = false;
1014
1015 RepositoryCredentials m_repositoryCredentials;
1016 bool m_repositoryCredentialsHasBeenSet = false;
1017
1018 int m_cpu{0};
1019 bool m_cpuHasBeenSet = false;
1020
1021 int m_memory{0};
1022 bool m_memoryHasBeenSet = false;
1023
1024 int m_memoryReservation{0};
1025 bool m_memoryReservationHasBeenSet = false;
1026
1028 bool m_linksHasBeenSet = false;
1029
1030 Aws::Vector<PortMapping> m_portMappings;
1031 bool m_portMappingsHasBeenSet = false;
1032
1033 bool m_essential{false};
1034 bool m_essentialHasBeenSet = false;
1035
1036 ContainerRestartPolicy m_restartPolicy;
1037 bool m_restartPolicyHasBeenSet = false;
1038
1039 Aws::Vector<Aws::String> m_entryPoint;
1040 bool m_entryPointHasBeenSet = false;
1041
1042 Aws::Vector<Aws::String> m_command;
1043 bool m_commandHasBeenSet = false;
1044
1045 Aws::Vector<KeyValuePair> m_environment;
1046 bool m_environmentHasBeenSet = false;
1047
1048 Aws::Vector<EnvironmentFile> m_environmentFiles;
1049 bool m_environmentFilesHasBeenSet = false;
1050
1051 Aws::Vector<MountPoint> m_mountPoints;
1052 bool m_mountPointsHasBeenSet = false;
1053
1054 Aws::Vector<VolumeFrom> m_volumesFrom;
1055 bool m_volumesFromHasBeenSet = false;
1056
1057 LinuxParameters m_linuxParameters;
1058 bool m_linuxParametersHasBeenSet = false;
1059
1060 Aws::Vector<Secret> m_secrets;
1061 bool m_secretsHasBeenSet = false;
1062
1064 bool m_dependsOnHasBeenSet = false;
1065
1066 int m_startTimeout{0};
1067 bool m_startTimeoutHasBeenSet = false;
1068
1069 int m_stopTimeout{0};
1070 bool m_stopTimeoutHasBeenSet = false;
1071
1072 VersionConsistency m_versionConsistency{VersionConsistency::NOT_SET};
1073 bool m_versionConsistencyHasBeenSet = false;
1074
1075 Aws::String m_hostname;
1076 bool m_hostnameHasBeenSet = false;
1077
1078 Aws::String m_user;
1079 bool m_userHasBeenSet = false;
1080
1081 Aws::String m_workingDirectory;
1082 bool m_workingDirectoryHasBeenSet = false;
1083
1084 bool m_disableNetworking{false};
1085 bool m_disableNetworkingHasBeenSet = false;
1086
1087 bool m_privileged{false};
1088 bool m_privilegedHasBeenSet = false;
1089
1090 bool m_readonlyRootFilesystem{false};
1091 bool m_readonlyRootFilesystemHasBeenSet = false;
1092
1093 Aws::Vector<Aws::String> m_dnsServers;
1094 bool m_dnsServersHasBeenSet = false;
1095
1096 Aws::Vector<Aws::String> m_dnsSearchDomains;
1097 bool m_dnsSearchDomainsHasBeenSet = false;
1098
1099 Aws::Vector<HostEntry> m_extraHosts;
1100 bool m_extraHostsHasBeenSet = false;
1101
1102 Aws::Vector<Aws::String> m_dockerSecurityOptions;
1103 bool m_dockerSecurityOptionsHasBeenSet = false;
1104
1105 bool m_interactive{false};
1106 bool m_interactiveHasBeenSet = false;
1107
1108 bool m_pseudoTerminal{false};
1109 bool m_pseudoTerminalHasBeenSet = false;
1110
1112 bool m_dockerLabelsHasBeenSet = false;
1113
1114 Aws::Vector<Ulimit> m_ulimits;
1115 bool m_ulimitsHasBeenSet = false;
1116
1117 LogConfiguration m_logConfiguration;
1118 bool m_logConfigurationHasBeenSet = false;
1119
1120 HealthCheck m_healthCheck;
1121 bool m_healthCheckHasBeenSet = false;
1122
1123 Aws::Vector<SystemControl> m_systemControls;
1124 bool m_systemControlsHasBeenSet = false;
1125
1126 Aws::Vector<ResourceRequirement> m_resourceRequirements;
1127 bool m_resourceRequirementsHasBeenSet = false;
1128
1129 FirelensConfiguration m_firelensConfiguration;
1130 bool m_firelensConfigurationHasBeenSet = false;
1131
1132 Aws::Vector<Aws::String> m_credentialSpecs;
1133 bool m_credentialSpecsHasBeenSet = false;
1134 };
1135
1136} // namespace Model
1137} // namespace ECS
1138} // namespace Aws
ContainerDefinition & WithStopTimeout(int value)
ContainerDefinition & AddDockerLabels(DockerLabelsKeyT &&key, DockerLabelsValueT &&value)
ContainerDefinition & WithPseudoTerminal(bool value)
ContainerDefinition & WithReadonlyRootFilesystem(bool value)
const Aws::Vector< Aws::String > & GetEntryPoint() const
const Aws::Vector< ContainerDependency > & GetDependsOn() const
const Aws::Vector< Aws::String > & GetLinks() const
const Aws::Vector< Aws::String > & GetDockerSecurityOptions() const
ContainerDefinition & WithEssential(bool value)
void SetRepositoryCredentials(RepositoryCredentialsT &&value)
ContainerDefinition & AddSystemControls(SystemControlsT &&value)
void SetResourceRequirements(ResourceRequirementsT &&value)
ContainerDefinition & AddDnsSearchDomains(DnsSearchDomainsT &&value)
void SetLinuxParameters(LinuxParametersT &&value)
ContainerDefinition & WithSystemControls(SystemControlsT &&value)
ContainerDefinition & WithUlimits(UlimitsT &&value)
void SetDockerLabels(DockerLabelsT &&value)
ContainerDefinition & WithMemoryReservation(int value)
ContainerDefinition & WithEnvironmentFiles(EnvironmentFilesT &&value)
ContainerDefinition & WithName(NameT &&value)
const Aws::String & GetWorkingDirectory() const
const Aws::Vector< Aws::String > & GetDnsServers() const
const LinuxParameters & GetLinuxParameters() const
ContainerDefinition & AddMountPoints(MountPointsT &&value)
const LogConfiguration & GetLogConfiguration() const
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
ContainerDefinition & WithDisableNetworking(bool value)
ContainerDefinition & AddDockerSecurityOptions(DockerSecurityOptionsT &&value)
void SetEnvironment(EnvironmentT &&value)
ContainerDefinition & WithRestartPolicy(RestartPolicyT &&value)
const Aws::Vector< VolumeFrom > & GetVolumesFrom() const
const Aws::Vector< Aws::String > & GetCredentialSpecs() const
ContainerDefinition & WithWorkingDirectory(WorkingDirectoryT &&value)
const Aws::Map< Aws::String, Aws::String > & GetDockerLabels() const
ContainerDefinition & WithPortMappings(PortMappingsT &&value)
ContainerDefinition & AddCredentialSpecs(CredentialSpecsT &&value)
void SetDnsSearchDomains(DnsSearchDomainsT &&value)
ContainerDefinition & AddEntryPoint(EntryPointT &&value)
ContainerDefinition & AddLinks(LinksT &&value)
ContainerDefinition & AddDnsServers(DnsServersT &&value)
const Aws::Vector< ResourceRequirement > & GetResourceRequirements() const
ContainerDefinition & AddVolumesFrom(VolumesFromT &&value)
ContainerDefinition & WithCommand(CommandT &&value)
void SetEnvironmentFiles(EnvironmentFilesT &&value)
const Aws::Vector< KeyValuePair > & GetEnvironment() const
ContainerDefinition & WithMemory(int value)
ContainerDefinition & AddEnvironment(EnvironmentT &&value)
void SetMountPoints(MountPointsT &&value)
AWS_ECS_API ContainerDefinition()=default
const Aws::Vector< PortMapping > & GetPortMappings() const
ContainerDefinition & WithDependsOn(DependsOnT &&value)
ContainerDefinition & WithDnsServers(DnsServersT &&value)
void SetFirelensConfiguration(FirelensConfigurationT &&value)
void SetVersionConsistency(VersionConsistency value)
const Aws::Vector< Secret > & GetSecrets() const
void SetHealthCheck(HealthCheckT &&value)
ContainerDefinition & AddDependsOn(DependsOnT &&value)
const Aws::Vector< Aws::String > & GetDnsSearchDomains() const
void SetSystemControls(SystemControlsT &&value)
ContainerDefinition & WithLinuxParameters(LinuxParametersT &&value)
ContainerDefinition & WithEnvironment(EnvironmentT &&value)
void SetRestartPolicy(RestartPolicyT &&value)
ContainerDefinition & WithEntryPoint(EntryPointT &&value)
void SetWorkingDirectory(WorkingDirectoryT &&value)
ContainerDefinition & WithDockerLabels(DockerLabelsT &&value)
ContainerDefinition & AddExtraHosts(ExtraHostsT &&value)
const HealthCheck & GetHealthCheck() const
void SetLogConfiguration(LogConfigurationT &&value)
void SetCredentialSpecs(CredentialSpecsT &&value)
ContainerDefinition & AddResourceRequirements(ResourceRequirementsT &&value)
ContainerDefinition & WithLinks(LinksT &&value)
ContainerDefinition & WithVersionConsistency(VersionConsistency value)
const Aws::Vector< Aws::String > & GetCommand() const
const Aws::Vector< Ulimit > & GetUlimits() const
ContainerDefinition & WithHealthCheck(HealthCheckT &&value)
const Aws::Vector< MountPoint > & GetMountPoints() const
ContainerDefinition & AddPortMappings(PortMappingsT &&value)
ContainerDefinition & WithInteractive(bool value)
ContainerDefinition & WithResourceRequirements(ResourceRequirementsT &&value)
void SetDockerSecurityOptions(DockerSecurityOptionsT &&value)
ContainerDefinition & WithCpu(int value)
ContainerDefinition & WithCredentialSpecs(CredentialSpecsT &&value)
ContainerDefinition & AddCommand(CommandT &&value)
void SetVolumesFrom(VolumesFromT &&value)
ContainerDefinition & WithMountPoints(MountPointsT &&value)
ContainerDefinition & WithDockerSecurityOptions(DockerSecurityOptionsT &&value)
ContainerDefinition & WithPrivileged(bool value)
AWS_ECS_API ContainerDefinition(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< EnvironmentFile > & GetEnvironmentFiles() const
const ContainerRestartPolicy & GetRestartPolicy() const
ContainerDefinition & WithVolumesFrom(VolumesFromT &&value)
const Aws::Vector< SystemControl > & GetSystemControls() const
ContainerDefinition & WithDnsSearchDomains(DnsSearchDomainsT &&value)
ContainerDefinition & AddUlimits(UlimitsT &&value)
AWS_ECS_API ContainerDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< HostEntry > & GetExtraHosts() const
ContainerDefinition & AddEnvironmentFiles(EnvironmentFilesT &&value)
const FirelensConfiguration & GetFirelensConfiguration() const
const Aws::String & GetName() const
ContainerDefinition & WithLogConfiguration(LogConfigurationT &&value)
ContainerDefinition & WithUser(UserT &&value)
VersionConsistency GetVersionConsistency() const
ContainerDefinition & WithExtraHosts(ExtraHostsT &&value)
ContainerDefinition & WithStartTimeout(int value)
ContainerDefinition & WithRepositoryCredentials(RepositoryCredentialsT &&value)
ContainerDefinition & AddSecrets(SecretsT &&value)
ContainerDefinition & WithSecrets(SecretsT &&value)
ContainerDefinition & WithFirelensConfiguration(FirelensConfigurationT &&value)
void SetPortMappings(PortMappingsT &&value)
ContainerDefinition & WithImage(ImageT &&value)
const Aws::String & GetHostname() const
ContainerDefinition & WithHostname(HostnameT &&value)
const RepositoryCredentials & GetRepositoryCredentials() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue