AWS SDK for C++  1.8.71
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
CreateUsagePlanRequest & AddTags(const Aws::String &key, Aws::String &&value)
CreateUsagePlanRequest & AddTags(Aws::String &&key, const char *value)
CreateUsagePlanRequest & WithDescription(Aws::String &&value)
void SetTags(const Aws::Map< Aws::String, Aws::String > &value)
CreateUsagePlanRequest & WithName(Aws::String &&value)
CreateUsagePlanRequest & WithThrottle(ThrottleSettings &&value)
void SetApiStages(Aws::Vector< ApiStage > &&value)
CreateUsagePlanRequest & AddApiStages(ApiStage &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Definition: AWSMap.h:19
CreateUsagePlanRequest & WithTags(const Aws::Map< Aws::String, Aws::String > &value)
CreateUsagePlanRequest & WithName(const char *value)
CreateUsagePlanRequest & AddTags(Aws::String &&key, const Aws::String &value)
CreateUsagePlanRequest & AddTags(const char *key, const char *value)
CreateUsagePlanRequest & WithTags(Aws::Map< Aws::String, Aws::String > &&value)
CreateUsagePlanRequest & WithApiStages(Aws::Vector< ApiStage > &&value)
CreateUsagePlanRequest & WithApiStages(const Aws::Vector< ApiStage > &value)
CreateUsagePlanRequest & WithQuota(const QuotaSettings &value)
CreateUsagePlanRequest & WithDescription(const Aws::String &value)
const Aws::Vector< ApiStage > & GetApiStages() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateUsagePlanRequest & WithThrottle(const ThrottleSettings &value)
void SetApiStages(const Aws::Vector< ApiStage > &value)
virtual const char * GetServiceRequestName() const override
CreateUsagePlanRequest & AddTags(const char *key, Aws::String &&value)
void SetThrottle(const ThrottleSettings &value)
CreateUsagePlanRequest & AddTags(const Aws::String &key, const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_APIGATEWAY_API
CreateUsagePlanRequest & WithName(const Aws::String &value)
CreateUsagePlanRequest & AddTags(Aws::String &&key, Aws::String &&value)
CreateUsagePlanRequest & WithQuota(QuotaSettings &&value)
void SetTags(Aws::Map< Aws::String, Aws::String > &&value)
CreateUsagePlanRequest & WithDescription(const char *value)
CreateUsagePlanRequest & AddApiStages(const ApiStage &value)