AWS SDK for C++  1.9.104
AWS SDK for C++
CreateUsageLimitResult.h
Go to the documentation of this file.
1 
6 #pragma once
15 #include <aws/redshift/model/Tag.h>
16 #include <utility>
17 
18 namespace Aws
19 {
20 template<typename RESULT_TYPE>
21 class AmazonWebServiceResult;
22 
23 namespace Utils
24 {
25 namespace Xml
26 {
27  class XmlDocument;
28 } // namespace Xml
29 } // namespace Utils
30 namespace Redshift
31 {
32 namespace Model
33 {
40  {
41  public:
45 
46 
50  inline const Aws::String& GetUsageLimitId() const{ return m_usageLimitId; }
51 
55  inline void SetUsageLimitId(const Aws::String& value) { m_usageLimitId = value; }
56 
60  inline void SetUsageLimitId(Aws::String&& value) { m_usageLimitId = std::move(value); }
61 
65  inline void SetUsageLimitId(const char* value) { m_usageLimitId.assign(value); }
66 
70  inline CreateUsageLimitResult& WithUsageLimitId(const Aws::String& value) { SetUsageLimitId(value); return *this;}
71 
75  inline CreateUsageLimitResult& WithUsageLimitId(Aws::String&& value) { SetUsageLimitId(std::move(value)); return *this;}
76 
80  inline CreateUsageLimitResult& WithUsageLimitId(const char* value) { SetUsageLimitId(value); return *this;}
81 
82 
86  inline const Aws::String& GetClusterIdentifier() const{ return m_clusterIdentifier; }
87 
91  inline void SetClusterIdentifier(const Aws::String& value) { m_clusterIdentifier = value; }
92 
96  inline void SetClusterIdentifier(Aws::String&& value) { m_clusterIdentifier = std::move(value); }
97 
101  inline void SetClusterIdentifier(const char* value) { m_clusterIdentifier.assign(value); }
102 
106  inline CreateUsageLimitResult& WithClusterIdentifier(const Aws::String& value) { SetClusterIdentifier(value); return *this;}
107 
111  inline CreateUsageLimitResult& WithClusterIdentifier(Aws::String&& value) { SetClusterIdentifier(std::move(value)); return *this;}
112 
116  inline CreateUsageLimitResult& WithClusterIdentifier(const char* value) { SetClusterIdentifier(value); return *this;}
117 
118 
122  inline const UsageLimitFeatureType& GetFeatureType() const{ return m_featureType; }
123 
127  inline void SetFeatureType(const UsageLimitFeatureType& value) { m_featureType = value; }
128 
132  inline void SetFeatureType(UsageLimitFeatureType&& value) { m_featureType = std::move(value); }
133 
137  inline CreateUsageLimitResult& WithFeatureType(const UsageLimitFeatureType& value) { SetFeatureType(value); return *this;}
138 
142  inline CreateUsageLimitResult& WithFeatureType(UsageLimitFeatureType&& value) { SetFeatureType(std::move(value)); return *this;}
143 
144 
149  inline const UsageLimitLimitType& GetLimitType() const{ return m_limitType; }
150 
155  inline void SetLimitType(const UsageLimitLimitType& value) { m_limitType = value; }
156 
161  inline void SetLimitType(UsageLimitLimitType&& value) { m_limitType = std::move(value); }
162 
167  inline CreateUsageLimitResult& WithLimitType(const UsageLimitLimitType& value) { SetLimitType(value); return *this;}
168 
173  inline CreateUsageLimitResult& WithLimitType(UsageLimitLimitType&& value) { SetLimitType(std::move(value)); return *this;}
174 
175 
180  inline long long GetAmount() const{ return m_amount; }
181 
186  inline void SetAmount(long long value) { m_amount = value; }
187 
192  inline CreateUsageLimitResult& WithAmount(long long value) { SetAmount(value); return *this;}
193 
194 
199  inline const UsageLimitPeriod& GetPeriod() const{ return m_period; }
200 
205  inline void SetPeriod(const UsageLimitPeriod& value) { m_period = value; }
206 
211  inline void SetPeriod(UsageLimitPeriod&& value) { m_period = std::move(value); }
212 
217  inline CreateUsageLimitResult& WithPeriod(const UsageLimitPeriod& value) { SetPeriod(value); return *this;}
218 
223  inline CreateUsageLimitResult& WithPeriod(UsageLimitPeriod&& value) { SetPeriod(std::move(value)); return *this;}
224 
225 
233  inline const UsageLimitBreachAction& GetBreachAction() const{ return m_breachAction; }
234 
242  inline void SetBreachAction(const UsageLimitBreachAction& value) { m_breachAction = value; }
243 
251  inline void SetBreachAction(UsageLimitBreachAction&& value) { m_breachAction = std::move(value); }
252 
260  inline CreateUsageLimitResult& WithBreachAction(const UsageLimitBreachAction& value) { SetBreachAction(value); return *this;}
261 
269  inline CreateUsageLimitResult& WithBreachAction(UsageLimitBreachAction&& value) { SetBreachAction(std::move(value)); return *this;}
270 
271 
275  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
276 
280  inline void SetTags(const Aws::Vector<Tag>& value) { m_tags = value; }
281 
285  inline void SetTags(Aws::Vector<Tag>&& value) { m_tags = std::move(value); }
286 
290  inline CreateUsageLimitResult& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
291 
295  inline CreateUsageLimitResult& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
296 
300  inline CreateUsageLimitResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; }
301 
305  inline CreateUsageLimitResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; }
306 
307 
308 
309  inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; }
310 
311 
312  inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; }
313 
314 
315  inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); }
316 
317 
318  inline CreateUsageLimitResult& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;}
319 
320 
321  inline CreateUsageLimitResult& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;}
322 
323  private:
324 
325  Aws::String m_usageLimitId;
326 
327  Aws::String m_clusterIdentifier;
328 
329  UsageLimitFeatureType m_featureType;
330 
331  UsageLimitLimitType m_limitType;
332 
333  long long m_amount;
334 
335  UsageLimitPeriod m_period;
336 
337  UsageLimitBreachAction m_breachAction;
338 
339  Aws::Vector<Tag> m_tags;
340 
341  ResponseMetadata m_responseMetadata;
342  };
343 
344 } // namespace Model
345 } // namespace Redshift
346 } // namespace Aws
Aws::Redshift::Model::ResponseMetadata
Definition: ResponseMetadata.h:27
Aws::Redshift::Model::CreateUsageLimitResult::SetResponseMetadata
void SetResponseMetadata(ResponseMetadata &&value)
Definition: CreateUsageLimitResult.h:315
Aws::Redshift::Model::Tag
Definition: Tag.h:33
Aws::AmazonWebServiceResult
Definition: AmazonWebServiceResult.h:19
Aws::Redshift::Model::CreateUsageLimitResult::WithUsageLimitId
CreateUsageLimitResult & WithUsageLimitId(const char *value)
Definition: CreateUsageLimitResult.h:80
Aws::Redshift::Model::CreateUsageLimitResult::GetUsageLimitId
const Aws::String & GetUsageLimitId() const
Definition: CreateUsageLimitResult.h:50
Aws::Redshift::Model::CreateUsageLimitResult::SetPeriod
void SetPeriod(UsageLimitPeriod &&value)
Definition: CreateUsageLimitResult.h:211
Aws::Redshift::Model::CreateUsageLimitResult::GetAmount
long long GetAmount() const
Definition: CreateUsageLimitResult.h:180
Aws::Redshift::Model::CreateUsageLimitResult
Definition: CreateUsageLimitResult.h:40
Aws::Redshift::Model::CreateUsageLimitResult::SetLimitType
void SetLimitType(const UsageLimitLimitType &value)
Definition: CreateUsageLimitResult.h:155
UsageLimitBreachAction.h
Aws::Redshift::Model::CreateUsageLimitResult::WithResponseMetadata
CreateUsageLimitResult & WithResponseMetadata(const ResponseMetadata &value)
Definition: CreateUsageLimitResult.h:318
Aws::Redshift::Model::CreateUsageLimitResult::WithClusterIdentifier
CreateUsageLimitResult & WithClusterIdentifier(Aws::String &&value)
Definition: CreateUsageLimitResult.h:111
Aws::Redshift::Model::CreateUsageLimitResult::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: CreateUsageLimitResult.h:275
Tag.h
Aws::Redshift::Model::CreateUsageLimitResult::SetLimitType
void SetLimitType(UsageLimitLimitType &&value)
Definition: CreateUsageLimitResult.h:161
Aws::Redshift::Model::CreateUsageLimitResult::GetFeatureType
const UsageLimitFeatureType & GetFeatureType() const
Definition: CreateUsageLimitResult.h:122
Aws::Redshift::Model::CreateUsageLimitResult::WithPeriod
CreateUsageLimitResult & WithPeriod(UsageLimitPeriod &&value)
Definition: CreateUsageLimitResult.h:223
Aws::Redshift::Model::CreateUsageLimitResult::SetClusterIdentifier
void SetClusterIdentifier(Aws::String &&value)
Definition: CreateUsageLimitResult.h:96
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::Redshift::Model::CreateUsageLimitResult::SetPeriod
void SetPeriod(const UsageLimitPeriod &value)
Definition: CreateUsageLimitResult.h:205
UsageLimitFeatureType.h
Aws::Redshift::Model::CreateUsageLimitResult::GetLimitType
const UsageLimitLimitType & GetLimitType() const
Definition: CreateUsageLimitResult.h:149
Aws::Redshift::Model::CreateUsageLimitResult::SetUsageLimitId
void SetUsageLimitId(const char *value)
Definition: CreateUsageLimitResult.h:65
AWSVector.h
Aws::Redshift::Model::CreateUsageLimitResult::SetFeatureType
void SetFeatureType(UsageLimitFeatureType &&value)
Definition: CreateUsageLimitResult.h:132
Aws::Redshift::Model::CreateUsageLimitResult::SetUsageLimitId
void SetUsageLimitId(const Aws::String &value)
Definition: CreateUsageLimitResult.h:55
Aws::Redshift::Model::CreateUsageLimitResult::WithLimitType
CreateUsageLimitResult & WithLimitType(const UsageLimitLimitType &value)
Definition: CreateUsageLimitResult.h:167
Aws::Redshift::Model::CreateUsageLimitResult::GetResponseMetadata
const ResponseMetadata & GetResponseMetadata() const
Definition: CreateUsageLimitResult.h:309
Aws::Redshift::Model::CreateUsageLimitResult::AddTags
CreateUsageLimitResult & AddTags(Tag &&value)
Definition: CreateUsageLimitResult.h:305
Aws::Redshift::Model::CreateUsageLimitResult::SetAmount
void SetAmount(long long value)
Definition: CreateUsageLimitResult.h:186
Aws::Redshift::Model::UsageLimitBreachAction
UsageLimitBreachAction
Definition: UsageLimitBreachAction.h:17
Aws::Redshift::Model::CreateUsageLimitResult::CreateUsageLimitResult
CreateUsageLimitResult(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
Aws::Redshift::Model::CreateUsageLimitResult::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: CreateUsageLimitResult.h:285
Aws::Redshift::Model::CreateUsageLimitResult::WithUsageLimitId
CreateUsageLimitResult & WithUsageLimitId(const Aws::String &value)
Definition: CreateUsageLimitResult.h:70
Aws::Redshift::Model::CreateUsageLimitResult::WithResponseMetadata
CreateUsageLimitResult & WithResponseMetadata(ResponseMetadata &&value)
Definition: CreateUsageLimitResult.h:321
AWS_REDSHIFT_API
#define AWS_REDSHIFT_API
Definition: Redshift_EXPORTS.h:28
UsageLimitPeriod.h
Aws::Redshift::Model::CreateUsageLimitResult::SetBreachAction
void SetBreachAction(UsageLimitBreachAction &&value)
Definition: CreateUsageLimitResult.h:251
Aws::Redshift::Model::CreateUsageLimitResult::WithBreachAction
CreateUsageLimitResult & WithBreachAction(UsageLimitBreachAction &&value)
Definition: CreateUsageLimitResult.h:269
Aws::Redshift::Model::CreateUsageLimitResult::WithUsageLimitId
CreateUsageLimitResult & WithUsageLimitId(Aws::String &&value)
Definition: CreateUsageLimitResult.h:75
Aws::Redshift::Model::CreateUsageLimitResult::WithFeatureType
CreateUsageLimitResult & WithFeatureType(const UsageLimitFeatureType &value)
Definition: CreateUsageLimitResult.h:137
Aws::Redshift::Model::CreateUsageLimitResult::CreateUsageLimitResult
CreateUsageLimitResult()
AWSString.h
Aws::Redshift::Model::CreateUsageLimitResult::WithFeatureType
CreateUsageLimitResult & WithFeatureType(UsageLimitFeatureType &&value)
Definition: CreateUsageLimitResult.h:142
Aws::Redshift::Model::CreateUsageLimitResult::SetFeatureType
void SetFeatureType(const UsageLimitFeatureType &value)
Definition: CreateUsageLimitResult.h:127
Aws::Redshift::Model::CreateUsageLimitResult::WithClusterIdentifier
CreateUsageLimitResult & WithClusterIdentifier(const Aws::String &value)
Definition: CreateUsageLimitResult.h:106
Aws::Redshift::Model::CreateUsageLimitResult::WithTags
CreateUsageLimitResult & WithTags(Aws::Vector< Tag > &&value)
Definition: CreateUsageLimitResult.h:295
Aws::Redshift::Model::CreateUsageLimitResult::GetBreachAction
const UsageLimitBreachAction & GetBreachAction() const
Definition: CreateUsageLimitResult.h:233
Aws::Redshift::Model::CreateUsageLimitResult::WithPeriod
CreateUsageLimitResult & WithPeriod(const UsageLimitPeriod &value)
Definition: CreateUsageLimitResult.h:217
Aws::Redshift::Model::CreateUsageLimitResult::SetClusterIdentifier
void SetClusterIdentifier(const char *value)
Definition: CreateUsageLimitResult.h:101
Aws::Redshift::Model::CreateUsageLimitResult::WithTags
CreateUsageLimitResult & WithTags(const Aws::Vector< Tag > &value)
Definition: CreateUsageLimitResult.h:290
UsageLimitLimitType.h
Aws::Redshift::Model::CreateUsageLimitResult::WithBreachAction
CreateUsageLimitResult & WithBreachAction(const UsageLimitBreachAction &value)
Definition: CreateUsageLimitResult.h:260
Aws
Definition: AccessManagementClient.h:15
Aws::Redshift::Model::UsageLimitLimitType
UsageLimitLimitType
Definition: UsageLimitLimitType.h:17
Aws::Redshift::Model::CreateUsageLimitResult::WithAmount
CreateUsageLimitResult & WithAmount(long long value)
Definition: CreateUsageLimitResult.h:192
Redshift_EXPORTS.h
Aws::Redshift::Model::CreateUsageLimitResult::operator=
CreateUsageLimitResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
Aws::Redshift::Model::CreateUsageLimitResult::SetUsageLimitId
void SetUsageLimitId(Aws::String &&value)
Definition: CreateUsageLimitResult.h:60
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::Redshift::Model::CreateUsageLimitResult::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: CreateUsageLimitResult.h:280
Aws::Redshift::Model::CreateUsageLimitResult::SetClusterIdentifier
void SetClusterIdentifier(const Aws::String &value)
Definition: CreateUsageLimitResult.h:91
Aws::Redshift::Model::CreateUsageLimitResult::GetClusterIdentifier
const Aws::String & GetClusterIdentifier() const
Definition: CreateUsageLimitResult.h:86
ResponseMetadata.h
Aws::Redshift::Model::CreateUsageLimitResult::GetPeriod
const UsageLimitPeriod & GetPeriod() const
Definition: CreateUsageLimitResult.h:199
Aws::Redshift::Model::CreateUsageLimitResult::AddTags
CreateUsageLimitResult & AddTags(const Tag &value)
Definition: CreateUsageLimitResult.h:300
Aws::Redshift::Model::CreateUsageLimitResult::SetBreachAction
void SetBreachAction(const UsageLimitBreachAction &value)
Definition: CreateUsageLimitResult.h:242
Aws::Redshift::Model::CreateUsageLimitResult::WithClusterIdentifier
CreateUsageLimitResult & WithClusterIdentifier(const char *value)
Definition: CreateUsageLimitResult.h:116
Aws::Redshift::Model::CreateUsageLimitResult::SetResponseMetadata
void SetResponseMetadata(const ResponseMetadata &value)
Definition: CreateUsageLimitResult.h:312
Aws::Redshift::Model::UsageLimitFeatureType
UsageLimitFeatureType
Definition: UsageLimitFeatureType.h:17
Aws::Redshift::Model::CreateUsageLimitResult::WithLimitType
CreateUsageLimitResult & WithLimitType(UsageLimitLimitType &&value)
Definition: CreateUsageLimitResult.h:173
Aws::Redshift::Model::UsageLimitPeriod
UsageLimitPeriod
Definition: UsageLimitPeriod.h:17