AWS SDK for C++

AWS SDK for C++ Version 1.11.743

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
26 public:
27 AWS_ECS_API StartTaskRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "StartTask"; }
34
35 AWS_ECS_API Aws::String SerializePayload() const override;
36
38
40
45 inline const Aws::String& GetCluster() const { return m_cluster; }
46 inline bool ClusterHasBeenSet() const { return m_clusterHasBeenSet; }
47 template <typename ClusterT = Aws::String>
48 void SetCluster(ClusterT&& value) {
49 m_clusterHasBeenSet = true;
50 m_cluster = std::forward<ClusterT>(value);
51 }
52 template <typename ClusterT = Aws::String>
53 StartTaskRequest& WithCluster(ClusterT&& value) {
54 SetCluster(std::forward<ClusterT>(value));
55 return *this;
56 }
58
60
65 inline const Aws::Vector<Aws::String>& GetContainerInstances() const { return m_containerInstances; }
66 inline bool ContainerInstancesHasBeenSet() const { return m_containerInstancesHasBeenSet; }
67 template <typename ContainerInstancesT = Aws::Vector<Aws::String>>
68 void SetContainerInstances(ContainerInstancesT&& value) {
69 m_containerInstancesHasBeenSet = true;
70 m_containerInstances = std::forward<ContainerInstancesT>(value);
71 }
72 template <typename ContainerInstancesT = Aws::Vector<Aws::String>>
73 StartTaskRequest& WithContainerInstances(ContainerInstancesT&& value) {
74 SetContainerInstances(std::forward<ContainerInstancesT>(value));
75 return *this;
76 }
77 template <typename ContainerInstancesT = Aws::String>
78 StartTaskRequest& AddContainerInstances(ContainerInstancesT&& value) {
79 m_containerInstancesHasBeenSet = true;
80 m_containerInstances.emplace_back(std::forward<ContainerInstancesT>(value));
81 return *this;
82 }
84
86
93 inline bool GetEnableECSManagedTags() const { return m_enableECSManagedTags; }
94 inline bool EnableECSManagedTagsHasBeenSet() const { return m_enableECSManagedTagsHasBeenSet; }
95 inline void SetEnableECSManagedTags(bool value) {
96 m_enableECSManagedTagsHasBeenSet = true;
97 m_enableECSManagedTags = value;
98 }
101 return *this;
102 }
104
106
111 inline bool GetEnableExecuteCommand() const { return m_enableExecuteCommand; }
112 inline bool EnableExecuteCommandHasBeenSet() const { return m_enableExecuteCommandHasBeenSet; }
113 inline void SetEnableExecuteCommand(bool value) {
114 m_enableExecuteCommandHasBeenSet = true;
115 m_enableExecuteCommand = value;
116 }
119 return *this;
120 }
122
124
128 inline const Aws::String& GetGroup() const { return m_group; }
129 inline bool GroupHasBeenSet() const { return m_groupHasBeenSet; }
130 template <typename GroupT = Aws::String>
131 void SetGroup(GroupT&& value) {
132 m_groupHasBeenSet = true;
133 m_group = std::forward<GroupT>(value);
134 }
135 template <typename GroupT = Aws::String>
136 StartTaskRequest& WithGroup(GroupT&& value) {
137 SetGroup(std::forward<GroupT>(value));
138 return *this;
139 }
141
143
148 inline const NetworkConfiguration& GetNetworkConfiguration() const { return m_networkConfiguration; }
149 inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; }
150 template <typename NetworkConfigurationT = NetworkConfiguration>
151 void SetNetworkConfiguration(NetworkConfigurationT&& value) {
152 m_networkConfigurationHasBeenSet = true;
153 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
154 }
155 template <typename NetworkConfigurationT = NetworkConfiguration>
156 StartTaskRequest& WithNetworkConfiguration(NetworkConfigurationT&& value) {
157 SetNetworkConfiguration(std::forward<NetworkConfigurationT>(value));
158 return *this;
159 }
161
163
174 inline const TaskOverride& GetOverrides() const { return m_overrides; }
175 inline bool OverridesHasBeenSet() const { return m_overridesHasBeenSet; }
176 template <typename OverridesT = TaskOverride>
177 void SetOverrides(OverridesT&& value) {
178 m_overridesHasBeenSet = true;
179 m_overrides = std::forward<OverridesT>(value);
180 }
181 template <typename OverridesT = TaskOverride>
182 StartTaskRequest& WithOverrides(OverridesT&& value) {
183 SetOverrides(std::forward<OverridesT>(value));
184 return *this;
185 }
187
189
193 inline PropagateTags GetPropagateTags() const { return m_propagateTags; }
194 inline bool PropagateTagsHasBeenSet() const { return m_propagateTagsHasBeenSet; }
195 inline void SetPropagateTags(PropagateTags value) {
196 m_propagateTagsHasBeenSet = true;
197 m_propagateTags = value;
198 }
200 SetPropagateTags(value);
201 return *this;
202 }
204
206
210 inline const Aws::String& GetReferenceId() const { return m_referenceId; }
211 inline bool ReferenceIdHasBeenSet() const { return m_referenceIdHasBeenSet; }
212 template <typename ReferenceIdT = Aws::String>
213 void SetReferenceId(ReferenceIdT&& value) {
214 m_referenceIdHasBeenSet = true;
215 m_referenceId = std::forward<ReferenceIdT>(value);
216 }
217 template <typename ReferenceIdT = Aws::String>
218 StartTaskRequest& WithReferenceId(ReferenceIdT&& value) {
219 SetReferenceId(std::forward<ReferenceIdT>(value));
220 return *this;
221 }
223
225
238 inline const Aws::String& GetStartedBy() const { return m_startedBy; }
239 inline bool StartedByHasBeenSet() const { return m_startedByHasBeenSet; }
240 template <typename StartedByT = Aws::String>
241 void SetStartedBy(StartedByT&& value) {
242 m_startedByHasBeenSet = true;
243 m_startedBy = std::forward<StartedByT>(value);
244 }
245 template <typename StartedByT = Aws::String>
246 StartTaskRequest& WithStartedBy(StartedByT&& value) {
247 SetStartedBy(std::forward<StartedByT>(value));
248 return *this;
249 }
251
253
271 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
272 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
273 template <typename TagsT = Aws::Vector<Tag>>
274 void SetTags(TagsT&& value) {
275 m_tagsHasBeenSet = true;
276 m_tags = std::forward<TagsT>(value);
277 }
278 template <typename TagsT = Aws::Vector<Tag>>
279 StartTaskRequest& WithTags(TagsT&& value) {
280 SetTags(std::forward<TagsT>(value));
281 return *this;
282 }
283 template <typename TagsT = Tag>
284 StartTaskRequest& AddTags(TagsT&& value) {
285 m_tagsHasBeenSet = true;
286 m_tags.emplace_back(std::forward<TagsT>(value));
287 return *this;
288 }
290
292
298 inline const Aws::String& GetTaskDefinition() const { return m_taskDefinition; }
299 inline bool TaskDefinitionHasBeenSet() const { return m_taskDefinitionHasBeenSet; }
300 template <typename TaskDefinitionT = Aws::String>
301 void SetTaskDefinition(TaskDefinitionT&& value) {
302 m_taskDefinitionHasBeenSet = true;
303 m_taskDefinition = std::forward<TaskDefinitionT>(value);
304 }
305 template <typename TaskDefinitionT = Aws::String>
306 StartTaskRequest& WithTaskDefinition(TaskDefinitionT&& value) {
307 SetTaskDefinition(std::forward<TaskDefinitionT>(value));
308 return *this;
309 }
311
313
320 inline const Aws::Vector<TaskVolumeConfiguration>& GetVolumeConfigurations() const { return m_volumeConfigurations; }
321 inline bool VolumeConfigurationsHasBeenSet() const { return m_volumeConfigurationsHasBeenSet; }
322 template <typename VolumeConfigurationsT = Aws::Vector<TaskVolumeConfiguration>>
323 void SetVolumeConfigurations(VolumeConfigurationsT&& value) {
324 m_volumeConfigurationsHasBeenSet = true;
325 m_volumeConfigurations = std::forward<VolumeConfigurationsT>(value);
326 }
327 template <typename VolumeConfigurationsT = Aws::Vector<TaskVolumeConfiguration>>
328 StartTaskRequest& WithVolumeConfigurations(VolumeConfigurationsT&& value) {
329 SetVolumeConfigurations(std::forward<VolumeConfigurationsT>(value));
330 return *this;
331 }
332 template <typename VolumeConfigurationsT = TaskVolumeConfiguration>
333 StartTaskRequest& AddVolumeConfigurations(VolumeConfigurationsT&& value) {
334 m_volumeConfigurationsHasBeenSet = true;
335 m_volumeConfigurations.emplace_back(std::forward<VolumeConfigurationsT>(value));
336 return *this;
337 }
339 private:
340 Aws::String m_cluster;
341
342 Aws::Vector<Aws::String> m_containerInstances;
343
344 bool m_enableECSManagedTags{false};
345
346 bool m_enableExecuteCommand{false};
347
348 Aws::String m_group;
349
350 NetworkConfiguration m_networkConfiguration;
351
352 TaskOverride m_overrides;
353
354 PropagateTags m_propagateTags{PropagateTags::NOT_SET};
355
356 Aws::String m_referenceId;
357
358 Aws::String m_startedBy;
359
360 Aws::Vector<Tag> m_tags;
361
362 Aws::String m_taskDefinition;
363
364 Aws::Vector<TaskVolumeConfiguration> m_volumeConfigurations;
365 bool m_clusterHasBeenSet = false;
366 bool m_containerInstancesHasBeenSet = false;
367 bool m_enableECSManagedTagsHasBeenSet = false;
368 bool m_enableExecuteCommandHasBeenSet = false;
369 bool m_groupHasBeenSet = false;
370 bool m_networkConfigurationHasBeenSet = false;
371 bool m_overridesHasBeenSet = false;
372 bool m_propagateTagsHasBeenSet = false;
373 bool m_referenceIdHasBeenSet = false;
374 bool m_startedByHasBeenSet = false;
375 bool m_tagsHasBeenSet = false;
376 bool m_taskDefinitionHasBeenSet = false;
377 bool m_volumeConfigurationsHasBeenSet = false;
378};
379
380} // namespace Model
381} // namespace ECS
382} // 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