7#include <aws/redshift/Redshift_EXPORTS.h>
8#include <aws/redshift/RedshiftRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/redshift/model/UsageLimitFeatureType.h>
11#include <aws/redshift/model/UsageLimitLimitType.h>
12#include <aws/redshift/model/UsageLimitPeriod.h>
13#include <aws/redshift/model/UsageLimitBreachAction.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/redshift/model/Tag.h>
51 template<
typename ClusterIdentifierT = Aws::String>
52 void SetClusterIdentifier(ClusterIdentifierT&& value) { m_clusterIdentifierHasBeenSet =
true; m_clusterIdentifier = std::forward<ClusterIdentifierT>(value); }
53 template<
typename ClusterIdentifierT = Aws::String>
88 inline long long GetAmount()
const {
return m_amount; }
90 inline void SetAmount(
long long value) { m_amountHasBeenSet =
true; m_amount = value; }
122 template<
typename TagsT = Aws::Vector<Tag>>
123 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
124 template<
typename TagsT = Aws::Vector<Tag>>
126 template<
typename TagsT = Tag>
132 bool m_clusterIdentifierHasBeenSet =
false;
135 bool m_featureTypeHasBeenSet =
false;
138 bool m_limitTypeHasBeenSet =
false;
140 long long m_amount{0};
141 bool m_amountHasBeenSet =
false;
144 bool m_periodHasBeenSet =
false;
147 bool m_breachActionHasBeenSet =
false;
150 bool m_tagsHasBeenSet =
false;
bool AmountHasBeenSet() const
CreateUsageLimitRequest & WithBreachAction(UsageLimitBreachAction value)
CreateUsageLimitRequest & AddTags(TagsT &&value)
CreateUsageLimitRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
void SetPeriod(UsageLimitPeriod value)
CreateUsageLimitRequest & WithLimitType(UsageLimitLimitType value)
const Aws::String & GetClusterIdentifier() const
const Aws::Vector< Tag > & GetTags() const
UsageLimitFeatureType GetFeatureType() const
void SetTags(TagsT &&value)
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
AWS_REDSHIFT_API CreateUsageLimitRequest()=default
CreateUsageLimitRequest & WithPeriod(UsageLimitPeriod value)
bool FeatureTypeHasBeenSet() const
CreateUsageLimitRequest & WithAmount(long long value)
bool ClusterIdentifierHasBeenSet() const
virtual const char * GetServiceRequestName() const override
AWS_REDSHIFT_API Aws::String SerializePayload() const override
long long GetAmount() const
bool TagsHasBeenSet() const
void SetFeatureType(UsageLimitFeatureType value)
CreateUsageLimitRequest & WithTags(TagsT &&value)
void SetLimitType(UsageLimitLimitType value)
void SetClusterIdentifier(ClusterIdentifierT &&value)
bool LimitTypeHasBeenSet() const
UsageLimitBreachAction GetBreachAction() const
bool BreachActionHasBeenSet() const
CreateUsageLimitRequest & WithFeatureType(UsageLimitFeatureType value)
void SetBreachAction(UsageLimitBreachAction value)
UsageLimitLimitType GetLimitType() const
UsageLimitPeriod GetPeriod() const
void SetAmount(long long value)
bool PeriodHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector