AWS SDK for C++

AWS SDK for C++ Version 1.11.787

Loading...
Searching...
No Matches
StartTaskRequest.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/NetworkConfiguration.h>
12#include <aws/ecs/model/PropagateTags.h>
13#include <aws/ecs/model/Tag.h>
14#include <aws/ecs/model/TaskOverride.h>
15#include <aws/ecs/model/TaskVolumeConfiguration.h>
16
17#include <utility>
18
19namespace Aws {
20namespace ECS {
21namespace Model {
22
29 public:
30 AWS_ECS_API StartTaskRequest() = 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 "StartTask"; }
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>
56 StartTaskRequest& WithCluster(ClusterT&& value) {
57 SetCluster(std::forward<ClusterT>(value));
58 return *this;
59 }
61
63
68 inline const Aws::Vector<Aws::String>& GetContainerInstances() const { return m_containerInstances; }
69 inline bool ContainerInstancesHasBeenSet() const { return m_containerInstancesHasBeenSet; }
70 template <typename ContainerInstancesT = Aws::Vector<Aws::String>>
71 void SetContainerInstances(ContainerInstancesT&& value) {
72 m_containerInstancesHasBeenSet = true;
73 m_containerInstances = std::forward<ContainerInstancesT>(value);
74 }
75 template <typename ContainerInstancesT = Aws::Vector<Aws::String>>
76 StartTaskRequest& WithContainerInstances(ContainerInstancesT&& value) {
77 SetContainerInstances(std::forward<ContainerInstancesT>(value));
78 return *this;
79 }
80 template <typename ContainerInstancesT = Aws::String>
81 StartTaskRequest& AddContainerInstances(ContainerInstancesT&& value) {
82 m_containerInstancesHasBeenSet = true;
83 m_containerInstances.emplace_back(std::forward<ContainerInstancesT>(value));
84 return *this;
85 }
87
89
96 inline bool GetEnableECSManagedTags() const { return m_enableECSManagedTags; }
97 inline bool EnableECSManagedTagsHasBeenSet() const { return m_enableECSManagedTagsHasBeenSet; }
98 inline void SetEnableECSManagedTags(bool value) {
99 m_enableECSManagedTagsHasBeenSet = true;
100 m_enableECSManagedTags = value;
101 }
104 return *this;
105 }
107
109
114 inline bool GetEnableExecuteCommand() const { return m_enableExecuteCommand; }
115 inline bool EnableExecuteCommandHasBeenSet() const { return m_enableExecuteCommandHasBeenSet; }
116 inline void SetEnableExecuteCommand(bool value) {
117 m_enableExecuteCommandHasBeenSet = true;
118 m_enableExecuteCommand = value;
119 }
122 return *this;
123 }
125
127
131 inline const Aws::String& GetGroup() const { return m_group; }
132 inline bool GroupHasBeenSet() const { return m_groupHasBeenSet; }
133 template <typename GroupT = Aws::String>
134 void SetGroup(GroupT&& value) {
135 m_groupHasBeenSet = true;
136 m_group = std::forward<GroupT>(value);
137 }
138 template <typename GroupT = Aws::String>
139 StartTaskRequest& WithGroup(GroupT&& value) {
140 SetGroup(std::forward<GroupT>(value));
141 return *this;
142 }
144
146
151 inline const NetworkConfiguration& GetNetworkConfiguration() const { return m_networkConfiguration; }
152 inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; }
153 template <typename NetworkConfigurationT = NetworkConfiguration>
154 void SetNetworkConfiguration(NetworkConfigurationT&& value) {
155 m_networkConfigurationHasBeenSet = true;
156 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
157 }
158 template <typename NetworkConfigurationT = NetworkConfiguration>
159 StartTaskRequest& WithNetworkConfiguration(NetworkConfigurationT&& value) {
160 SetNetworkConfiguration(std::forward<NetworkConfigurationT>(value));
161 return *this;
162 }
164
166
177 inline const TaskOverride& GetOverrides() const { return m_overrides; }
178 inline bool OverridesHasBeenSet() const { return m_overridesHasBeenSet; }
179 template <typename OverridesT = TaskOverride>
180 void SetOverrides(OverridesT&& value) {
181 m_overridesHasBeenSet = true;
182 m_overrides = std::forward<OverridesT>(value);
183 }
184 template <typename OverridesT = TaskOverride>
185 StartTaskRequest& WithOverrides(OverridesT&& value) {
186 SetOverrides(std::forward<OverridesT>(value));
187 return *this;
188 }
190
192
196 inline PropagateTags GetPropagateTags() const { return m_propagateTags; }
197 inline bool PropagateTagsHasBeenSet() const { return m_propagateTagsHasBeenSet; }
198 inline void SetPropagateTags(PropagateTags value) {
199 m_propagateTagsHasBeenSet = true;
200 m_propagateTags = value;
201 }
203 SetPropagateTags(value);
204 return *this;
205 }
207
209
213 inline const Aws::String& GetReferenceId() const { return m_referenceId; }
214 inline bool ReferenceIdHasBeenSet() const { return m_referenceIdHasBeenSet; }
215 template <typename ReferenceIdT = Aws::String>
216 void SetReferenceId(ReferenceIdT&& value) {
217 m_referenceIdHasBeenSet = true;
218 m_referenceId = std::forward<ReferenceIdT>(value);
219 }
220 template <typename ReferenceIdT = Aws::String>
221 StartTaskRequest& WithReferenceId(ReferenceIdT&& value) {
222 SetReferenceId(std::forward<ReferenceIdT>(value));
223 return *this;
224 }
226
228
241 inline const Aws::String& GetStartedBy() const { return m_startedBy; }
242 inline bool StartedByHasBeenSet() const { return m_startedByHasBeenSet; }
243 template <typename StartedByT = Aws::String>
244 void SetStartedBy(StartedByT&& value) {
245 m_startedByHasBeenSet = true;
246 m_startedBy = std::forward<StartedByT>(value);
247 }
248 template <typename StartedByT = Aws::String>
249 StartTaskRequest& WithStartedBy(StartedByT&& value) {
250 SetStartedBy(std::forward<StartedByT>(value));
251 return *this;
252 }
254
256
274 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
275 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
276 template <typename TagsT = Aws::Vector<Tag>>
277 void SetTags(TagsT&& value) {
278 m_tagsHasBeenSet = true;
279 m_tags = std::forward<TagsT>(value);
280 }
281 template <typename TagsT = Aws::Vector<Tag>>
282 StartTaskRequest& WithTags(TagsT&& value) {
283 SetTags(std::forward<TagsT>(value));
284 return *this;
285 }
286 template <typename TagsT = Tag>
287 StartTaskRequest& AddTags(TagsT&& value) {
288 m_tagsHasBeenSet = true;
289 m_tags.emplace_back(std::forward<TagsT>(value));
290 return *this;
291 }
293
295
301 inline const Aws::String& GetTaskDefinition() const { return m_taskDefinition; }
302 inline bool TaskDefinitionHasBeenSet() const { return m_taskDefinitionHasBeenSet; }
303 template <typename TaskDefinitionT = Aws::String>
304 void SetTaskDefinition(TaskDefinitionT&& value) {
305 m_taskDefinitionHasBeenSet = true;
306 m_taskDefinition = std::forward<TaskDefinitionT>(value);
307 }
308 template <typename TaskDefinitionT = Aws::String>
309 StartTaskRequest& WithTaskDefinition(TaskDefinitionT&& value) {
310 SetTaskDefinition(std::forward<TaskDefinitionT>(value));
311 return *this;
312 }
314
316
323 inline const Aws::Vector<TaskVolumeConfiguration>& GetVolumeConfigurations() const { return m_volumeConfigurations; }
324 inline bool VolumeConfigurationsHasBeenSet() const { return m_volumeConfigurationsHasBeenSet; }
325 template <typename VolumeConfigurationsT = Aws::Vector<TaskVolumeConfiguration>>
326 void SetVolumeConfigurations(VolumeConfigurationsT&& value) {
327 m_volumeConfigurationsHasBeenSet = true;
328 m_volumeConfigurations = std::forward<VolumeConfigurationsT>(value);
329 }
330 template <typename VolumeConfigurationsT = Aws::Vector<TaskVolumeConfiguration>>
331 StartTaskRequest& WithVolumeConfigurations(VolumeConfigurationsT&& value) {
332 SetVolumeConfigurations(std::forward<VolumeConfigurationsT>(value));
333 return *this;
334 }
335 template <typename VolumeConfigurationsT = TaskVolumeConfiguration>
336 StartTaskRequest& AddVolumeConfigurations(VolumeConfigurationsT&& value) {
337 m_volumeConfigurationsHasBeenSet = true;
338 m_volumeConfigurations.emplace_back(std::forward<VolumeConfigurationsT>(value));
339 return *this;
340 }
342 private:
343 Aws::String m_cluster;
344
345 Aws::Vector<Aws::String> m_containerInstances;
346
347 bool m_enableECSManagedTags{false};
348
349 bool m_enableExecuteCommand{false};
350
351 Aws::String m_group;
352
353 NetworkConfiguration m_networkConfiguration;
354
355 TaskOverride m_overrides;
356
357 PropagateTags m_propagateTags{PropagateTags::NOT_SET};
358
359 Aws::String m_referenceId;
360
361 Aws::String m_startedBy;
362
363 Aws::Vector<Tag> m_tags;
364
365 Aws::String m_taskDefinition;
366
367 Aws::Vector<TaskVolumeConfiguration> m_volumeConfigurations;
368 bool m_clusterHasBeenSet = false;
369 bool m_containerInstancesHasBeenSet = false;
370 bool m_enableECSManagedTagsHasBeenSet = false;
371 bool m_enableExecuteCommandHasBeenSet = false;
372 bool m_groupHasBeenSet = false;
373 bool m_networkConfigurationHasBeenSet = false;
374 bool m_overridesHasBeenSet = false;
375 bool m_propagateTagsHasBeenSet = false;
376 bool m_referenceIdHasBeenSet = false;
377 bool m_startedByHasBeenSet = false;
378 bool m_tagsHasBeenSet = false;
379 bool m_taskDefinitionHasBeenSet = false;
380 bool m_volumeConfigurationsHasBeenSet = false;
381};
382
383} // namespace Model
384} // namespace ECS
385} // namespace Aws
PropagateTags GetPropagateTags() const
void SetContainerInstances(ContainerInstancesT &&value)
StartTaskRequest & WithPropagateTags(PropagateTags value)
StartTaskRequest & AddVolumeConfigurations(VolumeConfigurationsT &&value)
StartTaskRequest & AddTags(TagsT &&value)
void SetVolumeConfigurations(VolumeConfigurationsT &&value)
StartTaskRequest & WithTaskDefinition(TaskDefinitionT &&value)
StartTaskRequest & WithEnableECSManagedTags(bool value)
AWS_ECS_API Aws::String SerializePayload() const override
const Aws::String & GetCluster() const
const NetworkConfiguration & GetNetworkConfiguration() const
const Aws::Vector< Aws::String > & GetContainerInstances() const
const Aws::Vector< TaskVolumeConfiguration > & GetVolumeConfigurations() const
void SetCluster(ClusterT &&value)
AWS_ECS_API StartTaskRequest()=default
StartTaskRequest & WithTags(TagsT &&value)
void SetPropagateTags(PropagateTags value)
void SetReferenceId(ReferenceIdT &&value)
StartTaskRequest & WithEnableExecuteCommand(bool value)
StartTaskRequest & WithContainerInstances(ContainerInstancesT &&value)
void SetOverrides(OverridesT &&value)
StartTaskRequest & AddContainerInstances(ContainerInstancesT &&value)
const Aws::String & GetReferenceId() const
StartTaskRequest & WithCluster(ClusterT &&value)
void SetNetworkConfiguration(NetworkConfigurationT &&value)
AWS_ECS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const TaskOverride & GetOverrides() const
StartTaskRequest & WithOverrides(OverridesT &&value)
StartTaskRequest & WithReferenceId(ReferenceIdT &&value)
void SetStartedBy(StartedByT &&value)
void SetTaskDefinition(TaskDefinitionT &&value)
StartTaskRequest & WithGroup(GroupT &&value)
virtual const char * GetServiceRequestName() const override
const Aws::String & GetTaskDefinition() const
const Aws::Vector< Tag > & GetTags() const
StartTaskRequest & WithNetworkConfiguration(NetworkConfigurationT &&value)
const Aws::String & GetGroup() const
const Aws::String & GetStartedBy() const
StartTaskRequest & WithVolumeConfigurations(VolumeConfigurationsT &&value)
StartTaskRequest & WithStartedBy(StartedByT &&value)
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