AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
CapacityProvider.h
1
6#pragma once
7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ecs/model/CapacityProviderStatus.h>
10#include <aws/ecs/model/AutoScalingGroupProvider.h>
11#include <aws/ecs/model/CapacityProviderUpdateStatus.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/ecs/model/Tag.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 ECS
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_ECS_API CapacityProvider() = default;
43
44
46
49 inline const Aws::String& GetCapacityProviderArn() const { return m_capacityProviderArn; }
50 inline bool CapacityProviderArnHasBeenSet() const { return m_capacityProviderArnHasBeenSet; }
51 template<typename CapacityProviderArnT = Aws::String>
52 void SetCapacityProviderArn(CapacityProviderArnT&& value) { m_capacityProviderArnHasBeenSet = true; m_capacityProviderArn = std::forward<CapacityProviderArnT>(value); }
53 template<typename CapacityProviderArnT = Aws::String>
54 CapacityProvider& WithCapacityProviderArn(CapacityProviderArnT&& value) { SetCapacityProviderArn(std::forward<CapacityProviderArnT>(value)); return *this;}
56
58
61 inline const Aws::String& GetName() const { return m_name; }
62 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
63 template<typename NameT = Aws::String>
64 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
65 template<typename NameT = Aws::String>
66 CapacityProvider& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
68
70
75 inline CapacityProviderStatus GetStatus() const { return m_status; }
76 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
77 inline void SetStatus(CapacityProviderStatus value) { m_statusHasBeenSet = true; m_status = value; }
78 inline CapacityProvider& WithStatus(CapacityProviderStatus value) { SetStatus(value); return *this;}
80
82
85 inline const AutoScalingGroupProvider& GetAutoScalingGroupProvider() const { return m_autoScalingGroupProvider; }
86 inline bool AutoScalingGroupProviderHasBeenSet() const { return m_autoScalingGroupProviderHasBeenSet; }
87 template<typename AutoScalingGroupProviderT = AutoScalingGroupProvider>
88 void SetAutoScalingGroupProvider(AutoScalingGroupProviderT&& value) { m_autoScalingGroupProviderHasBeenSet = true; m_autoScalingGroupProvider = std::forward<AutoScalingGroupProviderT>(value); }
89 template<typename AutoScalingGroupProviderT = AutoScalingGroupProvider>
90 CapacityProvider& WithAutoScalingGroupProvider(AutoScalingGroupProviderT&& value) { SetAutoScalingGroupProvider(std::forward<AutoScalingGroupProviderT>(value)); return *this;}
92
94
103 inline CapacityProviderUpdateStatus GetUpdateStatus() const { return m_updateStatus; }
104 inline bool UpdateStatusHasBeenSet() const { return m_updateStatusHasBeenSet; }
105 inline void SetUpdateStatus(CapacityProviderUpdateStatus value) { m_updateStatusHasBeenSet = true; m_updateStatus = value; }
108
110
114 inline const Aws::String& GetUpdateStatusReason() const { return m_updateStatusReason; }
115 inline bool UpdateStatusReasonHasBeenSet() const { return m_updateStatusReasonHasBeenSet; }
116 template<typename UpdateStatusReasonT = Aws::String>
117 void SetUpdateStatusReason(UpdateStatusReasonT&& value) { m_updateStatusReasonHasBeenSet = true; m_updateStatusReason = std::forward<UpdateStatusReasonT>(value); }
118 template<typename UpdateStatusReasonT = Aws::String>
119 CapacityProvider& WithUpdateStatusReason(UpdateStatusReasonT&& value) { SetUpdateStatusReason(std::forward<UpdateStatusReasonT>(value)); return *this;}
121
123
141 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
142 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
143 template<typename TagsT = Aws::Vector<Tag>>
144 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
145 template<typename TagsT = Aws::Vector<Tag>>
146 CapacityProvider& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
147 template<typename TagsT = Tag>
148 CapacityProvider& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
150 private:
151
152 Aws::String m_capacityProviderArn;
153 bool m_capacityProviderArnHasBeenSet = false;
154
155 Aws::String m_name;
156 bool m_nameHasBeenSet = false;
157
159 bool m_statusHasBeenSet = false;
160
161 AutoScalingGroupProvider m_autoScalingGroupProvider;
162 bool m_autoScalingGroupProviderHasBeenSet = false;
163
165 bool m_updateStatusHasBeenSet = false;
166
167 Aws::String m_updateStatusReason;
168 bool m_updateStatusReasonHasBeenSet = false;
169
170 Aws::Vector<Tag> m_tags;
171 bool m_tagsHasBeenSet = false;
172 };
173
174} // namespace Model
175} // namespace ECS
176} // namespace Aws
CapacityProvider & WithUpdateStatusReason(UpdateStatusReasonT &&value)
CapacityProviderStatus GetStatus() const
AWS_ECS_API CapacityProvider & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetName() const
CapacityProvider & WithStatus(CapacityProviderStatus value)
CapacityProvider & WithName(NameT &&value)
CapacityProvider & AddTags(TagsT &&value)
CapacityProvider & WithUpdateStatus(CapacityProviderUpdateStatus value)
CapacityProvider & WithAutoScalingGroupProvider(AutoScalingGroupProviderT &&value)
const Aws::String & GetCapacityProviderArn() const
AWS_ECS_API CapacityProvider()=default
void SetUpdateStatus(CapacityProviderUpdateStatus value)
void SetUpdateStatusReason(UpdateStatusReasonT &&value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetUpdateStatusReason() const
CapacityProvider & WithTags(TagsT &&value)
void SetStatus(CapacityProviderStatus value)
const AutoScalingGroupProvider & GetAutoScalingGroupProvider() const
AWS_ECS_API CapacityProvider(Aws::Utils::Json::JsonView jsonValue)
CapacityProviderUpdateStatus GetUpdateStatus() const
const Aws::Vector< Tag > & GetTags() const
void SetAutoScalingGroupProvider(AutoScalingGroupProviderT &&value)
void SetCapacityProviderArn(CapacityProviderArnT &&value)
CapacityProvider & WithCapacityProviderArn(CapacityProviderArnT &&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