AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
EcsParameters.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/scheduler/Scheduler_EXPORTS.h>
11#include <aws/scheduler/model/CapacityProviderStrategyItem.h>
12#include <aws/scheduler/model/LaunchType.h>
13#include <aws/scheduler/model/NetworkConfiguration.h>
14#include <aws/scheduler/model/PlacementConstraint.h>
15#include <aws/scheduler/model/PlacementStrategy.h>
16#include <aws/scheduler/model/PropagateTags.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Json {
23class JsonValue;
24class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace Scheduler {
28namespace Model {
29
38 public:
39 AWS_SCHEDULER_API EcsParameters() = default;
40 AWS_SCHEDULER_API EcsParameters(Aws::Utils::Json::JsonView jsonValue);
41 AWS_SCHEDULER_API EcsParameters& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_SCHEDULER_API Aws::Utils::Json::JsonValue Jsonize() const;
43
45
48 inline const Aws::Vector<CapacityProviderStrategyItem>& GetCapacityProviderStrategy() const { return m_capacityProviderStrategy; }
49 inline bool CapacityProviderStrategyHasBeenSet() const { return m_capacityProviderStrategyHasBeenSet; }
50 template <typename CapacityProviderStrategyT = Aws::Vector<CapacityProviderStrategyItem>>
51 void SetCapacityProviderStrategy(CapacityProviderStrategyT&& value) {
52 m_capacityProviderStrategyHasBeenSet = true;
53 m_capacityProviderStrategy = std::forward<CapacityProviderStrategyT>(value);
54 }
55 template <typename CapacityProviderStrategyT = Aws::Vector<CapacityProviderStrategyItem>>
56 EcsParameters& WithCapacityProviderStrategy(CapacityProviderStrategyT&& value) {
57 SetCapacityProviderStrategy(std::forward<CapacityProviderStrategyT>(value));
58 return *this;
59 }
60 template <typename CapacityProviderStrategyT = CapacityProviderStrategyItem>
61 EcsParameters& AddCapacityProviderStrategy(CapacityProviderStrategyT&& value) {
62 m_capacityProviderStrategyHasBeenSet = true;
63 m_capacityProviderStrategy.emplace_back(std::forward<CapacityProviderStrategyT>(value));
64 return *this;
65 }
67
69
75 inline bool GetEnableECSManagedTags() const { return m_enableECSManagedTags; }
76 inline bool EnableECSManagedTagsHasBeenSet() const { return m_enableECSManagedTagsHasBeenSet; }
77 inline void SetEnableECSManagedTags(bool value) {
78 m_enableECSManagedTagsHasBeenSet = true;
79 m_enableECSManagedTags = value;
80 }
83 return *this;
84 }
86
88
93 inline bool GetEnableExecuteCommand() const { return m_enableExecuteCommand; }
94 inline bool EnableExecuteCommandHasBeenSet() const { return m_enableExecuteCommandHasBeenSet; }
95 inline void SetEnableExecuteCommand(bool value) {
96 m_enableExecuteCommandHasBeenSet = true;
97 m_enableExecuteCommand = value;
98 }
101 return *this;
102 }
104
106
110 inline const Aws::String& GetGroup() const { return m_group; }
111 inline bool GroupHasBeenSet() const { return m_groupHasBeenSet; }
112 template <typename GroupT = Aws::String>
113 void SetGroup(GroupT&& value) {
114 m_groupHasBeenSet = true;
115 m_group = std::forward<GroupT>(value);
116 }
117 template <typename GroupT = Aws::String>
118 EcsParameters& WithGroup(GroupT&& value) {
119 SetGroup(std::forward<GroupT>(value));
120 return *this;
121 }
123
125
133 inline LaunchType GetLaunchType() const { return m_launchType; }
134 inline bool LaunchTypeHasBeenSet() const { return m_launchTypeHasBeenSet; }
135 inline void SetLaunchType(LaunchType value) {
136 m_launchTypeHasBeenSet = true;
137 m_launchType = value;
138 }
140 SetLaunchType(value);
141 return *this;
142 }
144
146
149 inline const NetworkConfiguration& GetNetworkConfiguration() const { return m_networkConfiguration; }
150 inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; }
151 template <typename NetworkConfigurationT = NetworkConfiguration>
152 void SetNetworkConfiguration(NetworkConfigurationT&& value) {
153 m_networkConfigurationHasBeenSet = true;
154 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
155 }
156 template <typename NetworkConfigurationT = NetworkConfiguration>
157 EcsParameters& WithNetworkConfiguration(NetworkConfigurationT&& value) {
158 SetNetworkConfiguration(std::forward<NetworkConfigurationT>(value));
159 return *this;
160 }
162
164
169 inline const Aws::Vector<PlacementConstraint>& GetPlacementConstraints() const { return m_placementConstraints; }
170 inline bool PlacementConstraintsHasBeenSet() const { return m_placementConstraintsHasBeenSet; }
171 template <typename PlacementConstraintsT = Aws::Vector<PlacementConstraint>>
172 void SetPlacementConstraints(PlacementConstraintsT&& value) {
173 m_placementConstraintsHasBeenSet = true;
174 m_placementConstraints = std::forward<PlacementConstraintsT>(value);
175 }
176 template <typename PlacementConstraintsT = Aws::Vector<PlacementConstraint>>
177 EcsParameters& WithPlacementConstraints(PlacementConstraintsT&& value) {
178 SetPlacementConstraints(std::forward<PlacementConstraintsT>(value));
179 return *this;
180 }
181 template <typename PlacementConstraintsT = PlacementConstraint>
182 EcsParameters& AddPlacementConstraints(PlacementConstraintsT&& value) {
183 m_placementConstraintsHasBeenSet = true;
184 m_placementConstraints.emplace_back(std::forward<PlacementConstraintsT>(value));
185 return *this;
186 }
188
190
193 inline const Aws::Vector<PlacementStrategy>& GetPlacementStrategy() const { return m_placementStrategy; }
194 inline bool PlacementStrategyHasBeenSet() const { return m_placementStrategyHasBeenSet; }
195 template <typename PlacementStrategyT = Aws::Vector<PlacementStrategy>>
196 void SetPlacementStrategy(PlacementStrategyT&& value) {
197 m_placementStrategyHasBeenSet = true;
198 m_placementStrategy = std::forward<PlacementStrategyT>(value);
199 }
200 template <typename PlacementStrategyT = Aws::Vector<PlacementStrategy>>
201 EcsParameters& WithPlacementStrategy(PlacementStrategyT&& value) {
202 SetPlacementStrategy(std::forward<PlacementStrategyT>(value));
203 return *this;
204 }
205 template <typename PlacementStrategyT = PlacementStrategy>
206 EcsParameters& AddPlacementStrategy(PlacementStrategyT&& value) {
207 m_placementStrategyHasBeenSet = true;
208 m_placementStrategy.emplace_back(std::forward<PlacementStrategyT>(value));
209 return *this;
210 }
212
214
218 inline const Aws::String& GetPlatformVersion() const { return m_platformVersion; }
219 inline bool PlatformVersionHasBeenSet() const { return m_platformVersionHasBeenSet; }
220 template <typename PlatformVersionT = Aws::String>
221 void SetPlatformVersion(PlatformVersionT&& value) {
222 m_platformVersionHasBeenSet = true;
223 m_platformVersion = std::forward<PlatformVersionT>(value);
224 }
225 template <typename PlatformVersionT = Aws::String>
226 EcsParameters& WithPlatformVersion(PlatformVersionT&& value) {
227 SetPlatformVersion(std::forward<PlatformVersionT>(value));
228 return *this;
229 }
231
233
241 inline PropagateTags GetPropagateTags() const { return m_propagateTags; }
242 inline bool PropagateTagsHasBeenSet() const { return m_propagateTagsHasBeenSet; }
243 inline void SetPropagateTags(PropagateTags value) {
244 m_propagateTagsHasBeenSet = true;
245 m_propagateTags = value;
246 }
248 SetPropagateTags(value);
249 return *this;
250 }
252
254
257 inline const Aws::String& GetReferenceId() const { return m_referenceId; }
258 inline bool ReferenceIdHasBeenSet() const { return m_referenceIdHasBeenSet; }
259 template <typename ReferenceIdT = Aws::String>
260 void SetReferenceId(ReferenceIdT&& value) {
261 m_referenceIdHasBeenSet = true;
262 m_referenceId = std::forward<ReferenceIdT>(value);
263 }
264 template <typename ReferenceIdT = Aws::String>
265 EcsParameters& WithReferenceId(ReferenceIdT&& value) {
266 SetReferenceId(std::forward<ReferenceIdT>(value));
267 return *this;
268 }
270
272
279 inline const Aws::Vector<Aws::Map<Aws::String, Aws::String>>& GetTags() const { return m_tags; }
280 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
281 template <typename TagsT = Aws::Vector<Aws::Map<Aws::String, Aws::String>>>
282 void SetTags(TagsT&& value) {
283 m_tagsHasBeenSet = true;
284 m_tags = std::forward<TagsT>(value);
285 }
286 template <typename TagsT = Aws::Vector<Aws::Map<Aws::String, Aws::String>>>
287 EcsParameters& WithTags(TagsT&& value) {
288 SetTags(std::forward<TagsT>(value));
289 return *this;
290 }
291 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
292 EcsParameters& AddTags(TagsT&& value) {
293 m_tagsHasBeenSet = true;
294 m_tags.emplace_back(std::forward<TagsT>(value));
295 return *this;
296 }
298
300
304 inline int GetTaskCount() const { return m_taskCount; }
305 inline bool TaskCountHasBeenSet() const { return m_taskCountHasBeenSet; }
306 inline void SetTaskCount(int value) {
307 m_taskCountHasBeenSet = true;
308 m_taskCount = value;
309 }
310 inline EcsParameters& WithTaskCount(int value) {
311 SetTaskCount(value);
312 return *this;
313 }
315
317
321 inline const Aws::String& GetTaskDefinitionArn() const { return m_taskDefinitionArn; }
322 inline bool TaskDefinitionArnHasBeenSet() const { return m_taskDefinitionArnHasBeenSet; }
323 template <typename TaskDefinitionArnT = Aws::String>
324 void SetTaskDefinitionArn(TaskDefinitionArnT&& value) {
325 m_taskDefinitionArnHasBeenSet = true;
326 m_taskDefinitionArn = std::forward<TaskDefinitionArnT>(value);
327 }
328 template <typename TaskDefinitionArnT = Aws::String>
329 EcsParameters& WithTaskDefinitionArn(TaskDefinitionArnT&& value) {
330 SetTaskDefinitionArn(std::forward<TaskDefinitionArnT>(value));
331 return *this;
332 }
334 private:
335 Aws::Vector<CapacityProviderStrategyItem> m_capacityProviderStrategy;
336
337 bool m_enableECSManagedTags{false};
338
339 bool m_enableExecuteCommand{false};
340
341 Aws::String m_group;
342
343 LaunchType m_launchType{LaunchType::NOT_SET};
344
345 NetworkConfiguration m_networkConfiguration;
346
347 Aws::Vector<PlacementConstraint> m_placementConstraints;
348
349 Aws::Vector<PlacementStrategy> m_placementStrategy;
350
351 Aws::String m_platformVersion;
352
353 PropagateTags m_propagateTags{PropagateTags::NOT_SET};
354
355 Aws::String m_referenceId;
356
358
359 int m_taskCount{0};
360
361 Aws::String m_taskDefinitionArn;
362 bool m_capacityProviderStrategyHasBeenSet = false;
363 bool m_enableECSManagedTagsHasBeenSet = false;
364 bool m_enableExecuteCommandHasBeenSet = false;
365 bool m_groupHasBeenSet = false;
366 bool m_launchTypeHasBeenSet = false;
367 bool m_networkConfigurationHasBeenSet = false;
368 bool m_placementConstraintsHasBeenSet = false;
369 bool m_placementStrategyHasBeenSet = false;
370 bool m_platformVersionHasBeenSet = false;
371 bool m_propagateTagsHasBeenSet = false;
372 bool m_referenceIdHasBeenSet = false;
373 bool m_tagsHasBeenSet = false;
374 bool m_taskCountHasBeenSet = false;
375 bool m_taskDefinitionArnHasBeenSet = false;
376};
377
378} // namespace Model
379} // namespace Scheduler
380} // namespace Aws
PropagateTags GetPropagateTags() const
EcsParameters & WithReferenceId(ReferenceIdT &&value)
AWS_SCHEDULER_API EcsParameters(Aws::Utils::Json::JsonView jsonValue)
void SetPlatformVersion(PlatformVersionT &&value)
EcsParameters & WithEnableExecuteCommand(bool value)
void SetTaskDefinitionArn(TaskDefinitionArnT &&value)
void SetReferenceId(ReferenceIdT &&value)
EcsParameters & WithPlacementConstraints(PlacementConstraintsT &&value)
EcsParameters & WithLaunchType(LaunchType value)
EcsParameters & WithTags(TagsT &&value)
const Aws::Vector< PlacementStrategy > & GetPlacementStrategy() const
void SetCapacityProviderStrategy(CapacityProviderStrategyT &&value)
void SetNetworkConfiguration(NetworkConfigurationT &&value)
EcsParameters & AddPlacementStrategy(PlacementStrategyT &&value)
EcsParameters & WithGroup(GroupT &&value)
void SetPlacementStrategy(PlacementStrategyT &&value)
EcsParameters & AddCapacityProviderStrategy(CapacityProviderStrategyT &&value)
const Aws::Vector< CapacityProviderStrategyItem > & GetCapacityProviderStrategy() const
EcsParameters & AddTags(TagsT &&value)
EcsParameters & WithNetworkConfiguration(NetworkConfigurationT &&value)
const Aws::String & GetTaskDefinitionArn() const
const Aws::String & GetGroup() const
EcsParameters & WithTaskDefinitionArn(TaskDefinitionArnT &&value)
void SetLaunchType(LaunchType value)
EcsParameters & AddPlacementConstraints(PlacementConstraintsT &&value)
EcsParameters & WithPlatformVersion(PlatformVersionT &&value)
AWS_SCHEDULER_API Aws::Utils::Json::JsonValue Jsonize() const
EcsParameters & WithCapacityProviderStrategy(CapacityProviderStrategyT &&value)
const Aws::String & GetReferenceId() const
const Aws::Vector< PlacementConstraint > & GetPlacementConstraints() const
EcsParameters & WithPropagateTags(PropagateTags value)
const Aws::String & GetPlatformVersion() const
EcsParameters & WithEnableECSManagedTags(bool value)
const NetworkConfiguration & GetNetworkConfiguration() const
AWS_SCHEDULER_API EcsParameters & operator=(Aws::Utils::Json::JsonView jsonValue)
EcsParameters & WithTaskCount(int value)
EcsParameters & WithPlacementStrategy(PlacementStrategyT &&value)
void SetPlacementConstraints(PlacementConstraintsT &&value)
const Aws::Vector< Aws::Map< Aws::String, Aws::String > > & GetTags() const
void SetPropagateTags(PropagateTags value)
AWS_SCHEDULER_API EcsParameters()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue