AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
JobQueueDetail.h
1
6#pragma once
7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/batch/model/ComputeEnvironmentOrder.h>
9#include <aws/batch/model/JQState.h>
10#include <aws/batch/model/JQStatus.h>
11#include <aws/batch/model/JobQueueType.h>
12#include <aws/batch/model/JobStateTimeLimitAction.h>
13#include <aws/batch/model/ServiceEnvironmentOrder.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
16#include <aws/core/utils/memory/stl/AWSVector.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Json {
23class JsonValue;
24class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace Batch {
28namespace Model {
29
37 public:
38 AWS_BATCH_API JobQueueDetail() = default;
41 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
42
44
47 inline const Aws::String& GetJobQueueName() const { return m_jobQueueName; }
48 inline bool JobQueueNameHasBeenSet() const { return m_jobQueueNameHasBeenSet; }
49 template <typename JobQueueNameT = Aws::String>
50 void SetJobQueueName(JobQueueNameT&& value) {
51 m_jobQueueNameHasBeenSet = true;
52 m_jobQueueName = std::forward<JobQueueNameT>(value);
53 }
54 template <typename JobQueueNameT = Aws::String>
55 JobQueueDetail& WithJobQueueName(JobQueueNameT&& value) {
56 SetJobQueueName(std::forward<JobQueueNameT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetJobQueueArn() const { return m_jobQueueArn; }
66 inline bool JobQueueArnHasBeenSet() const { return m_jobQueueArnHasBeenSet; }
67 template <typename JobQueueArnT = Aws::String>
68 void SetJobQueueArn(JobQueueArnT&& value) {
69 m_jobQueueArnHasBeenSet = true;
70 m_jobQueueArn = std::forward<JobQueueArnT>(value);
71 }
72 template <typename JobQueueArnT = Aws::String>
73 JobQueueDetail& WithJobQueueArn(JobQueueArnT&& value) {
74 SetJobQueueArn(std::forward<JobQueueArnT>(value));
75 return *this;
76 }
78
80
86 inline JQState GetState() const { return m_state; }
87 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
88 inline void SetState(JQState value) {
89 m_stateHasBeenSet = true;
90 m_state = value;
91 }
93 SetState(value);
94 return *this;
95 }
97
99
105 inline const Aws::String& GetSchedulingPolicyArn() const { return m_schedulingPolicyArn; }
106 inline bool SchedulingPolicyArnHasBeenSet() const { return m_schedulingPolicyArnHasBeenSet; }
107 template <typename SchedulingPolicyArnT = Aws::String>
108 void SetSchedulingPolicyArn(SchedulingPolicyArnT&& value) {
109 m_schedulingPolicyArnHasBeenSet = true;
110 m_schedulingPolicyArn = std::forward<SchedulingPolicyArnT>(value);
111 }
112 template <typename SchedulingPolicyArnT = Aws::String>
113 JobQueueDetail& WithSchedulingPolicyArn(SchedulingPolicyArnT&& value) {
114 SetSchedulingPolicyArn(std::forward<SchedulingPolicyArnT>(value));
115 return *this;
116 }
118
120
124 inline JQStatus GetStatus() const { return m_status; }
125 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
126 inline void SetStatus(JQStatus value) {
127 m_statusHasBeenSet = true;
128 m_status = value;
129 }
131 SetStatus(value);
132 return *this;
133 }
135
137
141 inline const Aws::String& GetStatusReason() const { return m_statusReason; }
142 inline bool StatusReasonHasBeenSet() const { return m_statusReasonHasBeenSet; }
143 template <typename StatusReasonT = Aws::String>
144 void SetStatusReason(StatusReasonT&& value) {
145 m_statusReasonHasBeenSet = true;
146 m_statusReason = std::forward<StatusReasonT>(value);
147 }
148 template <typename StatusReasonT = Aws::String>
149 JobQueueDetail& WithStatusReason(StatusReasonT&& value) {
150 SetStatusReason(std::forward<StatusReasonT>(value));
151 return *this;
152 }
154
156
178 inline int GetPriority() const { return m_priority; }
179 inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; }
180 inline void SetPriority(int value) {
181 m_priorityHasBeenSet = true;
182 m_priority = value;
183 }
184 inline JobQueueDetail& WithPriority(int value) {
185 SetPriority(value);
186 return *this;
187 }
189
191
196 inline const Aws::Vector<ComputeEnvironmentOrder>& GetComputeEnvironmentOrder() const { return m_computeEnvironmentOrder; }
197 inline bool ComputeEnvironmentOrderHasBeenSet() const { return m_computeEnvironmentOrderHasBeenSet; }
198 template <typename ComputeEnvironmentOrderT = Aws::Vector<ComputeEnvironmentOrder>>
199 void SetComputeEnvironmentOrder(ComputeEnvironmentOrderT&& value) {
200 m_computeEnvironmentOrderHasBeenSet = true;
201 m_computeEnvironmentOrder = std::forward<ComputeEnvironmentOrderT>(value);
202 }
203 template <typename ComputeEnvironmentOrderT = Aws::Vector<ComputeEnvironmentOrder>>
204 JobQueueDetail& WithComputeEnvironmentOrder(ComputeEnvironmentOrderT&& value) {
205 SetComputeEnvironmentOrder(std::forward<ComputeEnvironmentOrderT>(value));
206 return *this;
207 }
208 template <typename ComputeEnvironmentOrderT = ComputeEnvironmentOrder>
209 JobQueueDetail& AddComputeEnvironmentOrder(ComputeEnvironmentOrderT&& value) {
210 m_computeEnvironmentOrderHasBeenSet = true;
211 m_computeEnvironmentOrder.emplace_back(std::forward<ComputeEnvironmentOrderT>(value));
212 return *this;
213 }
215
217
222 inline const Aws::Vector<ServiceEnvironmentOrder>& GetServiceEnvironmentOrder() const { return m_serviceEnvironmentOrder; }
223 inline bool ServiceEnvironmentOrderHasBeenSet() const { return m_serviceEnvironmentOrderHasBeenSet; }
224 template <typename ServiceEnvironmentOrderT = Aws::Vector<ServiceEnvironmentOrder>>
225 void SetServiceEnvironmentOrder(ServiceEnvironmentOrderT&& value) {
226 m_serviceEnvironmentOrderHasBeenSet = true;
227 m_serviceEnvironmentOrder = std::forward<ServiceEnvironmentOrderT>(value);
228 }
229 template <typename ServiceEnvironmentOrderT = Aws::Vector<ServiceEnvironmentOrder>>
230 JobQueueDetail& WithServiceEnvironmentOrder(ServiceEnvironmentOrderT&& value) {
231 SetServiceEnvironmentOrder(std::forward<ServiceEnvironmentOrderT>(value));
232 return *this;
233 }
234 template <typename ServiceEnvironmentOrderT = ServiceEnvironmentOrder>
235 JobQueueDetail& AddServiceEnvironmentOrder(ServiceEnvironmentOrderT&& value) {
236 m_serviceEnvironmentOrderHasBeenSet = true;
237 m_serviceEnvironmentOrder.emplace_back(std::forward<ServiceEnvironmentOrderT>(value));
238 return *this;
239 }
241
243
249 inline JobQueueType GetJobQueueType() const { return m_jobQueueType; }
250 inline bool JobQueueTypeHasBeenSet() const { return m_jobQueueTypeHasBeenSet; }
251 inline void SetJobQueueType(JobQueueType value) {
252 m_jobQueueTypeHasBeenSet = true;
253 m_jobQueueType = value;
254 }
256 SetJobQueueType(value);
257 return *this;
258 }
260
262
267 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
268 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
269 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
270 void SetTags(TagsT&& value) {
271 m_tagsHasBeenSet = true;
272 m_tags = std::forward<TagsT>(value);
273 }
274 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
275 JobQueueDetail& WithTags(TagsT&& value) {
276 SetTags(std::forward<TagsT>(value));
277 return *this;
278 }
279 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
280 JobQueueDetail& AddTags(TagsKeyT&& key, TagsValueT&& value) {
281 m_tagsHasBeenSet = true;
282 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
283 return *this;
284 }
286
288
293 inline const Aws::Vector<JobStateTimeLimitAction>& GetJobStateTimeLimitActions() const { return m_jobStateTimeLimitActions; }
294 inline bool JobStateTimeLimitActionsHasBeenSet() const { return m_jobStateTimeLimitActionsHasBeenSet; }
295 template <typename JobStateTimeLimitActionsT = Aws::Vector<JobStateTimeLimitAction>>
296 void SetJobStateTimeLimitActions(JobStateTimeLimitActionsT&& value) {
297 m_jobStateTimeLimitActionsHasBeenSet = true;
298 m_jobStateTimeLimitActions = std::forward<JobStateTimeLimitActionsT>(value);
299 }
300 template <typename JobStateTimeLimitActionsT = Aws::Vector<JobStateTimeLimitAction>>
301 JobQueueDetail& WithJobStateTimeLimitActions(JobStateTimeLimitActionsT&& value) {
302 SetJobStateTimeLimitActions(std::forward<JobStateTimeLimitActionsT>(value));
303 return *this;
304 }
305 template <typename JobStateTimeLimitActionsT = JobStateTimeLimitAction>
306 JobQueueDetail& AddJobStateTimeLimitActions(JobStateTimeLimitActionsT&& value) {
307 m_jobStateTimeLimitActionsHasBeenSet = true;
308 m_jobStateTimeLimitActions.emplace_back(std::forward<JobStateTimeLimitActionsT>(value));
309 return *this;
310 }
312 private:
313 Aws::String m_jobQueueName;
314
315 Aws::String m_jobQueueArn;
316
317 JQState m_state{JQState::NOT_SET};
318
319 Aws::String m_schedulingPolicyArn;
320
321 JQStatus m_status{JQStatus::NOT_SET};
322
323 Aws::String m_statusReason;
324
325 int m_priority{0};
326
327 Aws::Vector<ComputeEnvironmentOrder> m_computeEnvironmentOrder;
328
329 Aws::Vector<ServiceEnvironmentOrder> m_serviceEnvironmentOrder;
330
331 JobQueueType m_jobQueueType{JobQueueType::NOT_SET};
332
334
335 Aws::Vector<JobStateTimeLimitAction> m_jobStateTimeLimitActions;
336 bool m_jobQueueNameHasBeenSet = false;
337 bool m_jobQueueArnHasBeenSet = false;
338 bool m_stateHasBeenSet = false;
339 bool m_schedulingPolicyArnHasBeenSet = false;
340 bool m_statusHasBeenSet = false;
341 bool m_statusReasonHasBeenSet = false;
342 bool m_priorityHasBeenSet = false;
343 bool m_computeEnvironmentOrderHasBeenSet = false;
344 bool m_serviceEnvironmentOrderHasBeenSet = false;
345 bool m_jobQueueTypeHasBeenSet = false;
346 bool m_tagsHasBeenSet = false;
347 bool m_jobStateTimeLimitActionsHasBeenSet = false;
348};
349
350} // namespace Model
351} // namespace Batch
352} // namespace Aws
JobQueueDetail & WithServiceEnvironmentOrder(ServiceEnvironmentOrderT &&value)
void SetJobStateTimeLimitActions(JobStateTimeLimitActionsT &&value)
void SetStatusReason(StatusReasonT &&value)
JobQueueDetail & AddComputeEnvironmentOrder(ComputeEnvironmentOrderT &&value)
AWS_BATCH_API JobQueueDetail()=default
JobQueueDetail & AddTags(TagsKeyT &&key, TagsValueT &&value)
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
JobQueueDetail & WithSchedulingPolicyArn(SchedulingPolicyArnT &&value)
JobQueueDetail & WithJobQueueName(JobQueueNameT &&value)
JobQueueDetail & WithJobQueueType(JobQueueType value)
void SetJobQueueType(JobQueueType value)
JobQueueDetail & WithStatus(JQStatus value)
JobQueueDetail & WithJobQueueArn(JobQueueArnT &&value)
const Aws::String & GetStatusReason() const
JobQueueDetail & WithComputeEnvironmentOrder(ComputeEnvironmentOrderT &&value)
const Aws::Vector< JobStateTimeLimitAction > & GetJobStateTimeLimitActions() const
const Aws::String & GetJobQueueName() const
JobQueueDetail & WithTags(TagsT &&value)
JobQueueDetail & WithState(JQState value)
const Aws::String & GetJobQueueArn() const
const Aws::String & GetSchedulingPolicyArn() const
JobQueueDetail & WithJobStateTimeLimitActions(JobStateTimeLimitActionsT &&value)
AWS_BATCH_API JobQueueDetail(Aws::Utils::Json::JsonView jsonValue)
JobQueueDetail & WithPriority(int value)
JobQueueDetail & WithStatusReason(StatusReasonT &&value)
const Aws::Vector< ComputeEnvironmentOrder > & GetComputeEnvironmentOrder() const
const Aws::Vector< ServiceEnvironmentOrder > & GetServiceEnvironmentOrder() const
void SetJobQueueArn(JobQueueArnT &&value)
AWS_BATCH_API JobQueueDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetJobQueueName(JobQueueNameT &&value)
JobQueueType GetJobQueueType() const
void SetSchedulingPolicyArn(SchedulingPolicyArnT &&value)
JobQueueDetail & AddServiceEnvironmentOrder(ServiceEnvironmentOrderT &&value)
void SetComputeEnvironmentOrder(ComputeEnvironmentOrderT &&value)
void SetServiceEnvironmentOrder(ServiceEnvironmentOrderT &&value)
JobQueueDetail & AddJobStateTimeLimitActions(JobStateTimeLimitActionsT &&value)
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
Aws::Utils::Json::JsonValue JsonValue