AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
EksPodProperties.h
1
6#pragma once
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/EksMetadata.h>
11#include <aws/batch/model/ImagePullSecret.h>
12#include <aws/batch/model/EksContainer.h>
13#include <aws/batch/model/EksVolume.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace Batch
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_BATCH_API EksPodProperties() = default;
42 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
57 inline const Aws::String& GetServiceAccountName() const { return m_serviceAccountName; }
58 inline bool ServiceAccountNameHasBeenSet() const { return m_serviceAccountNameHasBeenSet; }
59 template<typename ServiceAccountNameT = Aws::String>
60 void SetServiceAccountName(ServiceAccountNameT&& value) { m_serviceAccountNameHasBeenSet = true; m_serviceAccountName = std::forward<ServiceAccountNameT>(value); }
61 template<typename ServiceAccountNameT = Aws::String>
62 EksPodProperties& WithServiceAccountName(ServiceAccountNameT&& value) { SetServiceAccountName(std::forward<ServiceAccountNameT>(value)); return *this;}
64
66
77 inline bool GetHostNetwork() const { return m_hostNetwork; }
78 inline bool HostNetworkHasBeenSet() const { return m_hostNetworkHasBeenSet; }
79 inline void SetHostNetwork(bool value) { m_hostNetworkHasBeenSet = true; m_hostNetwork = value; }
80 inline EksPodProperties& WithHostNetwork(bool value) { SetHostNetwork(value); return *this;}
82
84
96 inline const Aws::String& GetDnsPolicy() const { return m_dnsPolicy; }
97 inline bool DnsPolicyHasBeenSet() const { return m_dnsPolicyHasBeenSet; }
98 template<typename DnsPolicyT = Aws::String>
99 void SetDnsPolicy(DnsPolicyT&& value) { m_dnsPolicyHasBeenSet = true; m_dnsPolicy = std::forward<DnsPolicyT>(value); }
100 template<typename DnsPolicyT = Aws::String>
101 EksPodProperties& WithDnsPolicy(DnsPolicyT&& value) { SetDnsPolicy(std::forward<DnsPolicyT>(value)); return *this;}
103
105
110 inline const Aws::Vector<ImagePullSecret>& GetImagePullSecrets() const { return m_imagePullSecrets; }
111 inline bool ImagePullSecretsHasBeenSet() const { return m_imagePullSecretsHasBeenSet; }
112 template<typename ImagePullSecretsT = Aws::Vector<ImagePullSecret>>
113 void SetImagePullSecrets(ImagePullSecretsT&& value) { m_imagePullSecretsHasBeenSet = true; m_imagePullSecrets = std::forward<ImagePullSecretsT>(value); }
114 template<typename ImagePullSecretsT = Aws::Vector<ImagePullSecret>>
115 EksPodProperties& WithImagePullSecrets(ImagePullSecretsT&& value) { SetImagePullSecrets(std::forward<ImagePullSecretsT>(value)); return *this;}
116 template<typename ImagePullSecretsT = ImagePullSecret>
117 EksPodProperties& AddImagePullSecrets(ImagePullSecretsT&& value) { m_imagePullSecretsHasBeenSet = true; m_imagePullSecrets.emplace_back(std::forward<ImagePullSecretsT>(value)); return *this; }
119
121
125 inline const Aws::Vector<EksContainer>& GetContainers() const { return m_containers; }
126 inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; }
127 template<typename ContainersT = Aws::Vector<EksContainer>>
128 void SetContainers(ContainersT&& value) { m_containersHasBeenSet = true; m_containers = std::forward<ContainersT>(value); }
129 template<typename ContainersT = Aws::Vector<EksContainer>>
130 EksPodProperties& WithContainers(ContainersT&& value) { SetContainers(std::forward<ContainersT>(value)); return *this;}
131 template<typename ContainersT = EksContainer>
132 EksPodProperties& AddContainers(ContainersT&& value) { m_containersHasBeenSet = true; m_containers.emplace_back(std::forward<ContainersT>(value)); return *this; }
134
136
146 inline const Aws::Vector<EksContainer>& GetInitContainers() const { return m_initContainers; }
147 inline bool InitContainersHasBeenSet() const { return m_initContainersHasBeenSet; }
148 template<typename InitContainersT = Aws::Vector<EksContainer>>
149 void SetInitContainers(InitContainersT&& value) { m_initContainersHasBeenSet = true; m_initContainers = std::forward<InitContainersT>(value); }
150 template<typename InitContainersT = Aws::Vector<EksContainer>>
151 EksPodProperties& WithInitContainers(InitContainersT&& value) { SetInitContainers(std::forward<InitContainersT>(value)); return *this;}
152 template<typename InitContainersT = EksContainer>
153 EksPodProperties& AddInitContainers(InitContainersT&& value) { m_initContainersHasBeenSet = true; m_initContainers.emplace_back(std::forward<InitContainersT>(value)); return *this; }
155
157
161 inline const Aws::Vector<EksVolume>& GetVolumes() const { return m_volumes; }
162 inline bool VolumesHasBeenSet() const { return m_volumesHasBeenSet; }
163 template<typename VolumesT = Aws::Vector<EksVolume>>
164 void SetVolumes(VolumesT&& value) { m_volumesHasBeenSet = true; m_volumes = std::forward<VolumesT>(value); }
165 template<typename VolumesT = Aws::Vector<EksVolume>>
166 EksPodProperties& WithVolumes(VolumesT&& value) { SetVolumes(std::forward<VolumesT>(value)); return *this;}
167 template<typename VolumesT = EksVolume>
168 EksPodProperties& AddVolumes(VolumesT&& value) { m_volumesHasBeenSet = true; m_volumes.emplace_back(std::forward<VolumesT>(value)); return *this; }
170
172
177 inline const EksMetadata& GetMetadata() const { return m_metadata; }
178 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
179 template<typename MetadataT = EksMetadata>
180 void SetMetadata(MetadataT&& value) { m_metadataHasBeenSet = true; m_metadata = std::forward<MetadataT>(value); }
181 template<typename MetadataT = EksMetadata>
182 EksPodProperties& WithMetadata(MetadataT&& value) { SetMetadata(std::forward<MetadataT>(value)); return *this;}
184
186
192 inline bool GetShareProcessNamespace() const { return m_shareProcessNamespace; }
193 inline bool ShareProcessNamespaceHasBeenSet() const { return m_shareProcessNamespaceHasBeenSet; }
194 inline void SetShareProcessNamespace(bool value) { m_shareProcessNamespaceHasBeenSet = true; m_shareProcessNamespace = value; }
195 inline EksPodProperties& WithShareProcessNamespace(bool value) { SetShareProcessNamespace(value); return *this;}
197 private:
198
199 Aws::String m_serviceAccountName;
200 bool m_serviceAccountNameHasBeenSet = false;
201
202 bool m_hostNetwork{false};
203 bool m_hostNetworkHasBeenSet = false;
204
205 Aws::String m_dnsPolicy;
206 bool m_dnsPolicyHasBeenSet = false;
207
208 Aws::Vector<ImagePullSecret> m_imagePullSecrets;
209 bool m_imagePullSecretsHasBeenSet = false;
210
211 Aws::Vector<EksContainer> m_containers;
212 bool m_containersHasBeenSet = false;
213
214 Aws::Vector<EksContainer> m_initContainers;
215 bool m_initContainersHasBeenSet = false;
216
217 Aws::Vector<EksVolume> m_volumes;
218 bool m_volumesHasBeenSet = false;
219
220 EksMetadata m_metadata;
221 bool m_metadataHasBeenSet = false;
222
223 bool m_shareProcessNamespace{false};
224 bool m_shareProcessNamespaceHasBeenSet = false;
225 };
226
227} // namespace Model
228} // namespace Batch
229} // namespace Aws
const Aws::String & GetDnsPolicy() const
EksPodProperties & WithHostNetwork(bool value)
AWS_BATCH_API EksPodProperties & operator=(Aws::Utils::Json::JsonView jsonValue)
const EksMetadata & GetMetadata() const
EksPodProperties & WithImagePullSecrets(ImagePullSecretsT &&value)
const Aws::String & GetServiceAccountName() const
EksPodProperties & WithDnsPolicy(DnsPolicyT &&value)
EksPodProperties & AddImagePullSecrets(ImagePullSecretsT &&value)
EksPodProperties & WithContainers(ContainersT &&value)
void SetImagePullSecrets(ImagePullSecretsT &&value)
void SetServiceAccountName(ServiceAccountNameT &&value)
void SetDnsPolicy(DnsPolicyT &&value)
EksPodProperties & WithInitContainers(InitContainersT &&value)
EksPodProperties & AddInitContainers(InitContainersT &&value)
EksPodProperties & WithMetadata(MetadataT &&value)
EksPodProperties & AddVolumes(VolumesT &&value)
AWS_BATCH_API EksPodProperties(Aws::Utils::Json::JsonView jsonValue)
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< EksContainer > & GetInitContainers() const
EksPodProperties & WithServiceAccountName(ServiceAccountNameT &&value)
const Aws::Vector< EksContainer > & GetContainers() const
const Aws::Vector< ImagePullSecret > & GetImagePullSecrets() const
AWS_BATCH_API EksPodProperties()=default
const Aws::Vector< EksVolume > & GetVolumes() const
void SetContainers(ContainersT &&value)
EksPodProperties & WithVolumes(VolumesT &&value)
EksPodProperties & AddContainers(ContainersT &&value)
void SetInitContainers(InitContainersT &&value)
EksPodProperties & WithShareProcessNamespace(bool value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue