AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
UpdateWorkgroupRequest.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/redshift-serverless/RedshiftServerlessRequest.h>
10#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
11#include <aws/redshift-serverless/model/ConfigParameter.h>
12#include <aws/redshift-serverless/model/PerformanceTarget.h>
13
14#include <utility>
15
16namespace Aws {
17namespace RedshiftServerless {
18namespace Model {
19
23 public:
24 AWS_REDSHIFTSERVERLESS_API UpdateWorkgroupRequest() = 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 "UpdateWorkgroup"; }
31
32 AWS_REDSHIFTSERVERLESS_API Aws::String SerializePayload() const override;
33
34 AWS_REDSHIFTSERVERLESS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
35
37
40 inline int GetBaseCapacity() const { return m_baseCapacity; }
41 inline bool BaseCapacityHasBeenSet() const { return m_baseCapacityHasBeenSet; }
42 inline void SetBaseCapacity(int value) {
43 m_baseCapacityHasBeenSet = true;
44 m_baseCapacity = value;
45 }
47 SetBaseCapacity(value);
48 return *this;
49 }
51
53
64 inline const Aws::Vector<ConfigParameter>& GetConfigParameters() const { return m_configParameters; }
65 inline bool ConfigParametersHasBeenSet() const { return m_configParametersHasBeenSet; }
66 template <typename ConfigParametersT = Aws::Vector<ConfigParameter>>
67 void SetConfigParameters(ConfigParametersT&& value) {
68 m_configParametersHasBeenSet = true;
69 m_configParameters = std::forward<ConfigParametersT>(value);
70 }
71 template <typename ConfigParametersT = Aws::Vector<ConfigParameter>>
72 UpdateWorkgroupRequest& WithConfigParameters(ConfigParametersT&& value) {
73 SetConfigParameters(std::forward<ConfigParametersT>(value));
74 return *this;
75 }
76 template <typename ConfigParametersT = ConfigParameter>
77 UpdateWorkgroupRequest& AddConfigParameters(ConfigParametersT&& value) {
78 m_configParametersHasBeenSet = true;
79 m_configParameters.emplace_back(std::forward<ConfigParametersT>(value));
80 return *this;
81 }
83
85
90 inline bool GetEnhancedVpcRouting() const { return m_enhancedVpcRouting; }
91 inline bool EnhancedVpcRoutingHasBeenSet() const { return m_enhancedVpcRoutingHasBeenSet; }
92 inline void SetEnhancedVpcRouting(bool value) {
93 m_enhancedVpcRoutingHasBeenSet = true;
94 m_enhancedVpcRouting = value;
95 }
98 return *this;
99 }
101
103
107 inline const Aws::String& GetIpAddressType() const { return m_ipAddressType; }
108 inline bool IpAddressTypeHasBeenSet() const { return m_ipAddressTypeHasBeenSet; }
109 template <typename IpAddressTypeT = Aws::String>
110 void SetIpAddressType(IpAddressTypeT&& value) {
111 m_ipAddressTypeHasBeenSet = true;
112 m_ipAddressType = std::forward<IpAddressTypeT>(value);
113 }
114 template <typename IpAddressTypeT = Aws::String>
115 UpdateWorkgroupRequest& WithIpAddressType(IpAddressTypeT&& value) {
116 SetIpAddressType(std::forward<IpAddressTypeT>(value));
117 return *this;
118 }
120
122
126 inline int GetMaxCapacity() const { return m_maxCapacity; }
127 inline bool MaxCapacityHasBeenSet() const { return m_maxCapacityHasBeenSet; }
128 inline void SetMaxCapacity(int value) {
129 m_maxCapacityHasBeenSet = true;
130 m_maxCapacity = value;
131 }
133 SetMaxCapacity(value);
134 return *this;
135 }
137
139
143 inline int GetPort() const { return m_port; }
144 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
145 inline void SetPort(int value) {
146 m_portHasBeenSet = true;
147 m_port = value;
148 }
149 inline UpdateWorkgroupRequest& WithPort(int value) {
150 SetPort(value);
151 return *this;
152 }
154
156
160 inline const PerformanceTarget& GetPricePerformanceTarget() const { return m_pricePerformanceTarget; }
161 inline bool PricePerformanceTargetHasBeenSet() const { return m_pricePerformanceTargetHasBeenSet; }
162 template <typename PricePerformanceTargetT = PerformanceTarget>
163 void SetPricePerformanceTarget(PricePerformanceTargetT&& value) {
164 m_pricePerformanceTargetHasBeenSet = true;
165 m_pricePerformanceTarget = std::forward<PricePerformanceTargetT>(value);
166 }
167 template <typename PricePerformanceTargetT = PerformanceTarget>
168 UpdateWorkgroupRequest& WithPricePerformanceTarget(PricePerformanceTargetT&& value) {
169 SetPricePerformanceTarget(std::forward<PricePerformanceTargetT>(value));
170 return *this;
171 }
173
175
179 inline bool GetPubliclyAccessible() const { return m_publiclyAccessible; }
180 inline bool PubliclyAccessibleHasBeenSet() const { return m_publiclyAccessibleHasBeenSet; }
181 inline void SetPubliclyAccessible(bool value) {
182 m_publiclyAccessibleHasBeenSet = true;
183 m_publiclyAccessible = value;
184 }
187 return *this;
188 }
190
192
195 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
196 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
197 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
198 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
199 m_securityGroupIdsHasBeenSet = true;
200 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
201 }
202 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
203 UpdateWorkgroupRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) {
204 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
205 return *this;
206 }
207 template <typename SecurityGroupIdsT = Aws::String>
208 UpdateWorkgroupRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) {
209 m_securityGroupIdsHasBeenSet = true;
210 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
211 return *this;
212 }
214
216
219 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
220 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
221 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
222 void SetSubnetIds(SubnetIdsT&& value) {
223 m_subnetIdsHasBeenSet = true;
224 m_subnetIds = std::forward<SubnetIdsT>(value);
225 }
226 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
228 SetSubnetIds(std::forward<SubnetIdsT>(value));
229 return *this;
230 }
231 template <typename SubnetIdsT = Aws::String>
233 m_subnetIdsHasBeenSet = true;
234 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
235 return *this;
236 }
238
240
245 inline const Aws::String& GetTrackName() const { return m_trackName; }
246 inline bool TrackNameHasBeenSet() const { return m_trackNameHasBeenSet; }
247 template <typename TrackNameT = Aws::String>
248 void SetTrackName(TrackNameT&& value) {
249 m_trackNameHasBeenSet = true;
250 m_trackName = std::forward<TrackNameT>(value);
251 }
252 template <typename TrackNameT = Aws::String>
254 SetTrackName(std::forward<TrackNameT>(value));
255 return *this;
256 }
258
260
264 inline const Aws::String& GetWorkgroupName() const { return m_workgroupName; }
265 inline bool WorkgroupNameHasBeenSet() const { return m_workgroupNameHasBeenSet; }
266 template <typename WorkgroupNameT = Aws::String>
267 void SetWorkgroupName(WorkgroupNameT&& value) {
268 m_workgroupNameHasBeenSet = true;
269 m_workgroupName = std::forward<WorkgroupNameT>(value);
270 }
271 template <typename WorkgroupNameT = Aws::String>
272 UpdateWorkgroupRequest& WithWorkgroupName(WorkgroupNameT&& value) {
273 SetWorkgroupName(std::forward<WorkgroupNameT>(value));
274 return *this;
275 }
277 private:
278 int m_baseCapacity{0};
279
280 Aws::Vector<ConfigParameter> m_configParameters;
281
282 bool m_enhancedVpcRouting{false};
283
284 Aws::String m_ipAddressType;
285
286 int m_maxCapacity{0};
287
288 int m_port{0};
289
290 PerformanceTarget m_pricePerformanceTarget;
291
292 bool m_publiclyAccessible{false};
293
294 Aws::Vector<Aws::String> m_securityGroupIds;
295
296 Aws::Vector<Aws::String> m_subnetIds;
297
298 Aws::String m_trackName;
299
300 Aws::String m_workgroupName;
301 bool m_baseCapacityHasBeenSet = false;
302 bool m_configParametersHasBeenSet = false;
303 bool m_enhancedVpcRoutingHasBeenSet = false;
304 bool m_ipAddressTypeHasBeenSet = false;
305 bool m_maxCapacityHasBeenSet = false;
306 bool m_portHasBeenSet = false;
307 bool m_pricePerformanceTargetHasBeenSet = false;
308 bool m_publiclyAccessibleHasBeenSet = false;
309 bool m_securityGroupIdsHasBeenSet = false;
310 bool m_subnetIdsHasBeenSet = false;
311 bool m_trackNameHasBeenSet = false;
312 bool m_workgroupNameHasBeenSet = false;
313};
314
315} // namespace Model
316} // namespace RedshiftServerless
317} // namespace Aws
AWS_REDSHIFTSERVERLESS_API UpdateWorkgroupRequest()=default
UpdateWorkgroupRequest & AddSubnetIds(SubnetIdsT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
UpdateWorkgroupRequest & AddConfigParameters(ConfigParametersT &&value)
UpdateWorkgroupRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
UpdateWorkgroupRequest & WithPricePerformanceTarget(PricePerformanceTargetT &&value)
UpdateWorkgroupRequest & WithTrackName(TrackNameT &&value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
const Aws::Vector< ConfigParameter > & GetConfigParameters() const
UpdateWorkgroupRequest & WithEnhancedVpcRouting(bool value)
UpdateWorkgroupRequest & WithWorkgroupName(WorkgroupNameT &&value)
AWS_REDSHIFTSERVERLESS_API Aws::String SerializePayload() const override
UpdateWorkgroupRequest & WithConfigParameters(ConfigParametersT &&value)
UpdateWorkgroupRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
virtual const char * GetServiceRequestName() const override
UpdateWorkgroupRequest & WithSubnetIds(SubnetIdsT &&value)
UpdateWorkgroupRequest & WithIpAddressType(IpAddressTypeT &&value)
AWS_REDSHIFTSERVERLESS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetPricePerformanceTarget(PricePerformanceTargetT &&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