AWS SDK for C++

AWS SDK for C++ Version 1.11.874

Loading...
Searching...
No Matches
EcsTaskDetails.h
1
6#pragma once
7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/batch/model/EphemeralStorage.h>
9#include <aws/batch/model/NetworkConfiguration.h>
10#include <aws/batch/model/RuntimePlatform.h>
11#include <aws/batch/model/TaskContainerDetails.h>
12#include <aws/batch/model/Volume.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Batch {
26namespace Model {
27
35 public:
36 AWS_BATCH_API EcsTaskDetails() = default;
39 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
46 inline const Aws::Vector<TaskContainerDetails>& GetContainers() const { return m_containers; }
47 inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; }
48 template <typename ContainersT = Aws::Vector<TaskContainerDetails>>
49 void SetContainers(ContainersT&& value) {
50 m_containersHasBeenSet = true;
51 m_containers = std::forward<ContainersT>(value);
52 }
53 template <typename ContainersT = Aws::Vector<TaskContainerDetails>>
54 EcsTaskDetails& WithContainers(ContainersT&& value) {
55 SetContainers(std::forward<ContainersT>(value));
56 return *this;
57 }
58 template <typename ContainersT = TaskContainerDetails>
59 EcsTaskDetails& AddContainers(ContainersT&& value) {
60 m_containersHasBeenSet = true;
61 m_containers.emplace_back(std::forward<ContainersT>(value));
62 return *this;
63 }
65
67
71 inline const Aws::String& GetContainerInstanceArn() const { return m_containerInstanceArn; }
72 inline bool ContainerInstanceArnHasBeenSet() const { return m_containerInstanceArnHasBeenSet; }
73 template <typename ContainerInstanceArnT = Aws::String>
74 void SetContainerInstanceArn(ContainerInstanceArnT&& value) {
75 m_containerInstanceArnHasBeenSet = true;
76 m_containerInstanceArn = std::forward<ContainerInstanceArnT>(value);
77 }
78 template <typename ContainerInstanceArnT = Aws::String>
79 EcsTaskDetails& WithContainerInstanceArn(ContainerInstanceArnT&& value) {
80 SetContainerInstanceArn(std::forward<ContainerInstanceArnT>(value));
81 return *this;
82 }
84
86
89 inline const Aws::String& GetTaskArn() const { return m_taskArn; }
90 inline bool TaskArnHasBeenSet() const { return m_taskArnHasBeenSet; }
91 template <typename TaskArnT = Aws::String>
92 void SetTaskArn(TaskArnT&& value) {
93 m_taskArnHasBeenSet = true;
94 m_taskArn = std::forward<TaskArnT>(value);
95 }
96 template <typename TaskArnT = Aws::String>
97 EcsTaskDetails& WithTaskArn(TaskArnT&& value) {
98 SetTaskArn(std::forward<TaskArnT>(value));
99 return *this;
100 }
102
104
107 inline const EphemeralStorage& GetEphemeralStorage() const { return m_ephemeralStorage; }
108 inline bool EphemeralStorageHasBeenSet() const { return m_ephemeralStorageHasBeenSet; }
109 template <typename EphemeralStorageT = EphemeralStorage>
110 void SetEphemeralStorage(EphemeralStorageT&& value) {
111 m_ephemeralStorageHasBeenSet = true;
112 m_ephemeralStorage = std::forward<EphemeralStorageT>(value);
113 }
114 template <typename EphemeralStorageT = EphemeralStorage>
115 EcsTaskDetails& WithEphemeralStorage(EphemeralStorageT&& value) {
116 SetEphemeralStorage(std::forward<EphemeralStorageT>(value));
117 return *this;
118 }
120
122
128 inline const Aws::String& GetExecutionRoleArn() const { return m_executionRoleArn; }
129 inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
130 template <typename ExecutionRoleArnT = Aws::String>
131 void SetExecutionRoleArn(ExecutionRoleArnT&& value) {
132 m_executionRoleArnHasBeenSet = true;
133 m_executionRoleArn = std::forward<ExecutionRoleArnT>(value);
134 }
135 template <typename ExecutionRoleArnT = Aws::String>
136 EcsTaskDetails& WithExecutionRoleArn(ExecutionRoleArnT&& value) {
137 SetExecutionRoleArn(std::forward<ExecutionRoleArnT>(value));
138 return *this;
139 }
141
143
146 inline const Aws::String& GetPlatformVersion() const { return m_platformVersion; }
147 inline bool PlatformVersionHasBeenSet() const { return m_platformVersionHasBeenSet; }
148 template <typename PlatformVersionT = Aws::String>
149 void SetPlatformVersion(PlatformVersionT&& value) {
150 m_platformVersionHasBeenSet = true;
151 m_platformVersion = std::forward<PlatformVersionT>(value);
152 }
153 template <typename PlatformVersionT = Aws::String>
154 EcsTaskDetails& WithPlatformVersion(PlatformVersionT&& value) {
155 SetPlatformVersion(std::forward<PlatformVersionT>(value));
156 return *this;
157 }
159
161
167 inline const Aws::String& GetIpcMode() const { return m_ipcMode; }
168 inline bool IpcModeHasBeenSet() const { return m_ipcModeHasBeenSet; }
169 template <typename IpcModeT = Aws::String>
170 void SetIpcMode(IpcModeT&& value) {
171 m_ipcModeHasBeenSet = true;
172 m_ipcMode = std::forward<IpcModeT>(value);
173 }
174 template <typename IpcModeT = Aws::String>
175 EcsTaskDetails& WithIpcMode(IpcModeT&& value) {
176 SetIpcMode(std::forward<IpcModeT>(value));
177 return *this;
178 }
180
182
191 inline const Aws::String& GetTaskRoleArn() const { return m_taskRoleArn; }
192 inline bool TaskRoleArnHasBeenSet() const { return m_taskRoleArnHasBeenSet; }
193 template <typename TaskRoleArnT = Aws::String>
194 void SetTaskRoleArn(TaskRoleArnT&& value) {
195 m_taskRoleArnHasBeenSet = true;
196 m_taskRoleArn = std::forward<TaskRoleArnT>(value);
197 }
198 template <typename TaskRoleArnT = Aws::String>
199 EcsTaskDetails& WithTaskRoleArn(TaskRoleArnT&& value) {
200 SetTaskRoleArn(std::forward<TaskRoleArnT>(value));
201 return *this;
202 }
204
206
212 inline const Aws::String& GetPidMode() const { return m_pidMode; }
213 inline bool PidModeHasBeenSet() const { return m_pidModeHasBeenSet; }
214 template <typename PidModeT = Aws::String>
215 void SetPidMode(PidModeT&& value) {
216 m_pidModeHasBeenSet = true;
217 m_pidMode = std::forward<PidModeT>(value);
218 }
219 template <typename PidModeT = Aws::String>
220 EcsTaskDetails& WithPidMode(PidModeT&& value) {
221 SetPidMode(std::forward<PidModeT>(value));
222 return *this;
223 }
225
227
232 inline const NetworkConfiguration& GetNetworkConfiguration() const { return m_networkConfiguration; }
233 inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; }
234 template <typename NetworkConfigurationT = NetworkConfiguration>
235 void SetNetworkConfiguration(NetworkConfigurationT&& value) {
236 m_networkConfigurationHasBeenSet = true;
237 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
238 }
239 template <typename NetworkConfigurationT = NetworkConfiguration>
240 EcsTaskDetails& WithNetworkConfiguration(NetworkConfigurationT&& value) {
241 SetNetworkConfiguration(std::forward<NetworkConfigurationT>(value));
242 return *this;
243 }
245
247
252 inline const RuntimePlatform& GetRuntimePlatform() const { return m_runtimePlatform; }
253 inline bool RuntimePlatformHasBeenSet() const { return m_runtimePlatformHasBeenSet; }
254 template <typename RuntimePlatformT = RuntimePlatform>
255 void SetRuntimePlatform(RuntimePlatformT&& value) {
256 m_runtimePlatformHasBeenSet = true;
257 m_runtimePlatform = std::forward<RuntimePlatformT>(value);
258 }
259 template <typename RuntimePlatformT = RuntimePlatform>
260 EcsTaskDetails& WithRuntimePlatform(RuntimePlatformT&& value) {
261 SetRuntimePlatform(std::forward<RuntimePlatformT>(value));
262 return *this;
263 }
265
267
270 inline const Aws::Vector<Volume>& GetVolumes() const { return m_volumes; }
271 inline bool VolumesHasBeenSet() const { return m_volumesHasBeenSet; }
272 template <typename VolumesT = Aws::Vector<Volume>>
273 void SetVolumes(VolumesT&& value) {
274 m_volumesHasBeenSet = true;
275 m_volumes = std::forward<VolumesT>(value);
276 }
277 template <typename VolumesT = Aws::Vector<Volume>>
278 EcsTaskDetails& WithVolumes(VolumesT&& value) {
279 SetVolumes(std::forward<VolumesT>(value));
280 return *this;
281 }
282 template <typename VolumesT = Volume>
283 EcsTaskDetails& AddVolumes(VolumesT&& value) {
284 m_volumesHasBeenSet = true;
285 m_volumes.emplace_back(std::forward<VolumesT>(value));
286 return *this;
287 }
289
291
296 inline bool GetEnableExecuteCommand() const { return m_enableExecuteCommand; }
297 inline bool EnableExecuteCommandHasBeenSet() const { return m_enableExecuteCommandHasBeenSet; }
298 inline void SetEnableExecuteCommand(bool value) {
299 m_enableExecuteCommandHasBeenSet = true;
300 m_enableExecuteCommand = value;
301 }
304 return *this;
305 }
307
309
314 inline const Aws::String& GetNetworkMode() const { return m_networkMode; }
315 inline bool NetworkModeHasBeenSet() const { return m_networkModeHasBeenSet; }
316 template <typename NetworkModeT = Aws::String>
317 void SetNetworkMode(NetworkModeT&& value) {
318 m_networkModeHasBeenSet = true;
319 m_networkMode = std::forward<NetworkModeT>(value);
320 }
321 template <typename NetworkModeT = Aws::String>
322 EcsTaskDetails& WithNetworkMode(NetworkModeT&& value) {
323 SetNetworkMode(std::forward<NetworkModeT>(value));
324 return *this;
325 }
327 private:
329
330 Aws::String m_containerInstanceArn;
331
332 Aws::String m_taskArn;
333
334 EphemeralStorage m_ephemeralStorage;
335
336 Aws::String m_executionRoleArn;
337
338 Aws::String m_platformVersion;
339
340 Aws::String m_ipcMode;
341
342 Aws::String m_taskRoleArn;
343
344 Aws::String m_pidMode;
345
346 NetworkConfiguration m_networkConfiguration;
347
348 RuntimePlatform m_runtimePlatform;
349
350 Aws::Vector<Volume> m_volumes;
351
352 bool m_enableExecuteCommand{false};
353
354 Aws::String m_networkMode;
355 bool m_containersHasBeenSet = false;
356 bool m_containerInstanceArnHasBeenSet = false;
357 bool m_taskArnHasBeenSet = false;
358 bool m_ephemeralStorageHasBeenSet = false;
359 bool m_executionRoleArnHasBeenSet = false;
360 bool m_platformVersionHasBeenSet = false;
361 bool m_ipcModeHasBeenSet = false;
362 bool m_taskRoleArnHasBeenSet = false;
363 bool m_pidModeHasBeenSet = false;
364 bool m_networkConfigurationHasBeenSet = false;
365 bool m_runtimePlatformHasBeenSet = false;
366 bool m_volumesHasBeenSet = false;
367 bool m_enableExecuteCommandHasBeenSet = false;
368 bool m_networkModeHasBeenSet = false;
369};
370
371} // namespace Model
372} // namespace Batch
373} // namespace Aws
const Aws::String & GetPidMode() const
void SetNetworkMode(NetworkModeT &&value)
void SetTaskRoleArn(TaskRoleArnT &&value)
EcsTaskDetails & WithTaskRoleArn(TaskRoleArnT &&value)
const Aws::String & GetTaskRoleArn() const
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
EcsTaskDetails & WithContainers(ContainersT &&value)
AWS_BATCH_API EcsTaskDetails()=default
void SetEphemeralStorage(EphemeralStorageT &&value)
void SetNetworkConfiguration(NetworkConfigurationT &&value)
const RuntimePlatform & GetRuntimePlatform() const
const Aws::String & GetIpcMode() const
const Aws::String & GetContainerInstanceArn() const
void SetTaskArn(TaskArnT &&value)
EcsTaskDetails & WithTaskArn(TaskArnT &&value)
const Aws::Vector< Volume > & GetVolumes() const
const EphemeralStorage & GetEphemeralStorage() const
const Aws::String & GetNetworkMode() const
void SetRuntimePlatform(RuntimePlatformT &&value)
AWS_BATCH_API EcsTaskDetails(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetPlatformVersion() const
EcsTaskDetails & WithEnableExecuteCommand(bool value)
const Aws::String & GetTaskArn() const
EcsTaskDetails & AddVolumes(VolumesT &&value)
EcsTaskDetails & WithContainerInstanceArn(ContainerInstanceArnT &&value)
const NetworkConfiguration & GetNetworkConfiguration() const
EcsTaskDetails & WithIpcMode(IpcModeT &&value)
EcsTaskDetails & AddContainers(ContainersT &&value)
void SetContainerInstanceArn(ContainerInstanceArnT &&value)
EcsTaskDetails & WithRuntimePlatform(RuntimePlatformT &&value)
void SetPlatformVersion(PlatformVersionT &&value)
EcsTaskDetails & WithExecutionRoleArn(ExecutionRoleArnT &&value)
void SetVolumes(VolumesT &&value)
EcsTaskDetails & WithNetworkConfiguration(NetworkConfigurationT &&value)
AWS_BATCH_API EcsTaskDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< TaskContainerDetails > & GetContainers() const
void SetContainers(ContainersT &&value)
EcsTaskDetails & WithPlatformVersion(PlatformVersionT &&value)
EcsTaskDetails & WithEphemeralStorage(EphemeralStorageT &&value)
EcsTaskDetails & WithVolumes(VolumesT &&value)
const Aws::String & GetExecutionRoleArn() const
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
EcsTaskDetails & WithPidMode(PidModeT &&value)
void SetPidMode(PidModeT &&value)
void SetIpcMode(IpcModeT &&value)
EcsTaskDetails & WithNetworkMode(NetworkModeT &&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