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#include <aws/redshift-serverless/model/Tag.h>
18namespace RedshiftServerless {
45 m_baseCapacityHasBeenSet =
true;
46 m_baseCapacity = value;
74 template <
typename ConfigParametersT = Aws::Vector<ConfigParameter>>
76 m_configParametersHasBeenSet =
true;
77 m_configParameters = std::forward<ConfigParametersT>(value);
79 template <
typename ConfigParametersT = Aws::Vector<ConfigParameter>>
84 template <
typename ConfigParametersT = ConfigParameter>
86 m_configParametersHasBeenSet =
true;
87 m_configParameters.emplace_back(std::forward<ConfigParametersT>(value));
101 m_enhancedVpcRoutingHasBeenSet =
true;
102 m_enhancedVpcRouting = value;
118 m_extraComputeForAutomaticOptimizationHasBeenSet =
true;
119 m_extraComputeForAutomaticOptimization = value;
134 template <
typename IpAddressTypeT = Aws::String>
136 m_ipAddressTypeHasBeenSet =
true;
137 m_ipAddressType = std::forward<IpAddressTypeT>(value);
139 template <
typename IpAddressTypeT = Aws::String>
154 m_maxCapacityHasBeenSet =
true;
155 m_maxCapacity = value;
169 template <
typename NamespaceNameT = Aws::String>
171 m_namespaceNameHasBeenSet =
true;
172 m_namespaceName = std::forward<NamespaceNameT>(value);
174 template <
typename NamespaceNameT = Aws::String>
189 m_portHasBeenSet =
true;
205 template <
typename PricePerformanceTargetT = PerformanceTarget>
207 m_pricePerformanceTargetHasBeenSet =
true;
208 m_pricePerformanceTarget = std::forward<PricePerformanceTargetT>(value);
210 template <
typename PricePerformanceTargetT = PerformanceTarget>
225 m_publiclyAccessibleHasBeenSet =
true;
226 m_publiclyAccessible = value;
240 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
242 m_securityGroupIdsHasBeenSet =
true;
243 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
245 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
250 template <
typename SecurityGroupIdsT = Aws::String>
252 m_securityGroupIdsHasBeenSet =
true;
253 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
264 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
266 m_subnetIdsHasBeenSet =
true;
267 m_subnetIds = std::forward<SubnetIdsT>(value);
269 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
274 template <
typename SubnetIdsT = Aws::String>
276 m_subnetIdsHasBeenSet =
true;
277 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
288 template <
typename TagsT = Aws::Vector<Tag>>
290 m_tagsHasBeenSet =
true;
291 m_tags = std::forward<TagsT>(value);
293 template <
typename TagsT = Aws::Vector<Tag>>
295 SetTags(std::forward<TagsT>(value));
298 template <
typename TagsT = Tag>
300 m_tagsHasBeenSet =
true;
301 m_tags.emplace_back(std::forward<TagsT>(value));
314 template <
typename TrackNameT = Aws::String>
316 m_trackNameHasBeenSet =
true;
317 m_trackName = std::forward<TrackNameT>(value);
319 template <
typename TrackNameT = Aws::String>
332 template <
typename WorkgroupNameT = Aws::String>
334 m_workgroupNameHasBeenSet =
true;
335 m_workgroupName = std::forward<WorkgroupNameT>(value);
337 template <
typename WorkgroupNameT = Aws::String>
344 int m_baseCapacity{0};
348 bool m_enhancedVpcRouting{
false};
350 bool m_extraComputeForAutomaticOptimization{
false};
354 int m_maxCapacity{0};
360 PerformanceTarget m_pricePerformanceTarget;
362 bool m_publiclyAccessible{
false};
373 bool m_baseCapacityHasBeenSet =
false;
374 bool m_configParametersHasBeenSet =
false;
375 bool m_enhancedVpcRoutingHasBeenSet =
false;
376 bool m_extraComputeForAutomaticOptimizationHasBeenSet =
false;
377 bool m_ipAddressTypeHasBeenSet =
false;
378 bool m_maxCapacityHasBeenSet =
false;
379 bool m_namespaceNameHasBeenSet =
false;
380 bool m_portHasBeenSet =
false;
381 bool m_pricePerformanceTargetHasBeenSet =
false;
382 bool m_publiclyAccessibleHasBeenSet =
false;
383 bool m_securityGroupIdsHasBeenSet =
false;
384 bool m_subnetIdsHasBeenSet =
false;
385 bool m_tagsHasBeenSet =
false;
386 bool m_trackNameHasBeenSet =
false;
387 bool m_workgroupNameHasBeenSet =
false;
bool PubliclyAccessibleHasBeenSet() const
bool GetPubliclyAccessible() const
const Aws::String & GetIpAddressType() const
CreateWorkgroupRequest & WithTags(TagsT &&value)
bool TagsHasBeenSet() const
bool WorkgroupNameHasBeenSet() const
void SetNamespaceName(NamespaceNameT &&value)
const Aws::String & GetTrackName() const
void SetBaseCapacity(int value)
CreateWorkgroupRequest & WithNamespaceName(NamespaceNameT &&value)
CreateWorkgroupRequest & WithConfigParameters(ConfigParametersT &&value)
bool SecurityGroupIdsHasBeenSet() const
AWS_REDSHIFTSERVERLESS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetPricePerformanceTarget(PricePerformanceTargetT &&value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
bool ConfigParametersHasBeenSet() const
CreateWorkgroupRequest & WithMaxCapacity(int value)
void SetTags(TagsT &&value)
CreateWorkgroupRequest & AddSubnetIds(SubnetIdsT &&value)
CreateWorkgroupRequest & WithPricePerformanceTarget(PricePerformanceTargetT &&value)
bool PricePerformanceTargetHasBeenSet() const
bool SubnetIdsHasBeenSet() const
CreateWorkgroupRequest & WithBaseCapacity(int value)
const PerformanceTarget & GetPricePerformanceTarget() const
CreateWorkgroupRequest & WithWorkgroupName(WorkgroupNameT &&value)
AWS_REDSHIFTSERVERLESS_API Aws::String SerializePayload() const override
const Aws::Vector< ConfigParameter > & GetConfigParameters() const
AWS_REDSHIFTSERVERLESS_API CreateWorkgroupRequest()=default
bool NamespaceNameHasBeenSet() const
bool PortHasBeenSet() const
bool BaseCapacityHasBeenSet() const
bool GetEnhancedVpcRouting() const
void SetEnhancedVpcRouting(bool value)
CreateWorkgroupRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
bool ExtraComputeForAutomaticOptimizationHasBeenSet() const
void SetMaxCapacity(int value)
void SetSubnetIds(SubnetIdsT &&value)
void SetIpAddressType(IpAddressTypeT &&value)
virtual const char * GetServiceRequestName() const override
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
bool IpAddressTypeHasBeenSet() const
bool GetExtraComputeForAutomaticOptimization() const
CreateWorkgroupRequest & WithExtraComputeForAutomaticOptimization(bool value)
void SetConfigParameters(ConfigParametersT &&value)
const Aws::String & GetNamespaceName() const
CreateWorkgroupRequest & WithTrackName(TrackNameT &&value)
CreateWorkgroupRequest & AddTags(TagsT &&value)
CreateWorkgroupRequest & WithPubliclyAccessible(bool value)
void SetTrackName(TrackNameT &&value)
const Aws::Vector< Tag > & GetTags() const
CreateWorkgroupRequest & WithPort(int value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
int GetMaxCapacity() const
const Aws::String & GetWorkgroupName() const
bool TrackNameHasBeenSet() const
CreateWorkgroupRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
bool EnhancedVpcRoutingHasBeenSet() const
void SetPubliclyAccessible(bool value)
CreateWorkgroupRequest & WithEnhancedVpcRouting(bool value)
CreateWorkgroupRequest & WithIpAddressType(IpAddressTypeT &&value)
CreateWorkgroupRequest & WithSubnetIds(SubnetIdsT &&value)
void SetWorkgroupName(WorkgroupNameT &&value)
void SetExtraComputeForAutomaticOptimization(bool value)
bool MaxCapacityHasBeenSet() const
CreateWorkgroupRequest & AddConfigParameters(ConfigParametersT &&value)
int GetBaseCapacity() const
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