AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SubmitJobRequest.h
1
6#pragma once
7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/batch/BatchRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/batch/model/ArrayProperties.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/batch/model/ContainerOverrides.h>
14#include <aws/batch/model/NodeOverrides.h>
15#include <aws/batch/model/RetryStrategy.h>
16#include <aws/batch/model/JobTimeout.h>
17#include <aws/batch/model/EksPropertiesOverride.h>
18#include <aws/batch/model/EcsPropertiesOverride.h>
19#include <aws/batch/model/ConsumableResourceProperties.h>
20#include <aws/batch/model/JobDependency.h>
21#include <utility>
22
23namespace Aws
24{
25namespace Batch
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_BATCH_API SubmitJobRequest() = default;
40
41 // Service request name is the Operation name which will send this request out,
42 // each operation should has unique request name, so that we can get operation's name from this request.
43 // Note: this is not true for response, multiple operations may have the same response name,
44 // so we can not get operation's name from response.
45 inline virtual const char* GetServiceRequestName() const override { return "SubmitJob"; }
46
47 AWS_BATCH_API Aws::String SerializePayload() const override;
48
49
51
56 inline const Aws::String& GetJobName() const { return m_jobName; }
57 inline bool JobNameHasBeenSet() const { return m_jobNameHasBeenSet; }
58 template<typename JobNameT = Aws::String>
59 void SetJobName(JobNameT&& value) { m_jobNameHasBeenSet = true; m_jobName = std::forward<JobNameT>(value); }
60 template<typename JobNameT = Aws::String>
61 SubmitJobRequest& WithJobName(JobNameT&& value) { SetJobName(std::forward<JobNameT>(value)); return *this;}
63
65
69 inline const Aws::String& GetJobQueue() const { return m_jobQueue; }
70 inline bool JobQueueHasBeenSet() const { return m_jobQueueHasBeenSet; }
71 template<typename JobQueueT = Aws::String>
72 void SetJobQueue(JobQueueT&& value) { m_jobQueueHasBeenSet = true; m_jobQueue = std::forward<JobQueueT>(value); }
73 template<typename JobQueueT = Aws::String>
74 SubmitJobRequest& WithJobQueue(JobQueueT&& value) { SetJobQueue(std::forward<JobQueueT>(value)); return *this;}
76
78
85 inline const Aws::String& GetShareIdentifier() const { return m_shareIdentifier; }
86 inline bool ShareIdentifierHasBeenSet() const { return m_shareIdentifierHasBeenSet; }
87 template<typename ShareIdentifierT = Aws::String>
88 void SetShareIdentifier(ShareIdentifierT&& value) { m_shareIdentifierHasBeenSet = true; m_shareIdentifier = std::forward<ShareIdentifierT>(value); }
89 template<typename ShareIdentifierT = Aws::String>
90 SubmitJobRequest& WithShareIdentifier(ShareIdentifierT&& value) { SetShareIdentifier(std::forward<ShareIdentifierT>(value)); return *this;}
92
94
102 inline int GetSchedulingPriorityOverride() const { return m_schedulingPriorityOverride; }
103 inline bool SchedulingPriorityOverrideHasBeenSet() const { return m_schedulingPriorityOverrideHasBeenSet; }
104 inline void SetSchedulingPriorityOverride(int value) { m_schedulingPriorityOverrideHasBeenSet = true; m_schedulingPriorityOverride = value; }
107
109
116 inline const ArrayProperties& GetArrayProperties() const { return m_arrayProperties; }
117 inline bool ArrayPropertiesHasBeenSet() const { return m_arrayPropertiesHasBeenSet; }
118 template<typename ArrayPropertiesT = ArrayProperties>
119 void SetArrayProperties(ArrayPropertiesT&& value) { m_arrayPropertiesHasBeenSet = true; m_arrayProperties = std::forward<ArrayPropertiesT>(value); }
120 template<typename ArrayPropertiesT = ArrayProperties>
121 SubmitJobRequest& WithArrayProperties(ArrayPropertiesT&& value) { SetArrayProperties(std::forward<ArrayPropertiesT>(value)); return *this;}
123
125
134 inline const Aws::Vector<JobDependency>& GetDependsOn() const { return m_dependsOn; }
135 inline bool DependsOnHasBeenSet() const { return m_dependsOnHasBeenSet; }
136 template<typename DependsOnT = Aws::Vector<JobDependency>>
137 void SetDependsOn(DependsOnT&& value) { m_dependsOnHasBeenSet = true; m_dependsOn = std::forward<DependsOnT>(value); }
138 template<typename DependsOnT = Aws::Vector<JobDependency>>
139 SubmitJobRequest& WithDependsOn(DependsOnT&& value) { SetDependsOn(std::forward<DependsOnT>(value)); return *this;}
140 template<typename DependsOnT = JobDependency>
141 SubmitJobRequest& AddDependsOn(DependsOnT&& value) { m_dependsOnHasBeenSet = true; m_dependsOn.emplace_back(std::forward<DependsOnT>(value)); return *this; }
143
145
155 inline const Aws::String& GetJobDefinition() const { return m_jobDefinition; }
156 inline bool JobDefinitionHasBeenSet() const { return m_jobDefinitionHasBeenSet; }
157 template<typename JobDefinitionT = Aws::String>
158 void SetJobDefinition(JobDefinitionT&& value) { m_jobDefinitionHasBeenSet = true; m_jobDefinition = std::forward<JobDefinitionT>(value); }
159 template<typename JobDefinitionT = Aws::String>
160 SubmitJobRequest& WithJobDefinition(JobDefinitionT&& value) { SetJobDefinition(std::forward<JobDefinitionT>(value)); return *this;}
162
164
170 inline const Aws::Map<Aws::String, Aws::String>& GetParameters() const { return m_parameters; }
171 inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; }
172 template<typename ParametersT = Aws::Map<Aws::String, Aws::String>>
173 void SetParameters(ParametersT&& value) { m_parametersHasBeenSet = true; m_parameters = std::forward<ParametersT>(value); }
174 template<typename ParametersT = Aws::Map<Aws::String, Aws::String>>
175 SubmitJobRequest& WithParameters(ParametersT&& value) { SetParameters(std::forward<ParametersT>(value)); return *this;}
176 template<typename ParametersKeyT = Aws::String, typename ParametersValueT = Aws::String>
177 SubmitJobRequest& AddParameters(ParametersKeyT&& key, ParametersValueT&& value) {
178 m_parametersHasBeenSet = true; m_parameters.emplace(std::forward<ParametersKeyT>(key), std::forward<ParametersValueT>(value)); return *this;
179 }
181
183
192 inline const ContainerOverrides& GetContainerOverrides() const { return m_containerOverrides; }
193 inline bool ContainerOverridesHasBeenSet() const { return m_containerOverridesHasBeenSet; }
194 template<typename ContainerOverridesT = ContainerOverrides>
195 void SetContainerOverrides(ContainerOverridesT&& value) { m_containerOverridesHasBeenSet = true; m_containerOverrides = std::forward<ContainerOverridesT>(value); }
196 template<typename ContainerOverridesT = ContainerOverrides>
197 SubmitJobRequest& WithContainerOverrides(ContainerOverridesT&& value) { SetContainerOverrides(std::forward<ContainerOverridesT>(value)); return *this;}
199
201
207 inline const NodeOverrides& GetNodeOverrides() const { return m_nodeOverrides; }
208 inline bool NodeOverridesHasBeenSet() const { return m_nodeOverridesHasBeenSet; }
209 template<typename NodeOverridesT = NodeOverrides>
210 void SetNodeOverrides(NodeOverridesT&& value) { m_nodeOverridesHasBeenSet = true; m_nodeOverrides = std::forward<NodeOverridesT>(value); }
211 template<typename NodeOverridesT = NodeOverrides>
212 SubmitJobRequest& WithNodeOverrides(NodeOverridesT&& value) { SetNodeOverrides(std::forward<NodeOverridesT>(value)); return *this;}
214
216
221 inline const RetryStrategy& GetRetryStrategy() const { return m_retryStrategy; }
222 inline bool RetryStrategyHasBeenSet() const { return m_retryStrategyHasBeenSet; }
223 template<typename RetryStrategyT = RetryStrategy>
224 void SetRetryStrategy(RetryStrategyT&& value) { m_retryStrategyHasBeenSet = true; m_retryStrategy = std::forward<RetryStrategyT>(value); }
225 template<typename RetryStrategyT = RetryStrategy>
226 SubmitJobRequest& WithRetryStrategy(RetryStrategyT&& value) { SetRetryStrategy(std::forward<RetryStrategyT>(value)); return *this;}
228
230
239 inline bool GetPropagateTags() const { return m_propagateTags; }
240 inline bool PropagateTagsHasBeenSet() const { return m_propagateTagsHasBeenSet; }
241 inline void SetPropagateTags(bool value) { m_propagateTagsHasBeenSet = true; m_propagateTags = value; }
242 inline SubmitJobRequest& WithPropagateTags(bool value) { SetPropagateTags(value); return *this;}
244
246
257 inline const JobTimeout& GetTimeout() const { return m_timeout; }
258 inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; }
259 template<typename TimeoutT = JobTimeout>
260 void SetTimeout(TimeoutT&& value) { m_timeoutHasBeenSet = true; m_timeout = std::forward<TimeoutT>(value); }
261 template<typename TimeoutT = JobTimeout>
262 SubmitJobRequest& WithTimeout(TimeoutT&& value) { SetTimeout(std::forward<TimeoutT>(value)); return *this;}
264
266
274 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
275 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
276 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
277 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
278 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
279 SubmitJobRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
280 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
281 SubmitJobRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
282 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
283 }
285
287
291 inline const EksPropertiesOverride& GetEksPropertiesOverride() const { return m_eksPropertiesOverride; }
292 inline bool EksPropertiesOverrideHasBeenSet() const { return m_eksPropertiesOverrideHasBeenSet; }
293 template<typename EksPropertiesOverrideT = EksPropertiesOverride>
294 void SetEksPropertiesOverride(EksPropertiesOverrideT&& value) { m_eksPropertiesOverrideHasBeenSet = true; m_eksPropertiesOverride = std::forward<EksPropertiesOverrideT>(value); }
295 template<typename EksPropertiesOverrideT = EksPropertiesOverride>
296 SubmitJobRequest& WithEksPropertiesOverride(EksPropertiesOverrideT&& value) { SetEksPropertiesOverride(std::forward<EksPropertiesOverrideT>(value)); return *this;}
298
300
304 inline const EcsPropertiesOverride& GetEcsPropertiesOverride() const { return m_ecsPropertiesOverride; }
305 inline bool EcsPropertiesOverrideHasBeenSet() const { return m_ecsPropertiesOverrideHasBeenSet; }
306 template<typename EcsPropertiesOverrideT = EcsPropertiesOverride>
307 void SetEcsPropertiesOverride(EcsPropertiesOverrideT&& value) { m_ecsPropertiesOverrideHasBeenSet = true; m_ecsPropertiesOverride = std::forward<EcsPropertiesOverrideT>(value); }
308 template<typename EcsPropertiesOverrideT = EcsPropertiesOverride>
309 SubmitJobRequest& WithEcsPropertiesOverride(EcsPropertiesOverrideT&& value) { SetEcsPropertiesOverride(std::forward<EcsPropertiesOverrideT>(value)); return *this;}
311
313
316 inline const ConsumableResourceProperties& GetConsumableResourcePropertiesOverride() const { return m_consumableResourcePropertiesOverride; }
317 inline bool ConsumableResourcePropertiesOverrideHasBeenSet() const { return m_consumableResourcePropertiesOverrideHasBeenSet; }
318 template<typename ConsumableResourcePropertiesOverrideT = ConsumableResourceProperties>
319 void SetConsumableResourcePropertiesOverride(ConsumableResourcePropertiesOverrideT&& value) { m_consumableResourcePropertiesOverrideHasBeenSet = true; m_consumableResourcePropertiesOverride = std::forward<ConsumableResourcePropertiesOverrideT>(value); }
320 template<typename ConsumableResourcePropertiesOverrideT = ConsumableResourceProperties>
321 SubmitJobRequest& WithConsumableResourcePropertiesOverride(ConsumableResourcePropertiesOverrideT&& value) { SetConsumableResourcePropertiesOverride(std::forward<ConsumableResourcePropertiesOverrideT>(value)); return *this;}
323 private:
324
325 Aws::String m_jobName;
326 bool m_jobNameHasBeenSet = false;
327
328 Aws::String m_jobQueue;
329 bool m_jobQueueHasBeenSet = false;
330
331 Aws::String m_shareIdentifier;
332 bool m_shareIdentifierHasBeenSet = false;
333
334 int m_schedulingPriorityOverride{0};
335 bool m_schedulingPriorityOverrideHasBeenSet = false;
336
337 ArrayProperties m_arrayProperties;
338 bool m_arrayPropertiesHasBeenSet = false;
339
340 Aws::Vector<JobDependency> m_dependsOn;
341 bool m_dependsOnHasBeenSet = false;
342
343 Aws::String m_jobDefinition;
344 bool m_jobDefinitionHasBeenSet = false;
345
347 bool m_parametersHasBeenSet = false;
348
349 ContainerOverrides m_containerOverrides;
350 bool m_containerOverridesHasBeenSet = false;
351
352 NodeOverrides m_nodeOverrides;
353 bool m_nodeOverridesHasBeenSet = false;
354
355 RetryStrategy m_retryStrategy;
356 bool m_retryStrategyHasBeenSet = false;
357
358 bool m_propagateTags{false};
359 bool m_propagateTagsHasBeenSet = false;
360
361 JobTimeout m_timeout;
362 bool m_timeoutHasBeenSet = false;
363
365 bool m_tagsHasBeenSet = false;
366
367 EksPropertiesOverride m_eksPropertiesOverride;
368 bool m_eksPropertiesOverrideHasBeenSet = false;
369
370 EcsPropertiesOverride m_ecsPropertiesOverride;
371 bool m_ecsPropertiesOverrideHasBeenSet = false;
372
373 ConsumableResourceProperties m_consumableResourcePropertiesOverride;
374 bool m_consumableResourcePropertiesOverrideHasBeenSet = false;
375 };
376
377} // namespace Model
378} // namespace Batch
379} // namespace Aws
const ConsumableResourceProperties & GetConsumableResourcePropertiesOverride() const
const NodeOverrides & GetNodeOverrides() const
void SetConsumableResourcePropertiesOverride(ConsumableResourcePropertiesOverrideT &&value)
SubmitJobRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::String & GetJobDefinition() const
SubmitJobRequest & WithJobQueue(JobQueueT &&value)
void SetArrayProperties(ArrayPropertiesT &&value)
SubmitJobRequest & WithNodeOverrides(NodeOverridesT &&value)
const Aws::String & GetJobName() const
SubmitJobRequest & WithJobDefinition(JobDefinitionT &&value)
const Aws::String & GetJobQueue() const
SubmitJobRequest & WithJobName(JobNameT &&value)
void SetJobDefinition(JobDefinitionT &&value)
SubmitJobRequest & AddDependsOn(DependsOnT &&value)
const Aws::String & GetShareIdentifier() const
virtual const char * GetServiceRequestName() const override
SubmitJobRequest & WithSchedulingPriorityOverride(int value)
void SetShareIdentifier(ShareIdentifierT &&value)
SubmitJobRequest & WithConsumableResourcePropertiesOverride(ConsumableResourcePropertiesOverrideT &&value)
SubmitJobRequest & WithDependsOn(DependsOnT &&value)
void SetParameters(ParametersT &&value)
SubmitJobRequest & WithShareIdentifier(ShareIdentifierT &&value)
const EcsPropertiesOverride & GetEcsPropertiesOverride() const
SubmitJobRequest & WithEksPropertiesOverride(EksPropertiesOverrideT &&value)
void SetNodeOverrides(NodeOverridesT &&value)
void SetContainerOverrides(ContainerOverridesT &&value)
void SetEcsPropertiesOverride(EcsPropertiesOverrideT &&value)
SubmitJobRequest & WithPropagateTags(bool value)
const RetryStrategy & GetRetryStrategy() const
AWS_BATCH_API Aws::String SerializePayload() const override
SubmitJobRequest & WithTags(TagsT &&value)
bool ConsumableResourcePropertiesOverrideHasBeenSet() const
SubmitJobRequest & WithRetryStrategy(RetryStrategyT &&value)
SubmitJobRequest & WithEcsPropertiesOverride(EcsPropertiesOverrideT &&value)
const JobTimeout & GetTimeout() const
SubmitJobRequest & AddParameters(ParametersKeyT &&key, ParametersValueT &&value)
const Aws::Map< Aws::String, Aws::String > & GetParameters() const
SubmitJobRequest & WithArrayProperties(ArrayPropertiesT &&value)
void SetEksPropertiesOverride(EksPropertiesOverrideT &&value)
const EksPropertiesOverride & GetEksPropertiesOverride() const
void SetRetryStrategy(RetryStrategyT &&value)
const Aws::Vector< JobDependency > & GetDependsOn() const
SubmitJobRequest & WithContainerOverrides(ContainerOverridesT &&value)
void SetJobQueue(JobQueueT &&value)
void SetDependsOn(DependsOnT &&value)
const ArrayProperties & GetArrayProperties() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
SubmitJobRequest & WithTimeout(TimeoutT &&value)
SubmitJobRequest & WithParameters(ParametersT &&value)
AWS_BATCH_API SubmitJobRequest()=default
const ContainerOverrides & GetContainerOverrides() 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