AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
UsagePlan.h
1
6#pragma once
7#include <aws/apigateway/APIGateway_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/apigateway/model/ThrottleSettings.h>
11#include <aws/apigateway/model/QuotaSettings.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/apigateway/model/ApiStage.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace APIGateway
27{
28namespace Model
29{
30
44 {
45 public:
46 AWS_APIGATEWAY_API UsagePlan();
47 AWS_APIGATEWAY_API UsagePlan(Aws::Utils::Json::JsonView jsonValue);
48 AWS_APIGATEWAY_API UsagePlan& operator=(Aws::Utils::Json::JsonView jsonValue);
49 AWS_APIGATEWAY_API Aws::Utils::Json::JsonValue Jsonize() const;
50
51
53
56 inline const Aws::String& GetId() const{ return m_id; }
57 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
58 inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
59 inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
60 inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
61 inline UsagePlan& WithId(const Aws::String& value) { SetId(value); return *this;}
62 inline UsagePlan& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
63 inline UsagePlan& WithId(const char* value) { SetId(value); return *this;}
65
67
70 inline const Aws::String& GetName() const{ return m_name; }
71 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
72 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
73 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
74 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
75 inline UsagePlan& WithName(const Aws::String& value) { SetName(value); return *this;}
76 inline UsagePlan& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
77 inline UsagePlan& WithName(const char* value) { SetName(value); return *this;}
79
81
84 inline const Aws::String& GetDescription() const{ return m_description; }
85 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
86 inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
87 inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
88 inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
89 inline UsagePlan& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
90 inline UsagePlan& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
91 inline UsagePlan& WithDescription(const char* value) { SetDescription(value); return *this;}
93
95
98 inline const Aws::Vector<ApiStage>& GetApiStages() const{ return m_apiStages; }
99 inline bool ApiStagesHasBeenSet() const { return m_apiStagesHasBeenSet; }
100 inline void SetApiStages(const Aws::Vector<ApiStage>& value) { m_apiStagesHasBeenSet = true; m_apiStages = value; }
101 inline void SetApiStages(Aws::Vector<ApiStage>&& value) { m_apiStagesHasBeenSet = true; m_apiStages = std::move(value); }
102 inline UsagePlan& WithApiStages(const Aws::Vector<ApiStage>& value) { SetApiStages(value); return *this;}
103 inline UsagePlan& WithApiStages(Aws::Vector<ApiStage>&& value) { SetApiStages(std::move(value)); return *this;}
104 inline UsagePlan& AddApiStages(const ApiStage& value) { m_apiStagesHasBeenSet = true; m_apiStages.push_back(value); return *this; }
105 inline UsagePlan& AddApiStages(ApiStage&& value) { m_apiStagesHasBeenSet = true; m_apiStages.push_back(std::move(value)); return *this; }
107
109
113 inline const ThrottleSettings& GetThrottle() const{ return m_throttle; }
114 inline bool ThrottleHasBeenSet() const { return m_throttleHasBeenSet; }
115 inline void SetThrottle(const ThrottleSettings& value) { m_throttleHasBeenSet = true; m_throttle = value; }
116 inline void SetThrottle(ThrottleSettings&& value) { m_throttleHasBeenSet = true; m_throttle = std::move(value); }
117 inline UsagePlan& WithThrottle(const ThrottleSettings& value) { SetThrottle(value); return *this;}
118 inline UsagePlan& WithThrottle(ThrottleSettings&& value) { SetThrottle(std::move(value)); return *this;}
120
122
126 inline const QuotaSettings& GetQuota() const{ return m_quota; }
127 inline bool QuotaHasBeenSet() const { return m_quotaHasBeenSet; }
128 inline void SetQuota(const QuotaSettings& value) { m_quotaHasBeenSet = true; m_quota = value; }
129 inline void SetQuota(QuotaSettings&& value) { m_quotaHasBeenSet = true; m_quota = std::move(value); }
130 inline UsagePlan& WithQuota(const QuotaSettings& value) { SetQuota(value); return *this;}
131 inline UsagePlan& WithQuota(QuotaSettings&& value) { SetQuota(std::move(value)); return *this;}
133
135
139 inline const Aws::String& GetProductCode() const{ return m_productCode; }
140 inline bool ProductCodeHasBeenSet() const { return m_productCodeHasBeenSet; }
141 inline void SetProductCode(const Aws::String& value) { m_productCodeHasBeenSet = true; m_productCode = value; }
142 inline void SetProductCode(Aws::String&& value) { m_productCodeHasBeenSet = true; m_productCode = std::move(value); }
143 inline void SetProductCode(const char* value) { m_productCodeHasBeenSet = true; m_productCode.assign(value); }
144 inline UsagePlan& WithProductCode(const Aws::String& value) { SetProductCode(value); return *this;}
145 inline UsagePlan& WithProductCode(Aws::String&& value) { SetProductCode(std::move(value)); return *this;}
146 inline UsagePlan& WithProductCode(const char* value) { SetProductCode(value); return *this;}
148
150
154 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
155 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
156 inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; }
157 inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
158 inline UsagePlan& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}
159 inline UsagePlan& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}
160 inline UsagePlan& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
161 inline UsagePlan& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
162 inline UsagePlan& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
163 inline UsagePlan& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; }
164 inline UsagePlan& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
165 inline UsagePlan& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
166 inline UsagePlan& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
168
170
171 inline const Aws::String& GetRequestId() const{ return m_requestId; }
172 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
173 inline void SetRequestId(const Aws::String& value) { m_requestIdHasBeenSet = true; m_requestId = value; }
174 inline void SetRequestId(Aws::String&& value) { m_requestIdHasBeenSet = true; m_requestId = std::move(value); }
175 inline void SetRequestId(const char* value) { m_requestIdHasBeenSet = true; m_requestId.assign(value); }
176 inline UsagePlan& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;}
177 inline UsagePlan& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;}
178 inline UsagePlan& WithRequestId(const char* value) { SetRequestId(value); return *this;}
180 private:
181
182 Aws::String m_id;
183 bool m_idHasBeenSet = false;
184
185 Aws::String m_name;
186 bool m_nameHasBeenSet = false;
187
188 Aws::String m_description;
189 bool m_descriptionHasBeenSet = false;
190
191 Aws::Vector<ApiStage> m_apiStages;
192 bool m_apiStagesHasBeenSet = false;
193
194 ThrottleSettings m_throttle;
195 bool m_throttleHasBeenSet = false;
196
197 QuotaSettings m_quota;
198 bool m_quotaHasBeenSet = false;
199
200 Aws::String m_productCode;
201 bool m_productCodeHasBeenSet = false;
202
204 bool m_tagsHasBeenSet = false;
205
206 Aws::String m_requestId;
207 bool m_requestIdHasBeenSet = false;
208 };
209
210} // namespace Model
211} // namespace APIGateway
212} // namespace Aws
UsagePlan & WithName(Aws::String &&value)
Definition UsagePlan.h:76
UsagePlan & WithApiStages(const Aws::Vector< ApiStage > &value)
Definition UsagePlan.h:102
const Aws::String & GetName() const
Definition UsagePlan.h:70
UsagePlan & AddTags(const char *key, Aws::String &&value)
Definition UsagePlan.h:164
void SetName(const Aws::String &value)
Definition UsagePlan.h:72
UsagePlan & WithId(const char *value)
Definition UsagePlan.h:63
void SetProductCode(const Aws::String &value)
Definition UsagePlan.h:141
UsagePlan & WithDescription(const Aws::String &value)
Definition UsagePlan.h:89
UsagePlan & WithQuota(QuotaSettings &&value)
Definition UsagePlan.h:131
void SetTags(Aws::Map< Aws::String, Aws::String > &&value)
Definition UsagePlan.h:157
UsagePlan & WithThrottle(ThrottleSettings &&value)
Definition UsagePlan.h:118
UsagePlan & WithProductCode(const char *value)
Definition UsagePlan.h:146
AWS_APIGATEWAY_API UsagePlan(Aws::Utils::Json::JsonView jsonValue)
UsagePlan & WithThrottle(const ThrottleSettings &value)
Definition UsagePlan.h:117
UsagePlan & WithId(const Aws::String &value)
Definition UsagePlan.h:61
UsagePlan & WithApiStages(Aws::Vector< ApiStage > &&value)
Definition UsagePlan.h:103
UsagePlan & WithRequestId(const Aws::String &value)
Definition UsagePlan.h:176
UsagePlan & AddTags(Aws::String &&key, const char *value)
Definition UsagePlan.h:165
void SetProductCode(Aws::String &&value)
Definition UsagePlan.h:142
UsagePlan & WithName(const Aws::String &value)
Definition UsagePlan.h:75
UsagePlan & WithId(Aws::String &&value)
Definition UsagePlan.h:62
UsagePlan & AddTags(const Aws::String &key, const Aws::String &value)
Definition UsagePlan.h:160
UsagePlan & WithQuota(const QuotaSettings &value)
Definition UsagePlan.h:130
UsagePlan & WithRequestId(Aws::String &&value)
Definition UsagePlan.h:177
void SetDescription(const char *value)
Definition UsagePlan.h:88
UsagePlan & WithDescription(Aws::String &&value)
Definition UsagePlan.h:90
const QuotaSettings & GetQuota() const
Definition UsagePlan.h:126
void SetRequestId(const char *value)
Definition UsagePlan.h:175
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Definition UsagePlan.h:154
UsagePlan & AddApiStages(const ApiStage &value)
Definition UsagePlan.h:104
void SetId(Aws::String &&value)
Definition UsagePlan.h:59
void SetQuota(QuotaSettings &&value)
Definition UsagePlan.h:129
UsagePlan & WithTags(Aws::Map< Aws::String, Aws::String > &&value)
Definition UsagePlan.h:159
const Aws::String & GetRequestId() const
Definition UsagePlan.h:171
void SetRequestId(Aws::String &&value)
Definition UsagePlan.h:174
void SetId(const char *value)
Definition UsagePlan.h:60
UsagePlan & WithDescription(const char *value)
Definition UsagePlan.h:91
void SetThrottle(ThrottleSettings &&value)
Definition UsagePlan.h:116
void SetDescription(const Aws::String &value)
Definition UsagePlan.h:86
UsagePlan & AddApiStages(ApiStage &&value)
Definition UsagePlan.h:105
const Aws::String & GetId() const
Definition UsagePlan.h:56
void SetId(const Aws::String &value)
Definition UsagePlan.h:58
void SetApiStages(const Aws::Vector< ApiStage > &value)
Definition UsagePlan.h:100
void SetRequestId(const Aws::String &value)
Definition UsagePlan.h:173
void SetTags(const Aws::Map< Aws::String, Aws::String > &value)
Definition UsagePlan.h:156
UsagePlan & AddTags(const char *key, const char *value)
Definition UsagePlan.h:166
UsagePlan & AddTags(Aws::String &&key, Aws::String &&value)
Definition UsagePlan.h:163
AWS_APIGATEWAY_API UsagePlan & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetApiStages(Aws::Vector< ApiStage > &&value)
Definition UsagePlan.h:101
const Aws::Vector< ApiStage > & GetApiStages() const
Definition UsagePlan.h:98
const ThrottleSettings & GetThrottle() const
Definition UsagePlan.h:113
UsagePlan & WithProductCode(const Aws::String &value)
Definition UsagePlan.h:144
UsagePlan & WithRequestId(const char *value)
Definition UsagePlan.h:178
void SetName(const char *value)
Definition UsagePlan.h:74
UsagePlan & WithName(const char *value)
Definition UsagePlan.h:77
UsagePlan & AddTags(Aws::String &&key, const Aws::String &value)
Definition UsagePlan.h:161
AWS_APIGATEWAY_API UsagePlan()
UsagePlan & WithTags(const Aws::Map< Aws::String, Aws::String > &value)
Definition UsagePlan.h:158
const Aws::String & GetProductCode() const
Definition UsagePlan.h:139
UsagePlan & AddTags(const Aws::String &key, Aws::String &&value)
Definition UsagePlan.h:162
void SetDescription(Aws::String &&value)
Definition UsagePlan.h:87
void SetThrottle(const ThrottleSettings &value)
Definition UsagePlan.h:115
AWS_APIGATEWAY_API Aws::Utils::Json::JsonValue Jsonize() const
void SetName(Aws::String &&value)
Definition UsagePlan.h:73
void SetQuota(const QuotaSettings &value)
Definition UsagePlan.h:128
void SetProductCode(const char *value)
Definition UsagePlan.h:143
const Aws::String & GetDescription() const
Definition UsagePlan.h:84
UsagePlan & WithProductCode(Aws::String &&value)
Definition UsagePlan.h:145
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue