AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreateWorkgroupRequest.h
1
6#pragma once
7#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
8#include <aws/redshift-serverless/RedshiftServerlessRequest.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/redshift-serverless/model/PerformanceTarget.h>
12#include <aws/redshift-serverless/model/ConfigParameter.h>
13#include <aws/redshift-serverless/model/Tag.h>
14#include <utility>
15
16namespace Aws
17{
18namespace RedshiftServerless
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_REDSHIFTSERVERLESS_API CreateWorkgroupRequest();
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateWorkgroup"; }
35
36 AWS_REDSHIFTSERVERLESS_API Aws::String SerializePayload() const override;
37
38 AWS_REDSHIFTSERVERLESS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
39
40
42
46 inline int GetBaseCapacity() const{ return m_baseCapacity; }
47 inline bool BaseCapacityHasBeenSet() const { return m_baseCapacityHasBeenSet; }
48 inline void SetBaseCapacity(int value) { m_baseCapacityHasBeenSet = true; m_baseCapacity = value; }
49 inline CreateWorkgroupRequest& WithBaseCapacity(int value) { SetBaseCapacity(value); return *this;}
51
53
64 inline const Aws::Vector<ConfigParameter>& GetConfigParameters() const{ return m_configParameters; }
65 inline bool ConfigParametersHasBeenSet() const { return m_configParametersHasBeenSet; }
66 inline void SetConfigParameters(const Aws::Vector<ConfigParameter>& value) { m_configParametersHasBeenSet = true; m_configParameters = value; }
67 inline void SetConfigParameters(Aws::Vector<ConfigParameter>&& value) { m_configParametersHasBeenSet = true; m_configParameters = std::move(value); }
70 inline CreateWorkgroupRequest& AddConfigParameters(const ConfigParameter& value) { m_configParametersHasBeenSet = true; m_configParameters.push_back(value); return *this; }
71 inline CreateWorkgroupRequest& AddConfigParameters(ConfigParameter&& value) { m_configParametersHasBeenSet = true; m_configParameters.push_back(std::move(value)); return *this; }
73
75
80 inline bool GetEnhancedVpcRouting() const{ return m_enhancedVpcRouting; }
81 inline bool EnhancedVpcRoutingHasBeenSet() const { return m_enhancedVpcRoutingHasBeenSet; }
82 inline void SetEnhancedVpcRouting(bool value) { m_enhancedVpcRoutingHasBeenSet = true; m_enhancedVpcRouting = value; }
83 inline CreateWorkgroupRequest& WithEnhancedVpcRouting(bool value) { SetEnhancedVpcRouting(value); return *this;}
85
87
91 inline const Aws::String& GetIpAddressType() const{ return m_ipAddressType; }
92 inline bool IpAddressTypeHasBeenSet() const { return m_ipAddressTypeHasBeenSet; }
93 inline void SetIpAddressType(const Aws::String& value) { m_ipAddressTypeHasBeenSet = true; m_ipAddressType = value; }
94 inline void SetIpAddressType(Aws::String&& value) { m_ipAddressTypeHasBeenSet = true; m_ipAddressType = std::move(value); }
95 inline void SetIpAddressType(const char* value) { m_ipAddressTypeHasBeenSet = true; m_ipAddressType.assign(value); }
96 inline CreateWorkgroupRequest& WithIpAddressType(const Aws::String& value) { SetIpAddressType(value); return *this;}
97 inline CreateWorkgroupRequest& WithIpAddressType(Aws::String&& value) { SetIpAddressType(std::move(value)); return *this;}
98 inline CreateWorkgroupRequest& WithIpAddressType(const char* value) { SetIpAddressType(value); return *this;}
100
102
106 inline int GetMaxCapacity() const{ return m_maxCapacity; }
107 inline bool MaxCapacityHasBeenSet() const { return m_maxCapacityHasBeenSet; }
108 inline void SetMaxCapacity(int value) { m_maxCapacityHasBeenSet = true; m_maxCapacity = value; }
109 inline CreateWorkgroupRequest& WithMaxCapacity(int value) { SetMaxCapacity(value); return *this;}
111
113
116 inline const Aws::String& GetNamespaceName() const{ return m_namespaceName; }
117 inline bool NamespaceNameHasBeenSet() const { return m_namespaceNameHasBeenSet; }
118 inline void SetNamespaceName(const Aws::String& value) { m_namespaceNameHasBeenSet = true; m_namespaceName = value; }
119 inline void SetNamespaceName(Aws::String&& value) { m_namespaceNameHasBeenSet = true; m_namespaceName = std::move(value); }
120 inline void SetNamespaceName(const char* value) { m_namespaceNameHasBeenSet = true; m_namespaceName.assign(value); }
121 inline CreateWorkgroupRequest& WithNamespaceName(const Aws::String& value) { SetNamespaceName(value); return *this;}
122 inline CreateWorkgroupRequest& WithNamespaceName(Aws::String&& value) { SetNamespaceName(std::move(value)); return *this;}
123 inline CreateWorkgroupRequest& WithNamespaceName(const char* value) { SetNamespaceName(value); return *this;}
125
127
131 inline int GetPort() const{ return m_port; }
132 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
133 inline void SetPort(int value) { m_portHasBeenSet = true; m_port = value; }
134 inline CreateWorkgroupRequest& WithPort(int value) { SetPort(value); return *this;}
136
138
142 inline const PerformanceTarget& GetPricePerformanceTarget() const{ return m_pricePerformanceTarget; }
143 inline bool PricePerformanceTargetHasBeenSet() const { return m_pricePerformanceTargetHasBeenSet; }
144 inline void SetPricePerformanceTarget(const PerformanceTarget& value) { m_pricePerformanceTargetHasBeenSet = true; m_pricePerformanceTarget = value; }
145 inline void SetPricePerformanceTarget(PerformanceTarget&& value) { m_pricePerformanceTargetHasBeenSet = true; m_pricePerformanceTarget = std::move(value); }
149
151
155 inline bool GetPubliclyAccessible() const{ return m_publiclyAccessible; }
156 inline bool PubliclyAccessibleHasBeenSet() const { return m_publiclyAccessibleHasBeenSet; }
157 inline void SetPubliclyAccessible(bool value) { m_publiclyAccessibleHasBeenSet = true; m_publiclyAccessible = value; }
158 inline CreateWorkgroupRequest& WithPubliclyAccessible(bool value) { SetPubliclyAccessible(value); return *this;}
160
162
165 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const{ return m_securityGroupIds; }
166 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
167 inline void SetSecurityGroupIds(const Aws::Vector<Aws::String>& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = value; }
168 inline void SetSecurityGroupIds(Aws::Vector<Aws::String>&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::move(value); }
171 inline CreateWorkgroupRequest& AddSecurityGroupIds(const Aws::String& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; }
172 inline CreateWorkgroupRequest& AddSecurityGroupIds(Aws::String&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(std::move(value)); return *this; }
173 inline CreateWorkgroupRequest& AddSecurityGroupIds(const char* value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; }
175
177
180 inline const Aws::Vector<Aws::String>& GetSubnetIds() const{ return m_subnetIds; }
181 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
182 inline void SetSubnetIds(const Aws::Vector<Aws::String>& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = value; }
183 inline void SetSubnetIds(Aws::Vector<Aws::String>&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::move(value); }
184 inline CreateWorkgroupRequest& WithSubnetIds(const Aws::Vector<Aws::String>& value) { SetSubnetIds(value); return *this;}
185 inline CreateWorkgroupRequest& WithSubnetIds(Aws::Vector<Aws::String>&& value) { SetSubnetIds(std::move(value)); return *this;}
186 inline CreateWorkgroupRequest& AddSubnetIds(const Aws::String& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; }
187 inline CreateWorkgroupRequest& AddSubnetIds(Aws::String&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(std::move(value)); return *this; }
188 inline CreateWorkgroupRequest& AddSubnetIds(const char* value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; }
190
192
195 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
196 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
197 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
198 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
199 inline CreateWorkgroupRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
200 inline CreateWorkgroupRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
201 inline CreateWorkgroupRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
202 inline CreateWorkgroupRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
204
206
209 inline const Aws::String& GetWorkgroupName() const{ return m_workgroupName; }
210 inline bool WorkgroupNameHasBeenSet() const { return m_workgroupNameHasBeenSet; }
211 inline void SetWorkgroupName(const Aws::String& value) { m_workgroupNameHasBeenSet = true; m_workgroupName = value; }
212 inline void SetWorkgroupName(Aws::String&& value) { m_workgroupNameHasBeenSet = true; m_workgroupName = std::move(value); }
213 inline void SetWorkgroupName(const char* value) { m_workgroupNameHasBeenSet = true; m_workgroupName.assign(value); }
214 inline CreateWorkgroupRequest& WithWorkgroupName(const Aws::String& value) { SetWorkgroupName(value); return *this;}
215 inline CreateWorkgroupRequest& WithWorkgroupName(Aws::String&& value) { SetWorkgroupName(std::move(value)); return *this;}
216 inline CreateWorkgroupRequest& WithWorkgroupName(const char* value) { SetWorkgroupName(value); return *this;}
218 private:
219
220 int m_baseCapacity;
221 bool m_baseCapacityHasBeenSet = false;
222
223 Aws::Vector<ConfigParameter> m_configParameters;
224 bool m_configParametersHasBeenSet = false;
225
226 bool m_enhancedVpcRouting;
227 bool m_enhancedVpcRoutingHasBeenSet = false;
228
229 Aws::String m_ipAddressType;
230 bool m_ipAddressTypeHasBeenSet = false;
231
232 int m_maxCapacity;
233 bool m_maxCapacityHasBeenSet = false;
234
235 Aws::String m_namespaceName;
236 bool m_namespaceNameHasBeenSet = false;
237
238 int m_port;
239 bool m_portHasBeenSet = false;
240
241 PerformanceTarget m_pricePerformanceTarget;
242 bool m_pricePerformanceTargetHasBeenSet = false;
243
244 bool m_publiclyAccessible;
245 bool m_publiclyAccessibleHasBeenSet = false;
246
247 Aws::Vector<Aws::String> m_securityGroupIds;
248 bool m_securityGroupIdsHasBeenSet = false;
249
250 Aws::Vector<Aws::String> m_subnetIds;
251 bool m_subnetIdsHasBeenSet = false;
252
253 Aws::Vector<Tag> m_tags;
254 bool m_tagsHasBeenSet = false;
255
256 Aws::String m_workgroupName;
257 bool m_workgroupNameHasBeenSet = false;
258 };
259
260} // namespace Model
261} // namespace RedshiftServerless
262} // namespace Aws
CreateWorkgroupRequest & WithIpAddressType(Aws::String &&value)
CreateWorkgroupRequest & WithSubnetIds(const Aws::Vector< Aws::String > &value)
CreateWorkgroupRequest & AddSecurityGroupIds(const Aws::String &value)
CreateWorkgroupRequest & AddSecurityGroupIds(const char *value)
CreateWorkgroupRequest & AddSubnetIds(Aws::String &&value)
CreateWorkgroupRequest & WithWorkgroupName(const Aws::String &value)
AWS_REDSHIFTSERVERLESS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::Vector< Aws::String > & GetSubnetIds() const
CreateWorkgroupRequest & WithConfigParameters(const Aws::Vector< ConfigParameter > &value)
CreateWorkgroupRequest & WithPricePerformanceTarget(PerformanceTarget &&value)
void SetSubnetIds(const Aws::Vector< Aws::String > &value)
CreateWorkgroupRequest & AddTags(const Tag &value)
CreateWorkgroupRequest & WithSubnetIds(Aws::Vector< Aws::String > &&value)
AWS_REDSHIFTSERVERLESS_API Aws::String SerializePayload() const override
const Aws::Vector< ConfigParameter > & GetConfigParameters() const
CreateWorkgroupRequest & AddConfigParameters(const ConfigParameter &value)
CreateWorkgroupRequest & WithNamespaceName(const Aws::String &value)
void SetSecurityGroupIds(Aws::Vector< Aws::String > &&value)
void SetSubnetIds(Aws::Vector< Aws::String > &&value)
CreateWorkgroupRequest & AddSubnetIds(const Aws::String &value)
virtual const char * GetServiceRequestName() const override
CreateWorkgroupRequest & WithTags(Aws::Vector< Tag > &&value)
CreateWorkgroupRequest & WithPricePerformanceTarget(const PerformanceTarget &value)
CreateWorkgroupRequest & WithSecurityGroupIds(Aws::Vector< Aws::String > &&value)
CreateWorkgroupRequest & AddSecurityGroupIds(Aws::String &&value)
CreateWorkgroupRequest & WithIpAddressType(const char *value)
CreateWorkgroupRequest & AddConfigParameters(ConfigParameter &&value)
CreateWorkgroupRequest & AddSubnetIds(const char *value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
void SetConfigParameters(const Aws::Vector< ConfigParameter > &value)
CreateWorkgroupRequest & WithWorkgroupName(const char *value)
void SetSecurityGroupIds(const Aws::Vector< Aws::String > &value)
CreateWorkgroupRequest & WithSecurityGroupIds(const Aws::Vector< Aws::String > &value)
CreateWorkgroupRequest & WithNamespaceName(Aws::String &&value)
CreateWorkgroupRequest & WithTags(const Aws::Vector< Tag > &value)
CreateWorkgroupRequest & WithWorkgroupName(Aws::String &&value)
CreateWorkgroupRequest & WithEnhancedVpcRouting(bool value)
CreateWorkgroupRequest & WithIpAddressType(const Aws::String &value)
void SetPricePerformanceTarget(const PerformanceTarget &value)
CreateWorkgroupRequest & WithNamespaceName(const char *value)
CreateWorkgroupRequest & WithConfigParameters(Aws::Vector< ConfigParameter > &&value)
void SetConfigParameters(Aws::Vector< ConfigParameter > &&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