AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
EksPodPropertiesDetail.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/EksContainerDetail.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 EksPodPropertiesDetail() = 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 EksPodPropertiesDetail& 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 EksPodPropertiesDetail& WithHostNetwork(bool value) { SetHostNetwork(value); return *this;}
82
84
106 inline const Aws::String& GetDnsPolicy() const { return m_dnsPolicy; }
107 inline bool DnsPolicyHasBeenSet() const { return m_dnsPolicyHasBeenSet; }
108 template<typename DnsPolicyT = Aws::String>
109 void SetDnsPolicy(DnsPolicyT&& value) { m_dnsPolicyHasBeenSet = true; m_dnsPolicy = std::forward<DnsPolicyT>(value); }
110 template<typename DnsPolicyT = Aws::String>
111 EksPodPropertiesDetail& WithDnsPolicy(DnsPolicyT&& value) { SetDnsPolicy(std::forward<DnsPolicyT>(value)); return *this;}
113
115
119 inline const Aws::Vector<ImagePullSecret>& GetImagePullSecrets() const { return m_imagePullSecrets; }
120 inline bool ImagePullSecretsHasBeenSet() const { return m_imagePullSecretsHasBeenSet; }
121 template<typename ImagePullSecretsT = Aws::Vector<ImagePullSecret>>
122 void SetImagePullSecrets(ImagePullSecretsT&& value) { m_imagePullSecretsHasBeenSet = true; m_imagePullSecrets = std::forward<ImagePullSecretsT>(value); }
123 template<typename ImagePullSecretsT = Aws::Vector<ImagePullSecret>>
124 EksPodPropertiesDetail& WithImagePullSecrets(ImagePullSecretsT&& value) { SetImagePullSecrets(std::forward<ImagePullSecretsT>(value)); return *this;}
125 template<typename ImagePullSecretsT = ImagePullSecret>
126 EksPodPropertiesDetail& AddImagePullSecrets(ImagePullSecretsT&& value) { m_imagePullSecretsHasBeenSet = true; m_imagePullSecrets.emplace_back(std::forward<ImagePullSecretsT>(value)); return *this; }
128
130
133 inline const Aws::Vector<EksContainerDetail>& GetContainers() const { return m_containers; }
134 inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; }
135 template<typename ContainersT = Aws::Vector<EksContainerDetail>>
136 void SetContainers(ContainersT&& value) { m_containersHasBeenSet = true; m_containers = std::forward<ContainersT>(value); }
137 template<typename ContainersT = Aws::Vector<EksContainerDetail>>
138 EksPodPropertiesDetail& WithContainers(ContainersT&& value) { SetContainers(std::forward<ContainersT>(value)); return *this;}
139 template<typename ContainersT = EksContainerDetail>
140 EksPodPropertiesDetail& AddContainers(ContainersT&& value) { m_containersHasBeenSet = true; m_containers.emplace_back(std::forward<ContainersT>(value)); return *this; }
142
144
148 inline const Aws::Vector<EksContainerDetail>& GetInitContainers() const { return m_initContainers; }
149 inline bool InitContainersHasBeenSet() const { return m_initContainersHasBeenSet; }
150 template<typename InitContainersT = Aws::Vector<EksContainerDetail>>
151 void SetInitContainers(InitContainersT&& value) { m_initContainersHasBeenSet = true; m_initContainers = std::forward<InitContainersT>(value); }
152 template<typename InitContainersT = Aws::Vector<EksContainerDetail>>
153 EksPodPropertiesDetail& WithInitContainers(InitContainersT&& value) { SetInitContainers(std::forward<InitContainersT>(value)); return *this;}
154 template<typename InitContainersT = EksContainerDetail>
155 EksPodPropertiesDetail& AddInitContainers(InitContainersT&& value) { m_initContainersHasBeenSet = true; m_initContainers.emplace_back(std::forward<InitContainersT>(value)); return *this; }
157
159
162 inline const Aws::Vector<EksVolume>& GetVolumes() const { return m_volumes; }
163 inline bool VolumesHasBeenSet() const { return m_volumesHasBeenSet; }
164 template<typename VolumesT = Aws::Vector<EksVolume>>
165 void SetVolumes(VolumesT&& value) { m_volumesHasBeenSet = true; m_volumes = std::forward<VolumesT>(value); }
166 template<typename VolumesT = Aws::Vector<EksVolume>>
167 EksPodPropertiesDetail& WithVolumes(VolumesT&& value) { SetVolumes(std::forward<VolumesT>(value)); return *this;}
168 template<typename VolumesT = EksVolume>
169 EksPodPropertiesDetail& AddVolumes(VolumesT&& value) { m_volumesHasBeenSet = true; m_volumes.emplace_back(std::forward<VolumesT>(value)); return *this; }
171
173
176 inline const Aws::String& GetPodName() const { return m_podName; }
177 inline bool PodNameHasBeenSet() const { return m_podNameHasBeenSet; }
178 template<typename PodNameT = Aws::String>
179 void SetPodName(PodNameT&& value) { m_podNameHasBeenSet = true; m_podName = std::forward<PodNameT>(value); }
180 template<typename PodNameT = Aws::String>
181 EksPodPropertiesDetail& WithPodName(PodNameT&& value) { SetPodName(std::forward<PodNameT>(value)); return *this;}
183
185
188 inline const Aws::String& GetNodeName() const { return m_nodeName; }
189 inline bool NodeNameHasBeenSet() const { return m_nodeNameHasBeenSet; }
190 template<typename NodeNameT = Aws::String>
191 void SetNodeName(NodeNameT&& value) { m_nodeNameHasBeenSet = true; m_nodeName = std::forward<NodeNameT>(value); }
192 template<typename NodeNameT = Aws::String>
193 EksPodPropertiesDetail& WithNodeName(NodeNameT&& value) { SetNodeName(std::forward<NodeNameT>(value)); return *this;}
195
197
204 inline const EksMetadata& GetMetadata() const { return m_metadata; }
205 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
206 template<typename MetadataT = EksMetadata>
207 void SetMetadata(MetadataT&& value) { m_metadataHasBeenSet = true; m_metadata = std::forward<MetadataT>(value); }
208 template<typename MetadataT = EksMetadata>
209 EksPodPropertiesDetail& WithMetadata(MetadataT&& value) { SetMetadata(std::forward<MetadataT>(value)); return *this;}
211
213
219 inline bool GetShareProcessNamespace() const { return m_shareProcessNamespace; }
220 inline bool ShareProcessNamespaceHasBeenSet() const { return m_shareProcessNamespaceHasBeenSet; }
221 inline void SetShareProcessNamespace(bool value) { m_shareProcessNamespaceHasBeenSet = true; m_shareProcessNamespace = value; }
224 private:
225
226 Aws::String m_serviceAccountName;
227 bool m_serviceAccountNameHasBeenSet = false;
228
229 bool m_hostNetwork{false};
230 bool m_hostNetworkHasBeenSet = false;
231
232 Aws::String m_dnsPolicy;
233 bool m_dnsPolicyHasBeenSet = false;
234
235 Aws::Vector<ImagePullSecret> m_imagePullSecrets;
236 bool m_imagePullSecretsHasBeenSet = false;
237
239 bool m_containersHasBeenSet = false;
240
241 Aws::Vector<EksContainerDetail> m_initContainers;
242 bool m_initContainersHasBeenSet = false;
243
244 Aws::Vector<EksVolume> m_volumes;
245 bool m_volumesHasBeenSet = false;
246
247 Aws::String m_podName;
248 bool m_podNameHasBeenSet = false;
249
250 Aws::String m_nodeName;
251 bool m_nodeNameHasBeenSet = false;
252
253 EksMetadata m_metadata;
254 bool m_metadataHasBeenSet = false;
255
256 bool m_shareProcessNamespace{false};
257 bool m_shareProcessNamespaceHasBeenSet = false;
258 };
259
260} // namespace Model
261} // namespace Batch
262} // 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