7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/redshift/Redshift_EXPORTS.h>
10#include <aws/redshift/model/ResponseMetadata.h>
11#include <aws/redshift/model/Tag.h>
12#include <aws/redshift/model/UsageLimitBreachAction.h>
13#include <aws/redshift/model/UsageLimitFeatureType.h>
14#include <aws/redshift/model/UsageLimitLimitType.h>
15#include <aws/redshift/model/UsageLimitPeriod.h>
20template <
typename RESULT_TYPE>
21class AmazonWebServiceResult;
46 template <
typename UsageLimitIdT = Aws::String>
48 m_usageLimitIdHasBeenSet =
true;
49 m_usageLimitId = std::forward<UsageLimitIdT>(value);
51 template <
typename UsageLimitIdT = Aws::String>
63 template <
typename ClusterIdentifierT = Aws::String>
65 m_clusterIdentifierHasBeenSet =
true;
66 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
68 template <
typename ClusterIdentifierT = Aws::String>
81 m_featureTypeHasBeenSet =
true;
82 m_featureType = value;
97 m_limitTypeHasBeenSet =
true;
113 m_amountHasBeenSet =
true;
129 m_periodHasBeenSet =
true;
148 m_breachActionHasBeenSet =
true;
149 m_breachAction = value;
162 template <
typename TagsT = Aws::Vector<Tag>>
164 m_tagsHasBeenSet =
true;
165 m_tags = std::forward<TagsT>(value);
167 template <
typename TagsT = Aws::Vector<Tag>>
169 SetTags(std::forward<TagsT>(value));
172 template <
typename TagsT = Tag>
174 m_tagsHasBeenSet =
true;
175 m_tags.emplace_back(std::forward<TagsT>(value));
183 template <
typename ResponseMetadataT = ResponseMetadata>
185 m_responseMetadataHasBeenSet =
true;
186 m_responseMetadata = std::forward<ResponseMetadataT>(value);
188 template <
typename ResponseMetadataT = ResponseMetadata>
203 long long m_amount{0};
211 ResponseMetadata m_responseMetadata;
212 bool m_usageLimitIdHasBeenSet =
false;
213 bool m_clusterIdentifierHasBeenSet =
false;
214 bool m_featureTypeHasBeenSet =
false;
215 bool m_limitTypeHasBeenSet =
false;
216 bool m_amountHasBeenSet =
false;
217 bool m_periodHasBeenSet =
false;
218 bool m_breachActionHasBeenSet =
false;
219 bool m_tagsHasBeenSet =
false;
220 bool m_responseMetadataHasBeenSet =
false;
void SetAmount(long long value)
void SetClusterIdentifier(ClusterIdentifierT &&value)
void SetUsageLimitId(UsageLimitIdT &&value)
ModifyUsageLimitResult & WithBreachAction(UsageLimitBreachAction value)
ModifyUsageLimitResult & WithPeriod(UsageLimitPeriod value)
void SetLimitType(UsageLimitLimitType value)
AWS_REDSHIFT_API ModifyUsageLimitResult()=default
UsageLimitPeriod GetPeriod() const
const ResponseMetadata & GetResponseMetadata() const
ModifyUsageLimitResult & WithTags(TagsT &&value)
UsageLimitBreachAction GetBreachAction() const
const Aws::String & GetUsageLimitId() const
ModifyUsageLimitResult & WithClusterIdentifier(ClusterIdentifierT &&value)
void SetTags(TagsT &&value)
ModifyUsageLimitResult & WithUsageLimitId(UsageLimitIdT &&value)
long long GetAmount() const
ModifyUsageLimitResult & WithFeatureType(UsageLimitFeatureType value)
void SetPeriod(UsageLimitPeriod value)
void SetFeatureType(UsageLimitFeatureType value)
const Aws::Vector< Tag > & GetTags() const
UsageLimitFeatureType GetFeatureType() const
void SetResponseMetadata(ResponseMetadataT &&value)
const Aws::String & GetClusterIdentifier() const
ModifyUsageLimitResult & AddTags(TagsT &&value)
ModifyUsageLimitResult & WithLimitType(UsageLimitLimitType value)
AWS_REDSHIFT_API ModifyUsageLimitResult(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
void SetBreachAction(UsageLimitBreachAction value)
ModifyUsageLimitResult & WithAmount(long long value)
AWS_REDSHIFT_API ModifyUsageLimitResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
ModifyUsageLimitResult & WithResponseMetadata(ResponseMetadataT &&value)
UsageLimitLimitType GetLimitType() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Xml::XmlDocument XmlDocument