AWS SDK for C++  1.9.20
AWS SDK for C++
CreateUsagePlanRequest.h
Go to the documentation of this file.
1 
6 #pragma once
15 #include <utility>
16 
17 namespace Aws
18 {
19 namespace APIGateway
20 {
21 namespace Model
22 {
23 
32  {
33  public:
35 
36  // Service request name is the Operation name which will send this request out,
37  // each operation should has unique request name, so that we can get operation's name from this request.
38  // Note: this is not true for response, multiple operations may have the same response name,
39  // so we can not get operation's name from response.
40  inline virtual const char* GetServiceRequestName() const override { return "CreateUsagePlan"; }
41 
42  Aws::String SerializePayload() const override;
43 
44 
48  inline const Aws::String& GetName() const{ return m_name; }
49 
53  inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
54 
58  inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
59 
63  inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
64 
68  inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
69 
73  inline CreateUsagePlanRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
74 
78  inline CreateUsagePlanRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
79 
83  inline CreateUsagePlanRequest& WithName(const char* value) { SetName(value); return *this;}
84 
85 
89  inline const Aws::String& GetDescription() const{ return m_description; }
90 
94  inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
95 
99  inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
100 
104  inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
105 
109  inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
110 
114  inline CreateUsagePlanRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
115 
119  inline CreateUsagePlanRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
120 
124  inline CreateUsagePlanRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
125 
126 
130  inline const Aws::Vector<ApiStage>& GetApiStages() const{ return m_apiStages; }
131 
135  inline bool ApiStagesHasBeenSet() const { return m_apiStagesHasBeenSet; }
136 
140  inline void SetApiStages(const Aws::Vector<ApiStage>& value) { m_apiStagesHasBeenSet = true; m_apiStages = value; }
141 
145  inline void SetApiStages(Aws::Vector<ApiStage>&& value) { m_apiStagesHasBeenSet = true; m_apiStages = std::move(value); }
146 
150  inline CreateUsagePlanRequest& WithApiStages(const Aws::Vector<ApiStage>& value) { SetApiStages(value); return *this;}
151 
155  inline CreateUsagePlanRequest& WithApiStages(Aws::Vector<ApiStage>&& value) { SetApiStages(std::move(value)); return *this;}
156 
160  inline CreateUsagePlanRequest& AddApiStages(const ApiStage& value) { m_apiStagesHasBeenSet = true; m_apiStages.push_back(value); return *this; }
161 
165  inline CreateUsagePlanRequest& AddApiStages(ApiStage&& value) { m_apiStagesHasBeenSet = true; m_apiStages.push_back(std::move(value)); return *this; }
166 
167 
171  inline const ThrottleSettings& GetThrottle() const{ return m_throttle; }
172 
176  inline bool ThrottleHasBeenSet() const { return m_throttleHasBeenSet; }
177 
181  inline void SetThrottle(const ThrottleSettings& value) { m_throttleHasBeenSet = true; m_throttle = value; }
182 
186  inline void SetThrottle(ThrottleSettings&& value) { m_throttleHasBeenSet = true; m_throttle = std::move(value); }
187 
191  inline CreateUsagePlanRequest& WithThrottle(const ThrottleSettings& value) { SetThrottle(value); return *this;}
192 
196  inline CreateUsagePlanRequest& WithThrottle(ThrottleSettings&& value) { SetThrottle(std::move(value)); return *this;}
197 
198 
202  inline const QuotaSettings& GetQuota() const{ return m_quota; }
203 
207  inline bool QuotaHasBeenSet() const { return m_quotaHasBeenSet; }
208 
212  inline void SetQuota(const QuotaSettings& value) { m_quotaHasBeenSet = true; m_quota = value; }
213 
217  inline void SetQuota(QuotaSettings&& value) { m_quotaHasBeenSet = true; m_quota = std::move(value); }
218 
222  inline CreateUsagePlanRequest& WithQuota(const QuotaSettings& value) { SetQuota(value); return *this;}
223 
227  inline CreateUsagePlanRequest& WithQuota(QuotaSettings&& value) { SetQuota(std::move(value)); return *this;}
228 
229 
235  inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
236 
242  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
243 
249  inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; }
250 
256  inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
257 
263  inline CreateUsagePlanRequest& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}
264 
270  inline CreateUsagePlanRequest& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}
271 
277  inline CreateUsagePlanRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
278 
284  inline CreateUsagePlanRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
285 
291  inline CreateUsagePlanRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
292 
298  inline CreateUsagePlanRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; }
299 
305  inline CreateUsagePlanRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
306 
312  inline CreateUsagePlanRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
313 
319  inline CreateUsagePlanRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
320 
321  private:
322 
323  Aws::String m_name;
324  bool m_nameHasBeenSet;
325 
326  Aws::String m_description;
327  bool m_descriptionHasBeenSet;
328 
329  Aws::Vector<ApiStage> m_apiStages;
330  bool m_apiStagesHasBeenSet;
331 
332  ThrottleSettings m_throttle;
333  bool m_throttleHasBeenSet;
334 
335  QuotaSettings m_quota;
336  bool m_quotaHasBeenSet;
337 
339  bool m_tagsHasBeenSet;
340  };
341 
342 } // namespace Model
343 } // namespace APIGateway
344 } // namespace Aws
Aws::APIGateway::Model::CreateUsagePlanRequest::GetApiStages
const Aws::Vector< ApiStage > & GetApiStages() const
Definition: CreateUsagePlanRequest.h:130
Aws::APIGateway::Model::CreateUsagePlanRequest::AddTags
CreateUsagePlanRequest & AddTags(const char *key, Aws::String &&value)
Definition: CreateUsagePlanRequest.h:305
Aws::APIGateway::Model::CreateUsagePlanRequest::AddApiStages
CreateUsagePlanRequest & AddApiStages(ApiStage &&value)
Definition: CreateUsagePlanRequest.h:165
Aws::APIGateway::Model::CreateUsagePlanRequest::CreateUsagePlanRequest
CreateUsagePlanRequest()
Aws::APIGateway::Model::CreateUsagePlanRequest::AddApiStages
CreateUsagePlanRequest & AddApiStages(const ApiStage &value)
Definition: CreateUsagePlanRequest.h:160
Aws::APIGateway::Model::CreateUsagePlanRequest::SetName
void SetName(Aws::String &&value)
Definition: CreateUsagePlanRequest.h:63
Aws::APIGateway::Model::CreateUsagePlanRequest::SetDescription
void SetDescription(const Aws::String &value)
Definition: CreateUsagePlanRequest.h:99
Aws::APIGateway::Model::CreateUsagePlanRequest::SetThrottle
void SetThrottle(ThrottleSettings &&value)
Definition: CreateUsagePlanRequest.h:186
AWS_APIGATEWAY_API
#define AWS_APIGATEWAY_API
Definition: APIGateway_EXPORTS.h:28
Aws::APIGateway::Model::CreateUsagePlanRequest::AddTags
CreateUsagePlanRequest & AddTags(const Aws::String &key, const Aws::String &value)
Definition: CreateUsagePlanRequest.h:277
Aws::APIGateway::Model::CreateUsagePlanRequest::SetApiStages
void SetApiStages(Aws::Vector< ApiStage > &&value)
Definition: CreateUsagePlanRequest.h:145
Aws::APIGateway::Model::CreateUsagePlanRequest::GetQuota
const QuotaSettings & GetQuota() const
Definition: CreateUsagePlanRequest.h:202
Aws::APIGateway::Model::CreateUsagePlanRequest::AddTags
CreateUsagePlanRequest & AddTags(Aws::String &&key, const char *value)
Definition: CreateUsagePlanRequest.h:312
Aws::APIGateway::Model::CreateUsagePlanRequest::SetName
void SetName(const Aws::String &value)
Definition: CreateUsagePlanRequest.h:58
QuotaSettings.h
Aws::APIGateway::Model::CreateUsagePlanRequest::GetDescription
const Aws::String & GetDescription() const
Definition: CreateUsagePlanRequest.h:89
Aws::APIGateway::Model::CreateUsagePlanRequest::SetTags
void SetTags(const Aws::Map< Aws::String, Aws::String > &value)
Definition: CreateUsagePlanRequest.h:249
Aws::APIGateway::Model::CreateUsagePlanRequest::GetName
const Aws::String & GetName() const
Definition: CreateUsagePlanRequest.h:48
APIGateway_EXPORTS.h
Aws::APIGateway::Model::CreateUsagePlanRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::APIGateway::Model::CreateUsagePlanRequest::WithQuota
CreateUsagePlanRequest & WithQuota(QuotaSettings &&value)
Definition: CreateUsagePlanRequest.h:227
Aws::APIGateway::Model::CreateUsagePlanRequest::DescriptionHasBeenSet
bool DescriptionHasBeenSet() const
Definition: CreateUsagePlanRequest.h:94
Aws::APIGateway::Model::CreateUsagePlanRequest::QuotaHasBeenSet
bool QuotaHasBeenSet() const
Definition: CreateUsagePlanRequest.h:207
AWSVector.h
APIGatewayRequest.h
Aws::APIGateway::Model::CreateUsagePlanRequest::NameHasBeenSet
bool NameHasBeenSet() const
Definition: CreateUsagePlanRequest.h:53
Aws::APIGateway::Model::CreateUsagePlanRequest::AddTags
CreateUsagePlanRequest & AddTags(const Aws::String &key, Aws::String &&value)
Definition: CreateUsagePlanRequest.h:291
ApiStage.h
Aws::APIGateway::Model::CreateUsagePlanRequest
Definition: CreateUsagePlanRequest.h:32
Aws::APIGateway::Model::CreateUsagePlanRequest::WithName
CreateUsagePlanRequest & WithName(const Aws::String &value)
Definition: CreateUsagePlanRequest.h:73
Aws::APIGateway::Model::CreateUsagePlanRequest::AddTags
CreateUsagePlanRequest & AddTags(const char *key, const char *value)
Definition: CreateUsagePlanRequest.h:319
Aws::APIGateway::Model::ThrottleSettings
Definition: ThrottleSettings.h:30
Aws::APIGateway::Model::CreateUsagePlanRequest::WithTags
CreateUsagePlanRequest & WithTags(Aws::Map< Aws::String, Aws::String > &&value)
Definition: CreateUsagePlanRequest.h:270
Aws::APIGateway::Model::CreateUsagePlanRequest::WithDescription
CreateUsagePlanRequest & WithDescription(const Aws::String &value)
Definition: CreateUsagePlanRequest.h:114
AWSString.h
Aws::APIGateway::Model::CreateUsagePlanRequest::SetDescription
void SetDescription(Aws::String &&value)
Definition: CreateUsagePlanRequest.h:104
Aws::APIGateway::Model::CreateUsagePlanRequest::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: CreateUsagePlanRequest.h:242
Aws::APIGateway::Model::CreateUsagePlanRequest::WithApiStages
CreateUsagePlanRequest & WithApiStages(const Aws::Vector< ApiStage > &value)
Definition: CreateUsagePlanRequest.h:150
Aws::APIGateway::Model::CreateUsagePlanRequest::WithName
CreateUsagePlanRequest & WithName(Aws::String &&value)
Definition: CreateUsagePlanRequest.h:78
Aws::APIGateway::Model::CreateUsagePlanRequest::SetThrottle
void SetThrottle(const ThrottleSettings &value)
Definition: CreateUsagePlanRequest.h:181
Aws::APIGateway::Model::CreateUsagePlanRequest::WithDescription
CreateUsagePlanRequest & WithDescription(Aws::String &&value)
Definition: CreateUsagePlanRequest.h:119
Aws::APIGateway::Model::CreateUsagePlanRequest::SetDescription
void SetDescription(const char *value)
Definition: CreateUsagePlanRequest.h:109
Aws::APIGateway::Model::CreateUsagePlanRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: CreateUsagePlanRequest.h:40
Aws::APIGateway::Model::CreateUsagePlanRequest::SetTags
void SetTags(Aws::Map< Aws::String, Aws::String > &&value)
Definition: CreateUsagePlanRequest.h:256
Aws::APIGateway::Model::CreateUsagePlanRequest::WithName
CreateUsagePlanRequest & WithName(const char *value)
Definition: CreateUsagePlanRequest.h:83
Aws::APIGateway::Model::CreateUsagePlanRequest::ApiStagesHasBeenSet
bool ApiStagesHasBeenSet() const
Definition: CreateUsagePlanRequest.h:135
Aws
Definition: AccessManagementClient.h:15
Aws::APIGateway::Model::CreateUsagePlanRequest::WithThrottle
CreateUsagePlanRequest & WithThrottle(ThrottleSettings &&value)
Definition: CreateUsagePlanRequest.h:196
Aws::APIGateway::Model::CreateUsagePlanRequest::ThrottleHasBeenSet
bool ThrottleHasBeenSet() const
Definition: CreateUsagePlanRequest.h:176
Aws::APIGateway::Model::ApiStage
Definition: ApiStage.h:35
Aws::APIGateway::Model::CreateUsagePlanRequest::WithTags
CreateUsagePlanRequest & WithTags(const Aws::Map< Aws::String, Aws::String > &value)
Definition: CreateUsagePlanRequest.h:263
Aws::APIGateway::Model::CreateUsagePlanRequest::AddTags
CreateUsagePlanRequest & AddTags(Aws::String &&key, const Aws::String &value)
Definition: CreateUsagePlanRequest.h:284
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::APIGateway::Model::CreateUsagePlanRequest::GetThrottle
const ThrottleSettings & GetThrottle() const
Definition: CreateUsagePlanRequest.h:171
Aws::APIGateway::Model::CreateUsagePlanRequest::GetTags
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Definition: CreateUsagePlanRequest.h:235
Aws::APIGateway::Model::CreateUsagePlanRequest::WithThrottle
CreateUsagePlanRequest & WithThrottle(const ThrottleSettings &value)
Definition: CreateUsagePlanRequest.h:191
Aws::APIGateway::Model::CreateUsagePlanRequest::SetName
void SetName(const char *value)
Definition: CreateUsagePlanRequest.h:68
Aws::APIGateway::Model::CreateUsagePlanRequest::SetQuota
void SetQuota(const QuotaSettings &value)
Definition: CreateUsagePlanRequest.h:212
Aws::APIGateway::Model::CreateUsagePlanRequest::WithDescription
CreateUsagePlanRequest & WithDescription(const char *value)
Definition: CreateUsagePlanRequest.h:124
Aws::APIGateway::Model::QuotaSettings
Definition: QuotaSettings.h:32
Aws::APIGateway::Model::CreateUsagePlanRequest::SetQuota
void SetQuota(QuotaSettings &&value)
Definition: CreateUsagePlanRequest.h:217
Aws::APIGateway::Model::CreateUsagePlanRequest::AddTags
CreateUsagePlanRequest & AddTags(Aws::String &&key, Aws::String &&value)
Definition: CreateUsagePlanRequest.h:298
Aws::APIGateway::APIGatewayRequest
Definition: APIGatewayRequest.h:18
ThrottleSettings.h
AWSMap.h
Aws::APIGateway::Model::CreateUsagePlanRequest::SetApiStages
void SetApiStages(const Aws::Vector< ApiStage > &value)
Definition: CreateUsagePlanRequest.h:140
Aws::Map
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Definition: AWSMap.h:19
Aws::APIGateway::Model::CreateUsagePlanRequest::WithQuota
CreateUsagePlanRequest & WithQuota(const QuotaSettings &value)
Definition: CreateUsagePlanRequest.h:222
Aws::APIGateway::Model::CreateUsagePlanRequest::WithApiStages
CreateUsagePlanRequest & WithApiStages(Aws::Vector< ApiStage > &&value)
Definition: CreateUsagePlanRequest.h:155