AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
StartTaskRequest.h
1
6#pragma once
7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/ecs/ECSRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ecs/model/NetworkConfiguration.h>
12#include <aws/ecs/model/TaskOverride.h>
13#include <aws/ecs/model/PropagateTags.h>
14#include <aws/ecs/model/Tag.h>
15#include <aws/ecs/model/TaskVolumeConfiguration.h>
16#include <utility>
17
18namespace Aws
19{
20namespace ECS
21{
22namespace Model
23{
24
28 {
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
42
44
49 inline const Aws::String& GetCluster() const { return m_cluster; }
50 inline bool ClusterHasBeenSet() const { return m_clusterHasBeenSet; }
51 template<typename ClusterT = Aws::String>
52 void SetCluster(ClusterT&& value) { m_clusterHasBeenSet = true; m_cluster = std::forward<ClusterT>(value); }
53 template<typename ClusterT = Aws::String>
54 StartTaskRequest& WithCluster(ClusterT&& value) { SetCluster(std::forward<ClusterT>(value)); return *this;}
56
58
63 inline const Aws::Vector<Aws::String>& GetContainerInstances() const { return m_containerInstances; }
64 inline bool ContainerInstancesHasBeenSet() const { return m_containerInstancesHasBeenSet; }
65 template<typename ContainerInstancesT = Aws::Vector<Aws::String>>
66 void SetContainerInstances(ContainerInstancesT&& value) { m_containerInstancesHasBeenSet = true; m_containerInstances = std::forward<ContainerInstancesT>(value); }
67 template<typename ContainerInstancesT = Aws::Vector<Aws::String>>
68 StartTaskRequest& WithContainerInstances(ContainerInstancesT&& value) { SetContainerInstances(std::forward<ContainerInstancesT>(value)); return *this;}
69 template<typename ContainerInstancesT = Aws::String>
70 StartTaskRequest& AddContainerInstances(ContainerInstancesT&& value) { m_containerInstancesHasBeenSet = true; m_containerInstances.emplace_back(std::forward<ContainerInstancesT>(value)); return *this; }
72
74
81 inline bool GetEnableECSManagedTags() const { return m_enableECSManagedTags; }
82 inline bool EnableECSManagedTagsHasBeenSet() const { return m_enableECSManagedTagsHasBeenSet; }
83 inline void SetEnableECSManagedTags(bool value) { m_enableECSManagedTagsHasBeenSet = true; m_enableECSManagedTags = value; }
84 inline StartTaskRequest& WithEnableECSManagedTags(bool value) { SetEnableECSManagedTags(value); return *this;}
86
88
93 inline bool GetEnableExecuteCommand() const { return m_enableExecuteCommand; }
94 inline bool EnableExecuteCommandHasBeenSet() const { return m_enableExecuteCommandHasBeenSet; }
95 inline void SetEnableExecuteCommand(bool value) { m_enableExecuteCommandHasBeenSet = true; m_enableExecuteCommand = value; }
96 inline StartTaskRequest& WithEnableExecuteCommand(bool value) { SetEnableExecuteCommand(value); return *this;}
98
100
104 inline const Aws::String& GetGroup() const { return m_group; }
105 inline bool GroupHasBeenSet() const { return m_groupHasBeenSet; }
106 template<typename GroupT = Aws::String>
107 void SetGroup(GroupT&& value) { m_groupHasBeenSet = true; m_group = std::forward<GroupT>(value); }
108 template<typename GroupT = Aws::String>
109 StartTaskRequest& WithGroup(GroupT&& value) { SetGroup(std::forward<GroupT>(value)); return *this;}
111
113
118 inline const NetworkConfiguration& GetNetworkConfiguration() const { return m_networkConfiguration; }
119 inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; }
120 template<typename NetworkConfigurationT = NetworkConfiguration>
121 void SetNetworkConfiguration(NetworkConfigurationT&& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = std::forward<NetworkConfigurationT>(value); }
122 template<typename NetworkConfigurationT = NetworkConfiguration>
123 StartTaskRequest& WithNetworkConfiguration(NetworkConfigurationT&& value) { SetNetworkConfiguration(std::forward<NetworkConfigurationT>(value)); return *this;}
125
127
138 inline const TaskOverride& GetOverrides() const { return m_overrides; }
139 inline bool OverridesHasBeenSet() const { return m_overridesHasBeenSet; }
140 template<typename OverridesT = TaskOverride>
141 void SetOverrides(OverridesT&& value) { m_overridesHasBeenSet = true; m_overrides = std::forward<OverridesT>(value); }
142 template<typename OverridesT = TaskOverride>
143 StartTaskRequest& WithOverrides(OverridesT&& value) { SetOverrides(std::forward<OverridesT>(value)); return *this;}
145
147
151 inline PropagateTags GetPropagateTags() const { return m_propagateTags; }
152 inline bool PropagateTagsHasBeenSet() const { return m_propagateTagsHasBeenSet; }
153 inline void SetPropagateTags(PropagateTags value) { m_propagateTagsHasBeenSet = true; m_propagateTags = value; }
154 inline StartTaskRequest& WithPropagateTags(PropagateTags value) { SetPropagateTags(value); return *this;}
156
158
162 inline const Aws::String& GetReferenceId() const { return m_referenceId; }
163 inline bool ReferenceIdHasBeenSet() const { return m_referenceIdHasBeenSet; }
164 template<typename ReferenceIdT = Aws::String>
165 void SetReferenceId(ReferenceIdT&& value) { m_referenceIdHasBeenSet = true; m_referenceId = std::forward<ReferenceIdT>(value); }
166 template<typename ReferenceIdT = Aws::String>
167 StartTaskRequest& WithReferenceId(ReferenceIdT&& value) { SetReferenceId(std::forward<ReferenceIdT>(value)); return *this;}
169
171
184 inline const Aws::String& GetStartedBy() const { return m_startedBy; }
185 inline bool StartedByHasBeenSet() const { return m_startedByHasBeenSet; }
186 template<typename StartedByT = Aws::String>
187 void SetStartedBy(StartedByT&& value) { m_startedByHasBeenSet = true; m_startedBy = std::forward<StartedByT>(value); }
188 template<typename StartedByT = Aws::String>
189 StartTaskRequest& WithStartedBy(StartedByT&& value) { SetStartedBy(std::forward<StartedByT>(value)); return *this;}
191
193
211 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
212 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
213 template<typename TagsT = Aws::Vector<Tag>>
214 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
215 template<typename TagsT = Aws::Vector<Tag>>
216 StartTaskRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
217 template<typename TagsT = Tag>
218 StartTaskRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
220
222
228 inline const Aws::String& GetTaskDefinition() const { return m_taskDefinition; }
229 inline bool TaskDefinitionHasBeenSet() const { return m_taskDefinitionHasBeenSet; }
230 template<typename TaskDefinitionT = Aws::String>
231 void SetTaskDefinition(TaskDefinitionT&& value) { m_taskDefinitionHasBeenSet = true; m_taskDefinition = std::forward<TaskDefinitionT>(value); }
232 template<typename TaskDefinitionT = Aws::String>
233 StartTaskRequest& WithTaskDefinition(TaskDefinitionT&& value) { SetTaskDefinition(std::forward<TaskDefinitionT>(value)); return *this;}
235
237
244 inline const Aws::Vector<TaskVolumeConfiguration>& GetVolumeConfigurations() const { return m_volumeConfigurations; }
245 inline bool VolumeConfigurationsHasBeenSet() const { return m_volumeConfigurationsHasBeenSet; }
246 template<typename VolumeConfigurationsT = Aws::Vector<TaskVolumeConfiguration>>
247 void SetVolumeConfigurations(VolumeConfigurationsT&& value) { m_volumeConfigurationsHasBeenSet = true; m_volumeConfigurations = std::forward<VolumeConfigurationsT>(value); }
248 template<typename VolumeConfigurationsT = Aws::Vector<TaskVolumeConfiguration>>
249 StartTaskRequest& WithVolumeConfigurations(VolumeConfigurationsT&& value) { SetVolumeConfigurations(std::forward<VolumeConfigurationsT>(value)); return *this;}
250 template<typename VolumeConfigurationsT = TaskVolumeConfiguration>
251 StartTaskRequest& AddVolumeConfigurations(VolumeConfigurationsT&& value) { m_volumeConfigurationsHasBeenSet = true; m_volumeConfigurations.emplace_back(std::forward<VolumeConfigurationsT>(value)); return *this; }
253 private:
254
255 Aws::String m_cluster;
256 bool m_clusterHasBeenSet = false;
257
258 Aws::Vector<Aws::String> m_containerInstances;
259 bool m_containerInstancesHasBeenSet = false;
260
261 bool m_enableECSManagedTags{false};
262 bool m_enableECSManagedTagsHasBeenSet = false;
263
264 bool m_enableExecuteCommand{false};
265 bool m_enableExecuteCommandHasBeenSet = false;
266
267 Aws::String m_group;
268 bool m_groupHasBeenSet = false;
269
270 NetworkConfiguration m_networkConfiguration;
271 bool m_networkConfigurationHasBeenSet = false;
272
273 TaskOverride m_overrides;
274 bool m_overridesHasBeenSet = false;
275
276 PropagateTags m_propagateTags{PropagateTags::NOT_SET};
277 bool m_propagateTagsHasBeenSet = false;
278
279 Aws::String m_referenceId;
280 bool m_referenceIdHasBeenSet = false;
281
282 Aws::String m_startedBy;
283 bool m_startedByHasBeenSet = false;
284
285 Aws::Vector<Tag> m_tags;
286 bool m_tagsHasBeenSet = false;
287
288 Aws::String m_taskDefinition;
289 bool m_taskDefinitionHasBeenSet = false;
290
291 Aws::Vector<TaskVolumeConfiguration> m_volumeConfigurations;
292 bool m_volumeConfigurationsHasBeenSet = false;
293 };
294
295} // namespace Model
296} // namespace ECS
297} // 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