AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
ContainerInstance.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ecs/ECS_EXPORTS.h>
11#include <aws/ecs/model/AgentUpdateStatus.h>
12#include <aws/ecs/model/Attachment.h>
13#include <aws/ecs/model/Attribute.h>
14#include <aws/ecs/model/ContainerInstanceHealthStatus.h>
15#include <aws/ecs/model/Resource.h>
16#include <aws/ecs/model/Tag.h>
17#include <aws/ecs/model/VersionInfo.h>
18
19#include <utility>
20
21namespace Aws {
22namespace Utils {
23namespace Json {
24class JsonValue;
25class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace ECS {
29namespace Model {
30
38 public:
39 AWS_ECS_API ContainerInstance() = default;
43
45
51 inline const Aws::String& GetContainerInstanceArn() const { return m_containerInstanceArn; }
52 inline bool ContainerInstanceArnHasBeenSet() const { return m_containerInstanceArnHasBeenSet; }
53 template <typename ContainerInstanceArnT = Aws::String>
54 void SetContainerInstanceArn(ContainerInstanceArnT&& value) {
55 m_containerInstanceArnHasBeenSet = true;
56 m_containerInstanceArn = std::forward<ContainerInstanceArnT>(value);
57 }
58 template <typename ContainerInstanceArnT = Aws::String>
59 ContainerInstance& WithContainerInstanceArn(ContainerInstanceArnT&& value) {
60 SetContainerInstanceArn(std::forward<ContainerInstanceArnT>(value));
61 return *this;
62 }
64
66
71 inline const Aws::String& GetEc2InstanceId() const { return m_ec2InstanceId; }
72 inline bool Ec2InstanceIdHasBeenSet() const { return m_ec2InstanceIdHasBeenSet; }
73 template <typename Ec2InstanceIdT = Aws::String>
74 void SetEc2InstanceId(Ec2InstanceIdT&& value) {
75 m_ec2InstanceIdHasBeenSet = true;
76 m_ec2InstanceId = std::forward<Ec2InstanceIdT>(value);
77 }
78 template <typename Ec2InstanceIdT = Aws::String>
79 ContainerInstance& WithEc2InstanceId(Ec2InstanceIdT&& value) {
80 SetEc2InstanceId(std::forward<Ec2InstanceIdT>(value));
81 return *this;
82 }
84
86
89 inline const Aws::String& GetCapacityProviderName() const { return m_capacityProviderName; }
90 inline bool CapacityProviderNameHasBeenSet() const { return m_capacityProviderNameHasBeenSet; }
91 template <typename CapacityProviderNameT = Aws::String>
92 void SetCapacityProviderName(CapacityProviderNameT&& value) {
93 m_capacityProviderNameHasBeenSet = true;
94 m_capacityProviderName = std::forward<CapacityProviderNameT>(value);
95 }
96 template <typename CapacityProviderNameT = Aws::String>
97 ContainerInstance& WithCapacityProviderName(CapacityProviderNameT&& value) {
98 SetCapacityProviderName(std::forward<CapacityProviderNameT>(value));
99 return *this;
100 }
102
104
113 inline long long GetVersion() const { return m_version; }
114 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
115 inline void SetVersion(long long value) {
116 m_versionHasBeenSet = true;
117 m_version = value;
118 }
119 inline ContainerInstance& WithVersion(long long value) {
120 SetVersion(value);
121 return *this;
122 }
124
126
130 inline const VersionInfo& GetVersionInfo() const { return m_versionInfo; }
131 inline bool VersionInfoHasBeenSet() const { return m_versionInfoHasBeenSet; }
132 template <typename VersionInfoT = VersionInfo>
133 void SetVersionInfo(VersionInfoT&& value) {
134 m_versionInfoHasBeenSet = true;
135 m_versionInfo = std::forward<VersionInfoT>(value);
136 }
137 template <typename VersionInfoT = VersionInfo>
138 ContainerInstance& WithVersionInfo(VersionInfoT&& value) {
139 SetVersionInfo(std::forward<VersionInfoT>(value));
140 return *this;
141 }
143
145
154 inline const Aws::Vector<Resource>& GetRemainingResources() const { return m_remainingResources; }
155 inline bool RemainingResourcesHasBeenSet() const { return m_remainingResourcesHasBeenSet; }
156 template <typename RemainingResourcesT = Aws::Vector<Resource>>
157 void SetRemainingResources(RemainingResourcesT&& value) {
158 m_remainingResourcesHasBeenSet = true;
159 m_remainingResources = std::forward<RemainingResourcesT>(value);
160 }
161 template <typename RemainingResourcesT = Aws::Vector<Resource>>
162 ContainerInstance& WithRemainingResources(RemainingResourcesT&& value) {
163 SetRemainingResources(std::forward<RemainingResourcesT>(value));
164 return *this;
165 }
166 template <typename RemainingResourcesT = Resource>
167 ContainerInstance& AddRemainingResources(RemainingResourcesT&& value) {
168 m_remainingResourcesHasBeenSet = true;
169 m_remainingResources.emplace_back(std::forward<RemainingResourcesT>(value));
170 return *this;
171 }
173
175
184 inline const Aws::Vector<Resource>& GetRegisteredResources() const { return m_registeredResources; }
185 inline bool RegisteredResourcesHasBeenSet() const { return m_registeredResourcesHasBeenSet; }
186 template <typename RegisteredResourcesT = Aws::Vector<Resource>>
187 void SetRegisteredResources(RegisteredResourcesT&& value) {
188 m_registeredResourcesHasBeenSet = true;
189 m_registeredResources = std::forward<RegisteredResourcesT>(value);
190 }
191 template <typename RegisteredResourcesT = Aws::Vector<Resource>>
192 ContainerInstance& WithRegisteredResources(RegisteredResourcesT&& value) {
193 SetRegisteredResources(std::forward<RegisteredResourcesT>(value));
194 return *this;
195 }
196 template <typename RegisteredResourcesT = Resource>
197 ContainerInstance& AddRegisteredResources(RegisteredResourcesT&& value) {
198 m_registeredResourcesHasBeenSet = true;
199 m_registeredResources.emplace_back(std::forward<RegisteredResourcesT>(value));
200 return *this;
201 }
203
205
227 inline const Aws::String& GetStatus() const { return m_status; }
228 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
229 template <typename StatusT = Aws::String>
230 void SetStatus(StatusT&& value) {
231 m_statusHasBeenSet = true;
232 m_status = std::forward<StatusT>(value);
233 }
234 template <typename StatusT = Aws::String>
235 ContainerInstance& WithStatus(StatusT&& value) {
236 SetStatus(std::forward<StatusT>(value));
237 return *this;
238 }
240
242
245 inline const Aws::String& GetStatusReason() const { return m_statusReason; }
246 inline bool StatusReasonHasBeenSet() const { return m_statusReasonHasBeenSet; }
247 template <typename StatusReasonT = Aws::String>
248 void SetStatusReason(StatusReasonT&& value) {
249 m_statusReasonHasBeenSet = true;
250 m_statusReason = std::forward<StatusReasonT>(value);
251 }
252 template <typename StatusReasonT = Aws::String>
253 ContainerInstance& WithStatusReason(StatusReasonT&& value) {
254 SetStatusReason(std::forward<StatusReasonT>(value));
255 return *this;
256 }
258
260
266 inline bool GetAgentConnected() const { return m_agentConnected; }
267 inline bool AgentConnectedHasBeenSet() const { return m_agentConnectedHasBeenSet; }
268 inline void SetAgentConnected(bool value) {
269 m_agentConnectedHasBeenSet = true;
270 m_agentConnected = value;
271 }
273 SetAgentConnected(value);
274 return *this;
275 }
277
279
283 inline int GetRunningTasksCount() const { return m_runningTasksCount; }
284 inline bool RunningTasksCountHasBeenSet() const { return m_runningTasksCountHasBeenSet; }
285 inline void SetRunningTasksCount(int value) {
286 m_runningTasksCountHasBeenSet = true;
287 m_runningTasksCount = value;
288 }
291 return *this;
292 }
294
296
300 inline int GetPendingTasksCount() const { return m_pendingTasksCount; }
301 inline bool PendingTasksCountHasBeenSet() const { return m_pendingTasksCountHasBeenSet; }
302 inline void SetPendingTasksCount(int value) {
303 m_pendingTasksCountHasBeenSet = true;
304 m_pendingTasksCount = value;
305 }
308 return *this;
309 }
311
313
317 inline AgentUpdateStatus GetAgentUpdateStatus() const { return m_agentUpdateStatus; }
318 inline bool AgentUpdateStatusHasBeenSet() const { return m_agentUpdateStatusHasBeenSet; }
320 m_agentUpdateStatusHasBeenSet = true;
321 m_agentUpdateStatus = value;
322 }
325 return *this;
326 }
328
330
336 inline const Aws::Vector<Attribute>& GetAttributes() const { return m_attributes; }
337 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
338 template <typename AttributesT = Aws::Vector<Attribute>>
339 void SetAttributes(AttributesT&& value) {
340 m_attributesHasBeenSet = true;
341 m_attributes = std::forward<AttributesT>(value);
342 }
343 template <typename AttributesT = Aws::Vector<Attribute>>
344 ContainerInstance& WithAttributes(AttributesT&& value) {
345 SetAttributes(std::forward<AttributesT>(value));
346 return *this;
347 }
348 template <typename AttributesT = Attribute>
349 ContainerInstance& AddAttributes(AttributesT&& value) {
350 m_attributesHasBeenSet = true;
351 m_attributes.emplace_back(std::forward<AttributesT>(value));
352 return *this;
353 }
355
357
361 inline const Aws::Utils::DateTime& GetRegisteredAt() const { return m_registeredAt; }
362 inline bool RegisteredAtHasBeenSet() const { return m_registeredAtHasBeenSet; }
363 template <typename RegisteredAtT = Aws::Utils::DateTime>
364 void SetRegisteredAt(RegisteredAtT&& value) {
365 m_registeredAtHasBeenSet = true;
366 m_registeredAt = std::forward<RegisteredAtT>(value);
367 }
368 template <typename RegisteredAtT = Aws::Utils::DateTime>
369 ContainerInstance& WithRegisteredAt(RegisteredAtT&& value) {
370 SetRegisteredAt(std::forward<RegisteredAtT>(value));
371 return *this;
372 }
374
376
380 inline const Aws::Vector<Attachment>& GetAttachments() const { return m_attachments; }
381 inline bool AttachmentsHasBeenSet() const { return m_attachmentsHasBeenSet; }
382 template <typename AttachmentsT = Aws::Vector<Attachment>>
383 void SetAttachments(AttachmentsT&& value) {
384 m_attachmentsHasBeenSet = true;
385 m_attachments = std::forward<AttachmentsT>(value);
386 }
387 template <typename AttachmentsT = Aws::Vector<Attachment>>
388 ContainerInstance& WithAttachments(AttachmentsT&& value) {
389 SetAttachments(std::forward<AttachmentsT>(value));
390 return *this;
391 }
392 template <typename AttachmentsT = Attachment>
393 ContainerInstance& AddAttachments(AttachmentsT&& value) {
394 m_attachmentsHasBeenSet = true;
395 m_attachments.emplace_back(std::forward<AttachmentsT>(value));
396 return *this;
397 }
399
401
419 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
420 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
421 template <typename TagsT = Aws::Vector<Tag>>
422 void SetTags(TagsT&& value) {
423 m_tagsHasBeenSet = true;
424 m_tags = std::forward<TagsT>(value);
425 }
426 template <typename TagsT = Aws::Vector<Tag>>
427 ContainerInstance& WithTags(TagsT&& value) {
428 SetTags(std::forward<TagsT>(value));
429 return *this;
430 }
431 template <typename TagsT = Tag>
432 ContainerInstance& AddTags(TagsT&& value) {
433 m_tagsHasBeenSet = true;
434 m_tags.emplace_back(std::forward<TagsT>(value));
435 return *this;
436 }
438
440
443 inline const ContainerInstanceHealthStatus& GetHealthStatus() const { return m_healthStatus; }
444 inline bool HealthStatusHasBeenSet() const { return m_healthStatusHasBeenSet; }
445 template <typename HealthStatusT = ContainerInstanceHealthStatus>
446 void SetHealthStatus(HealthStatusT&& value) {
447 m_healthStatusHasBeenSet = true;
448 m_healthStatus = std::forward<HealthStatusT>(value);
449 }
450 template <typename HealthStatusT = ContainerInstanceHealthStatus>
451 ContainerInstance& WithHealthStatus(HealthStatusT&& value) {
452 SetHealthStatus(std::forward<HealthStatusT>(value));
453 return *this;
454 }
456 private:
457 Aws::String m_containerInstanceArn;
458
459 Aws::String m_ec2InstanceId;
460
461 Aws::String m_capacityProviderName;
462
463 long long m_version{0};
464
465 VersionInfo m_versionInfo;
466
467 Aws::Vector<Resource> m_remainingResources;
468
469 Aws::Vector<Resource> m_registeredResources;
470
471 Aws::String m_status;
472
473 Aws::String m_statusReason;
474
475 bool m_agentConnected{false};
476
477 int m_runningTasksCount{0};
478
479 int m_pendingTasksCount{0};
480
482
483 Aws::Vector<Attribute> m_attributes;
484
485 Aws::Utils::DateTime m_registeredAt{};
486
487 Aws::Vector<Attachment> m_attachments;
488
489 Aws::Vector<Tag> m_tags;
490
491 ContainerInstanceHealthStatus m_healthStatus;
492 bool m_containerInstanceArnHasBeenSet = false;
493 bool m_ec2InstanceIdHasBeenSet = false;
494 bool m_capacityProviderNameHasBeenSet = false;
495 bool m_versionHasBeenSet = false;
496 bool m_versionInfoHasBeenSet = false;
497 bool m_remainingResourcesHasBeenSet = false;
498 bool m_registeredResourcesHasBeenSet = false;
499 bool m_statusHasBeenSet = false;
500 bool m_statusReasonHasBeenSet = false;
501 bool m_agentConnectedHasBeenSet = false;
502 bool m_runningTasksCountHasBeenSet = false;
503 bool m_pendingTasksCountHasBeenSet = false;
504 bool m_agentUpdateStatusHasBeenSet = false;
505 bool m_attributesHasBeenSet = false;
506 bool m_registeredAtHasBeenSet = false;
507 bool m_attachmentsHasBeenSet = false;
508 bool m_tagsHasBeenSet = false;
509 bool m_healthStatusHasBeenSet = false;
510};
511
512} // namespace Model
513} // namespace ECS
514} // namespace Aws
const Aws::String & GetStatusReason() const
ContainerInstance & WithTags(TagsT &&value)
const ContainerInstanceHealthStatus & GetHealthStatus() const
void SetEc2InstanceId(Ec2InstanceIdT &&value)
AgentUpdateStatus GetAgentUpdateStatus() const
const Aws::Vector< Attachment > & GetAttachments() const
AWS_ECS_API ContainerInstance()=default
void SetRegisteredResources(RegisteredResourcesT &&value)
void SetCapacityProviderName(CapacityProviderNameT &&value)
void SetVersionInfo(VersionInfoT &&value)
void SetStatusReason(StatusReasonT &&value)
ContainerInstance & WithStatusReason(StatusReasonT &&value)
const Aws::Vector< Resource > & GetRemainingResources() const
const Aws::String & GetEc2InstanceId() const
ContainerInstance & WithCapacityProviderName(CapacityProviderNameT &&value)
ContainerInstance & AddAttachments(AttachmentsT &&value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
ContainerInstance & WithPendingTasksCount(int value)
ContainerInstance & AddAttributes(AttributesT &&value)
const Aws::String & GetContainerInstanceArn() const
const VersionInfo & GetVersionInfo() const
ContainerInstance & WithAttachments(AttachmentsT &&value)
ContainerInstance & WithRegisteredResources(RegisteredResourcesT &&value)
ContainerInstance & AddRegisteredResources(RegisteredResourcesT &&value)
ContainerInstance & WithAttributes(AttributesT &&value)
ContainerInstance & WithRegisteredAt(RegisteredAtT &&value)
ContainerInstance & AddTags(TagsT &&value)
ContainerInstance & WithVersionInfo(VersionInfoT &&value)
ContainerInstance & AddRemainingResources(RemainingResourcesT &&value)
ContainerInstance & WithEc2InstanceId(Ec2InstanceIdT &&value)
void SetRegisteredAt(RegisteredAtT &&value)
void SetContainerInstanceArn(ContainerInstanceArnT &&value)
void SetAttributes(AttributesT &&value)
void SetHealthStatus(HealthStatusT &&value)
ContainerInstance & WithRemainingResources(RemainingResourcesT &&value)
void SetAgentUpdateStatus(AgentUpdateStatus value)
const Aws::String & GetStatus() const
const Aws::String & GetCapacityProviderName() const
ContainerInstance & WithVersion(long long value)
ContainerInstance & WithAgentConnected(bool value)
AWS_ECS_API ContainerInstance & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetAttachments(AttachmentsT &&value)
ContainerInstance & WithAgentUpdateStatus(AgentUpdateStatus value)
const Aws::Vector< Resource > & GetRegisteredResources() const
void SetRemainingResources(RemainingResourcesT &&value)
AWS_ECS_API ContainerInstance(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Tag > & GetTags() const
const Aws::Vector< Attribute > & GetAttributes() const
ContainerInstance & WithContainerInstanceArn(ContainerInstanceArnT &&value)
ContainerInstance & WithStatus(StatusT &&value)
ContainerInstance & WithHealthStatus(HealthStatusT &&value)
const Aws::Utils::DateTime & GetRegisteredAt() const
ContainerInstance & WithRunningTasksCount(int 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