AWS SDK for C++

AWS SDK for C++ Version 1.11.786

Loading...
Searching...
No Matches
LaunchInstancesRequest.h
1
6#pragma once
7#include <aws/autoscaling/AutoScalingRequest.h>
8#include <aws/autoscaling/AutoScaling_EXPORTS.h>
9#include <aws/autoscaling/model/RetryStrategy.h>
10#include <aws/core/utils/UUID.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13
14#include <utility>
15
16namespace Aws {
17namespace AutoScaling {
18namespace Model {
19
23 public:
24 AWS_AUTOSCALING_API LaunchInstancesRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "LaunchInstances"; }
31
32 AWS_AUTOSCALING_API Aws::String SerializePayload() const override;
33
34 protected:
35 AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
36
37 public:
39
42 inline const Aws::String& GetAutoScalingGroupName() const { return m_autoScalingGroupName; }
43 inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; }
44 template <typename AutoScalingGroupNameT = Aws::String>
45 void SetAutoScalingGroupName(AutoScalingGroupNameT&& value) {
46 m_autoScalingGroupNameHasBeenSet = true;
47 m_autoScalingGroupName = std::forward<AutoScalingGroupNameT>(value);
48 }
49 template <typename AutoScalingGroupNameT = Aws::String>
50 LaunchInstancesRequest& WithAutoScalingGroupName(AutoScalingGroupNameT&& value) {
51 SetAutoScalingGroupName(std::forward<AutoScalingGroupNameT>(value));
52 return *this;
53 }
55
57
62 inline int GetRequestedCapacity() const { return m_requestedCapacity; }
63 inline bool RequestedCapacityHasBeenSet() const { return m_requestedCapacityHasBeenSet; }
64 inline void SetRequestedCapacity(int value) {
65 m_requestedCapacityHasBeenSet = true;
66 m_requestedCapacity = value;
67 }
70 return *this;
71 }
73
75
79 inline const Aws::String& GetClientToken() const { return m_clientToken; }
80 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
81 template <typename ClientTokenT = Aws::String>
82 void SetClientToken(ClientTokenT&& value) {
83 m_clientTokenHasBeenSet = true;
84 m_clientToken = std::forward<ClientTokenT>(value);
85 }
86 template <typename ClientTokenT = Aws::String>
87 LaunchInstancesRequest& WithClientToken(ClientTokenT&& value) {
88 SetClientToken(std::forward<ClientTokenT>(value));
89 return *this;
90 }
92
94
100 inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const { return m_availabilityZones; }
101 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; }
102 template <typename AvailabilityZonesT = Aws::Vector<Aws::String>>
103 void SetAvailabilityZones(AvailabilityZonesT&& value) {
104 m_availabilityZonesHasBeenSet = true;
105 m_availabilityZones = std::forward<AvailabilityZonesT>(value);
106 }
107 template <typename AvailabilityZonesT = Aws::Vector<Aws::String>>
108 LaunchInstancesRequest& WithAvailabilityZones(AvailabilityZonesT&& value) {
109 SetAvailabilityZones(std::forward<AvailabilityZonesT>(value));
110 return *this;
111 }
112 template <typename AvailabilityZonesT = Aws::String>
113 LaunchInstancesRequest& AddAvailabilityZones(AvailabilityZonesT&& value) {
114 m_availabilityZonesHasBeenSet = true;
115 m_availabilityZones.emplace_back(std::forward<AvailabilityZonesT>(value));
116 return *this;
117 }
119
121
127 inline const Aws::Vector<Aws::String>& GetAvailabilityZoneIds() const { return m_availabilityZoneIds; }
128 inline bool AvailabilityZoneIdsHasBeenSet() const { return m_availabilityZoneIdsHasBeenSet; }
129 template <typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
130 void SetAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
131 m_availabilityZoneIdsHasBeenSet = true;
132 m_availabilityZoneIds = std::forward<AvailabilityZoneIdsT>(value);
133 }
134 template <typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
135 LaunchInstancesRequest& WithAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
136 SetAvailabilityZoneIds(std::forward<AvailabilityZoneIdsT>(value));
137 return *this;
138 }
139 template <typename AvailabilityZoneIdsT = Aws::String>
140 LaunchInstancesRequest& AddAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
141 m_availabilityZoneIdsHasBeenSet = true;
142 m_availabilityZoneIds.emplace_back(std::forward<AvailabilityZoneIdsT>(value));
143 return *this;
144 }
146
148
154 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
155 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
156 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
157 void SetSubnetIds(SubnetIdsT&& value) {
158 m_subnetIdsHasBeenSet = true;
159 m_subnetIds = std::forward<SubnetIdsT>(value);
160 }
161 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
163 SetSubnetIds(std::forward<SubnetIdsT>(value));
164 return *this;
165 }
166 template <typename SubnetIdsT = Aws::String>
168 m_subnetIdsHasBeenSet = true;
169 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
170 return *this;
171 }
173
175
181 inline RetryStrategy GetRetryStrategy() const { return m_retryStrategy; }
182 inline bool RetryStrategyHasBeenSet() const { return m_retryStrategyHasBeenSet; }
183 inline void SetRetryStrategy(RetryStrategy value) {
184 m_retryStrategyHasBeenSet = true;
185 m_retryStrategy = value;
186 }
188 SetRetryStrategy(value);
189 return *this;
190 }
192 private:
193 Aws::String m_autoScalingGroupName;
194
195 int m_requestedCapacity{0};
196
198
199 Aws::Vector<Aws::String> m_availabilityZones;
200
201 Aws::Vector<Aws::String> m_availabilityZoneIds;
202
203 Aws::Vector<Aws::String> m_subnetIds;
204
205 RetryStrategy m_retryStrategy{RetryStrategy::NOT_SET};
206 bool m_autoScalingGroupNameHasBeenSet = false;
207 bool m_requestedCapacityHasBeenSet = false;
208 bool m_clientTokenHasBeenSet = true;
209 bool m_availabilityZonesHasBeenSet = false;
210 bool m_availabilityZoneIdsHasBeenSet = false;
211 bool m_subnetIdsHasBeenSet = false;
212 bool m_retryStrategyHasBeenSet = false;
213};
214
215} // namespace Model
216} // namespace AutoScaling
217} // namespace Aws
LaunchInstancesRequest & AddSubnetIds(SubnetIdsT &&value)
AWS_AUTOSCALING_API LaunchInstancesRequest()=default
LaunchInstancesRequest & WithRequestedCapacity(int value)
LaunchInstancesRequest & WithSubnetIds(SubnetIdsT &&value)
LaunchInstancesRequest & WithRetryStrategy(RetryStrategy value)
const Aws::Vector< Aws::String > & GetAvailabilityZoneIds() const
AWS_AUTOSCALING_API Aws::String SerializePayload() const override
LaunchInstancesRequest & WithAvailabilityZones(AvailabilityZonesT &&value)
LaunchInstancesRequest & AddAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
LaunchInstancesRequest & WithAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
void SetAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
const Aws::Vector< Aws::String > & GetSubnetIds() const
void SetAutoScalingGroupName(AutoScalingGroupNameT &&value)
AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
LaunchInstancesRequest & WithClientToken(ClientTokenT &&value)
LaunchInstancesRequest & AddAvailabilityZones(AvailabilityZonesT &&value)
LaunchInstancesRequest & WithAutoScalingGroupName(AutoScalingGroupNameT &&value)
virtual const char * GetServiceRequestName() const override
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector