AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
EksPodPropertiesDetail.h
1
6#pragma once
7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/batch/model/EksContainerDetail.h>
9#include <aws/batch/model/EksMetadata.h>
10#include <aws/batch/model/EksVolume.h>
11#include <aws/batch/model/ImagePullSecret.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Batch {
25namespace Model {
26
33 public:
34 AWS_BATCH_API EksPodPropertiesDetail() = default;
37 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
51 inline const Aws::String& GetServiceAccountName() const { return m_serviceAccountName; }
52 inline bool ServiceAccountNameHasBeenSet() const { return m_serviceAccountNameHasBeenSet; }
53 template <typename ServiceAccountNameT = Aws::String>
54 void SetServiceAccountName(ServiceAccountNameT&& value) {
55 m_serviceAccountNameHasBeenSet = true;
56 m_serviceAccountName = std::forward<ServiceAccountNameT>(value);
57 }
58 template <typename ServiceAccountNameT = Aws::String>
59 EksPodPropertiesDetail& WithServiceAccountName(ServiceAccountNameT&& value) {
60 SetServiceAccountName(std::forward<ServiceAccountNameT>(value));
61 return *this;
62 }
64
66
77 inline bool GetHostNetwork() const { return m_hostNetwork; }
78 inline bool HostNetworkHasBeenSet() const { return m_hostNetworkHasBeenSet; }
79 inline void SetHostNetwork(bool value) {
80 m_hostNetworkHasBeenSet = true;
81 m_hostNetwork = value;
82 }
84 SetHostNetwork(value);
85 return *this;
86 }
88
90
112 inline const Aws::String& GetDnsPolicy() const { return m_dnsPolicy; }
113 inline bool DnsPolicyHasBeenSet() const { return m_dnsPolicyHasBeenSet; }
114 template <typename DnsPolicyT = Aws::String>
115 void SetDnsPolicy(DnsPolicyT&& value) {
116 m_dnsPolicyHasBeenSet = true;
117 m_dnsPolicy = std::forward<DnsPolicyT>(value);
118 }
119 template <typename DnsPolicyT = Aws::String>
121 SetDnsPolicy(std::forward<DnsPolicyT>(value));
122 return *this;
123 }
125
127
131 inline const Aws::Vector<ImagePullSecret>& GetImagePullSecrets() const { return m_imagePullSecrets; }
132 inline bool ImagePullSecretsHasBeenSet() const { return m_imagePullSecretsHasBeenSet; }
133 template <typename ImagePullSecretsT = Aws::Vector<ImagePullSecret>>
134 void SetImagePullSecrets(ImagePullSecretsT&& value) {
135 m_imagePullSecretsHasBeenSet = true;
136 m_imagePullSecrets = std::forward<ImagePullSecretsT>(value);
137 }
138 template <typename ImagePullSecretsT = Aws::Vector<ImagePullSecret>>
139 EksPodPropertiesDetail& WithImagePullSecrets(ImagePullSecretsT&& value) {
140 SetImagePullSecrets(std::forward<ImagePullSecretsT>(value));
141 return *this;
142 }
143 template <typename ImagePullSecretsT = ImagePullSecret>
144 EksPodPropertiesDetail& AddImagePullSecrets(ImagePullSecretsT&& value) {
145 m_imagePullSecretsHasBeenSet = true;
146 m_imagePullSecrets.emplace_back(std::forward<ImagePullSecretsT>(value));
147 return *this;
148 }
150
152
155 inline const Aws::Vector<EksContainerDetail>& GetContainers() const { return m_containers; }
156 inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; }
157 template <typename ContainersT = Aws::Vector<EksContainerDetail>>
158 void SetContainers(ContainersT&& value) {
159 m_containersHasBeenSet = true;
160 m_containers = std::forward<ContainersT>(value);
161 }
162 template <typename ContainersT = Aws::Vector<EksContainerDetail>>
164 SetContainers(std::forward<ContainersT>(value));
165 return *this;
166 }
167 template <typename ContainersT = EksContainerDetail>
168 EksPodPropertiesDetail& AddContainers(ContainersT&& value) {
169 m_containersHasBeenSet = true;
170 m_containers.emplace_back(std::forward<ContainersT>(value));
171 return *this;
172 }
174
176
180 inline const Aws::Vector<EksContainerDetail>& GetInitContainers() const { return m_initContainers; }
181 inline bool InitContainersHasBeenSet() const { return m_initContainersHasBeenSet; }
182 template <typename InitContainersT = Aws::Vector<EksContainerDetail>>
183 void SetInitContainers(InitContainersT&& value) {
184 m_initContainersHasBeenSet = true;
185 m_initContainers = std::forward<InitContainersT>(value);
186 }
187 template <typename InitContainersT = Aws::Vector<EksContainerDetail>>
188 EksPodPropertiesDetail& WithInitContainers(InitContainersT&& value) {
189 SetInitContainers(std::forward<InitContainersT>(value));
190 return *this;
191 }
192 template <typename InitContainersT = EksContainerDetail>
193 EksPodPropertiesDetail& AddInitContainers(InitContainersT&& value) {
194 m_initContainersHasBeenSet = true;
195 m_initContainers.emplace_back(std::forward<InitContainersT>(value));
196 return *this;
197 }
199
201
204 inline const Aws::Vector<EksVolume>& GetVolumes() const { return m_volumes; }
205 inline bool VolumesHasBeenSet() const { return m_volumesHasBeenSet; }
206 template <typename VolumesT = Aws::Vector<EksVolume>>
207 void SetVolumes(VolumesT&& value) {
208 m_volumesHasBeenSet = true;
209 m_volumes = std::forward<VolumesT>(value);
210 }
211 template <typename VolumesT = Aws::Vector<EksVolume>>
213 SetVolumes(std::forward<VolumesT>(value));
214 return *this;
215 }
216 template <typename VolumesT = EksVolume>
218 m_volumesHasBeenSet = true;
219 m_volumes.emplace_back(std::forward<VolumesT>(value));
220 return *this;
221 }
223
225
228 inline const Aws::String& GetPodName() const { return m_podName; }
229 inline bool PodNameHasBeenSet() const { return m_podNameHasBeenSet; }
230 template <typename PodNameT = Aws::String>
231 void SetPodName(PodNameT&& value) {
232 m_podNameHasBeenSet = true;
233 m_podName = std::forward<PodNameT>(value);
234 }
235 template <typename PodNameT = Aws::String>
237 SetPodName(std::forward<PodNameT>(value));
238 return *this;
239 }
241
243
246 inline const Aws::String& GetNodeName() const { return m_nodeName; }
247 inline bool NodeNameHasBeenSet() const { return m_nodeNameHasBeenSet; }
248 template <typename NodeNameT = Aws::String>
249 void SetNodeName(NodeNameT&& value) {
250 m_nodeNameHasBeenSet = true;
251 m_nodeName = std::forward<NodeNameT>(value);
252 }
253 template <typename NodeNameT = Aws::String>
255 SetNodeName(std::forward<NodeNameT>(value));
256 return *this;
257 }
259
261
268 inline const EksMetadata& GetMetadata() const { return m_metadata; }
269 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
270 template <typename MetadataT = EksMetadata>
271 void SetMetadata(MetadataT&& value) {
272 m_metadataHasBeenSet = true;
273 m_metadata = std::forward<MetadataT>(value);
274 }
275 template <typename MetadataT = EksMetadata>
277 SetMetadata(std::forward<MetadataT>(value));
278 return *this;
279 }
281
283
289 inline bool GetShareProcessNamespace() const { return m_shareProcessNamespace; }
290 inline bool ShareProcessNamespaceHasBeenSet() const { return m_shareProcessNamespaceHasBeenSet; }
291 inline void SetShareProcessNamespace(bool value) {
292 m_shareProcessNamespaceHasBeenSet = true;
293 m_shareProcessNamespace = value;
294 }
297 return *this;
298 }
300 private:
301 Aws::String m_serviceAccountName;
302
303 bool m_hostNetwork{false};
304
305 Aws::String m_dnsPolicy;
306
307 Aws::Vector<ImagePullSecret> m_imagePullSecrets;
308
310
311 Aws::Vector<EksContainerDetail> m_initContainers;
312
313 Aws::Vector<EksVolume> m_volumes;
314
315 Aws::String m_podName;
316
317 Aws::String m_nodeName;
318
319 EksMetadata m_metadata;
320
321 bool m_shareProcessNamespace{false};
322 bool m_serviceAccountNameHasBeenSet = false;
323 bool m_hostNetworkHasBeenSet = false;
324 bool m_dnsPolicyHasBeenSet = false;
325 bool m_imagePullSecretsHasBeenSet = false;
326 bool m_containersHasBeenSet = false;
327 bool m_initContainersHasBeenSet = false;
328 bool m_volumesHasBeenSet = false;
329 bool m_podNameHasBeenSet = false;
330 bool m_nodeNameHasBeenSet = false;
331 bool m_metadataHasBeenSet = false;
332 bool m_shareProcessNamespaceHasBeenSet = false;
333};
334
335} // namespace Model
336} // namespace Batch
337} // namespace Aws
EksPodPropertiesDetail & WithPodName(PodNameT &&value)
EksPodPropertiesDetail & WithContainers(ContainersT &&value)
AWS_BATCH_API EksPodPropertiesDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
EksPodPropertiesDetail & WithServiceAccountName(ServiceAccountNameT &&value)
EksPodPropertiesDetail & AddVolumes(VolumesT &&value)
const Aws::Vector< EksContainerDetail > & GetInitContainers() const
void SetServiceAccountName(ServiceAccountNameT &&value)
EksPodPropertiesDetail & WithMetadata(MetadataT &&value)
EksPodPropertiesDetail & WithDnsPolicy(DnsPolicyT &&value)
EksPodPropertiesDetail & WithShareProcessNamespace(bool value)
const Aws::Vector< EksContainerDetail > & GetContainers() const
void SetImagePullSecrets(ImagePullSecretsT &&value)
EksPodPropertiesDetail & WithImagePullSecrets(ImagePullSecretsT &&value)
AWS_BATCH_API EksPodPropertiesDetail()=default
EksPodPropertiesDetail & WithVolumes(VolumesT &&value)
EksPodPropertiesDetail & AddImagePullSecrets(ImagePullSecretsT &&value)
AWS_BATCH_API EksPodPropertiesDetail(Aws::Utils::Json::JsonView jsonValue)
EksPodPropertiesDetail & AddContainers(ContainersT &&value)
EksPodPropertiesDetail & WithHostNetwork(bool value)
EksPodPropertiesDetail & WithInitContainers(InitContainersT &&value)
const Aws::Vector< ImagePullSecret > & GetImagePullSecrets() const
EksPodPropertiesDetail & AddInitContainers(InitContainersT &&value)
EksPodPropertiesDetail & WithNodeName(NodeNameT &&value)
const Aws::Vector< EksVolume > & GetVolumes() 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