AWS SDK for C++

AWS SDK for C++ Version 1.11.787

Loading...
Searching...
No Matches
RegisterContainerInstanceRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ecs/ECSRequest.h>
10#include <aws/ecs/ECS_EXPORTS.h>
11#include <aws/ecs/model/Attribute.h>
12#include <aws/ecs/model/PlatformDevice.h>
13#include <aws/ecs/model/Resource.h>
14#include <aws/ecs/model/Tag.h>
15#include <aws/ecs/model/VersionInfo.h>
16
17#include <utility>
18
19namespace Aws {
20namespace ECS {
21namespace Model {
22
29 public:
30 AWS_ECS_API RegisterContainerInstanceRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "RegisterContainerInstance"; }
37
38 AWS_ECS_API Aws::String SerializePayload() const override;
39
41
43
48 inline const Aws::String& GetCluster() const { return m_cluster; }
49 inline bool ClusterHasBeenSet() const { return m_clusterHasBeenSet; }
50 template <typename ClusterT = Aws::String>
51 void SetCluster(ClusterT&& value) {
52 m_clusterHasBeenSet = true;
53 m_cluster = std::forward<ClusterT>(value);
54 }
55 template <typename ClusterT = Aws::String>
57 SetCluster(std::forward<ClusterT>(value));
58 return *this;
59 }
61
63
69 inline const Aws::String& GetInstanceIdentityDocument() const { return m_instanceIdentityDocument; }
70 inline bool InstanceIdentityDocumentHasBeenSet() const { return m_instanceIdentityDocumentHasBeenSet; }
71 template <typename InstanceIdentityDocumentT = Aws::String>
72 void SetInstanceIdentityDocument(InstanceIdentityDocumentT&& value) {
73 m_instanceIdentityDocumentHasBeenSet = true;
74 m_instanceIdentityDocument = std::forward<InstanceIdentityDocumentT>(value);
75 }
76 template <typename InstanceIdentityDocumentT = Aws::String>
78 SetInstanceIdentityDocument(std::forward<InstanceIdentityDocumentT>(value));
79 return *this;
80 }
82
84
90 inline const Aws::String& GetInstanceIdentityDocumentSignature() const { return m_instanceIdentityDocumentSignature; }
91 inline bool InstanceIdentityDocumentSignatureHasBeenSet() const { return m_instanceIdentityDocumentSignatureHasBeenSet; }
92 template <typename InstanceIdentityDocumentSignatureT = Aws::String>
93 void SetInstanceIdentityDocumentSignature(InstanceIdentityDocumentSignatureT&& value) {
94 m_instanceIdentityDocumentSignatureHasBeenSet = true;
95 m_instanceIdentityDocumentSignature = std::forward<InstanceIdentityDocumentSignatureT>(value);
96 }
97 template <typename InstanceIdentityDocumentSignatureT = Aws::String>
98 RegisterContainerInstanceRequest& WithInstanceIdentityDocumentSignature(InstanceIdentityDocumentSignatureT&& value) {
99 SetInstanceIdentityDocumentSignature(std::forward<InstanceIdentityDocumentSignatureT>(value));
100 return *this;
101 }
103
105
108 inline const Aws::Vector<Resource>& GetTotalResources() const { return m_totalResources; }
109 inline bool TotalResourcesHasBeenSet() const { return m_totalResourcesHasBeenSet; }
110 template <typename TotalResourcesT = Aws::Vector<Resource>>
111 void SetTotalResources(TotalResourcesT&& value) {
112 m_totalResourcesHasBeenSet = true;
113 m_totalResources = std::forward<TotalResourcesT>(value);
114 }
115 template <typename TotalResourcesT = Aws::Vector<Resource>>
117 SetTotalResources(std::forward<TotalResourcesT>(value));
118 return *this;
119 }
120 template <typename TotalResourcesT = Resource>
122 m_totalResourcesHasBeenSet = true;
123 m_totalResources.emplace_back(std::forward<TotalResourcesT>(value));
124 return *this;
125 }
127
129
133 inline const VersionInfo& GetVersionInfo() const { return m_versionInfo; }
134 inline bool VersionInfoHasBeenSet() const { return m_versionInfoHasBeenSet; }
135 template <typename VersionInfoT = VersionInfo>
136 void SetVersionInfo(VersionInfoT&& value) {
137 m_versionInfoHasBeenSet = true;
138 m_versionInfo = std::forward<VersionInfoT>(value);
139 }
140 template <typename VersionInfoT = VersionInfo>
142 SetVersionInfo(std::forward<VersionInfoT>(value));
143 return *this;
144 }
146
148
151 inline const Aws::String& GetContainerInstanceArn() const { return m_containerInstanceArn; }
152 inline bool ContainerInstanceArnHasBeenSet() const { return m_containerInstanceArnHasBeenSet; }
153 template <typename ContainerInstanceArnT = Aws::String>
154 void SetContainerInstanceArn(ContainerInstanceArnT&& value) {
155 m_containerInstanceArnHasBeenSet = true;
156 m_containerInstanceArn = std::forward<ContainerInstanceArnT>(value);
157 }
158 template <typename ContainerInstanceArnT = Aws::String>
160 SetContainerInstanceArn(std::forward<ContainerInstanceArnT>(value));
161 return *this;
162 }
164
166
169 inline const Aws::Vector<Attribute>& GetAttributes() const { return m_attributes; }
170 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
171 template <typename AttributesT = Aws::Vector<Attribute>>
172 void SetAttributes(AttributesT&& value) {
173 m_attributesHasBeenSet = true;
174 m_attributes = std::forward<AttributesT>(value);
175 }
176 template <typename AttributesT = Aws::Vector<Attribute>>
178 SetAttributes(std::forward<AttributesT>(value));
179 return *this;
180 }
181 template <typename AttributesT = Attribute>
183 m_attributesHasBeenSet = true;
184 m_attributes.emplace_back(std::forward<AttributesT>(value));
185 return *this;
186 }
188
190
194 inline const Aws::Vector<PlatformDevice>& GetPlatformDevices() const { return m_platformDevices; }
195 inline bool PlatformDevicesHasBeenSet() const { return m_platformDevicesHasBeenSet; }
196 template <typename PlatformDevicesT = Aws::Vector<PlatformDevice>>
197 void SetPlatformDevices(PlatformDevicesT&& value) {
198 m_platformDevicesHasBeenSet = true;
199 m_platformDevices = std::forward<PlatformDevicesT>(value);
200 }
201 template <typename PlatformDevicesT = Aws::Vector<PlatformDevice>>
203 SetPlatformDevices(std::forward<PlatformDevicesT>(value));
204 return *this;
205 }
206 template <typename PlatformDevicesT = PlatformDevice>
208 m_platformDevicesHasBeenSet = true;
209 m_platformDevices.emplace_back(std::forward<PlatformDevicesT>(value));
210 return *this;
211 }
213
215
233 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
234 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
235 template <typename TagsT = Aws::Vector<Tag>>
236 void SetTags(TagsT&& value) {
237 m_tagsHasBeenSet = true;
238 m_tags = std::forward<TagsT>(value);
239 }
240 template <typename TagsT = Aws::Vector<Tag>>
242 SetTags(std::forward<TagsT>(value));
243 return *this;
244 }
245 template <typename TagsT = Tag>
247 m_tagsHasBeenSet = true;
248 m_tags.emplace_back(std::forward<TagsT>(value));
249 return *this;
250 }
252 private:
253 Aws::String m_cluster;
254
255 Aws::String m_instanceIdentityDocument;
256
257 Aws::String m_instanceIdentityDocumentSignature;
258
259 Aws::Vector<Resource> m_totalResources;
260
261 VersionInfo m_versionInfo;
262
263 Aws::String m_containerInstanceArn;
264
265 Aws::Vector<Attribute> m_attributes;
266
267 Aws::Vector<PlatformDevice> m_platformDevices;
268
269 Aws::Vector<Tag> m_tags;
270 bool m_clusterHasBeenSet = false;
271 bool m_instanceIdentityDocumentHasBeenSet = false;
272 bool m_instanceIdentityDocumentSignatureHasBeenSet = false;
273 bool m_totalResourcesHasBeenSet = false;
274 bool m_versionInfoHasBeenSet = false;
275 bool m_containerInstanceArnHasBeenSet = false;
276 bool m_attributesHasBeenSet = false;
277 bool m_platformDevicesHasBeenSet = false;
278 bool m_tagsHasBeenSet = false;
279};
280
281} // namespace Model
282} // namespace ECS
283} // namespace Aws
RegisterContainerInstanceRequest & WithTotalResources(TotalResourcesT &&value)
RegisterContainerInstanceRequest & WithTags(TagsT &&value)
RegisterContainerInstanceRequest & AddPlatformDevices(PlatformDevicesT &&value)
void SetInstanceIdentityDocument(InstanceIdentityDocumentT &&value)
RegisterContainerInstanceRequest & WithAttributes(AttributesT &&value)
RegisterContainerInstanceRequest & WithInstanceIdentityDocumentSignature(InstanceIdentityDocumentSignatureT &&value)
RegisterContainerInstanceRequest & AddTags(TagsT &&value)
RegisterContainerInstanceRequest & AddTotalResources(TotalResourcesT &&value)
RegisterContainerInstanceRequest & AddAttributes(AttributesT &&value)
RegisterContainerInstanceRequest & WithInstanceIdentityDocument(InstanceIdentityDocumentT &&value)
RegisterContainerInstanceRequest & WithContainerInstanceArn(ContainerInstanceArnT &&value)
const Aws::Vector< PlatformDevice > & GetPlatformDevices() const
RegisterContainerInstanceRequest & WithCluster(ClusterT &&value)
void SetInstanceIdentityDocumentSignature(InstanceIdentityDocumentSignatureT &&value)
RegisterContainerInstanceRequest & WithPlatformDevices(PlatformDevicesT &&value)
AWS_ECS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
RegisterContainerInstanceRequest & WithVersionInfo(VersionInfoT &&value)
AWS_ECS_API Aws::String SerializePayload() const override
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector