7#include <aws/apigateway/APIGateway_EXPORTS.h>
8#include <aws/apigateway/model/ApiStage.h>
9#include <aws/apigateway/model/QuotaSettings.h>
10#include <aws/apigateway/model/ThrottleSettings.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
52 template <
typename IdT = Aws::String>
54 m_idHasBeenSet =
true;
55 m_id = std::forward<IdT>(value);
57 template <
typename IdT = Aws::String>
59 SetId(std::forward<IdT>(value));
70 template <
typename NameT = Aws::String>
72 m_nameHasBeenSet =
true;
73 m_name = std::forward<NameT>(value);
75 template <
typename NameT = Aws::String>
77 SetName(std::forward<NameT>(value));
88 template <
typename DescriptionT = Aws::String>
90 m_descriptionHasBeenSet =
true;
91 m_description = std::forward<DescriptionT>(value);
93 template <
typename DescriptionT = Aws::String>
106 template <
typename ApiStagesT = Aws::Vector<ApiStage>>
108 m_apiStagesHasBeenSet =
true;
109 m_apiStages = std::forward<ApiStagesT>(value);
111 template <
typename ApiStagesT = Aws::Vector<ApiStage>>
116 template <
typename ApiStagesT = ApiStage>
118 m_apiStagesHasBeenSet =
true;
119 m_apiStages.emplace_back(std::forward<ApiStagesT>(value));
131 template <
typename ThrottleT = ThrottleSettings>
133 m_throttleHasBeenSet =
true;
134 m_throttle = std::forward<ThrottleT>(value);
136 template <
typename ThrottleT = ThrottleSettings>
150 template <
typename QuotaT = QuotaSettings>
152 m_quotaHasBeenSet =
true;
153 m_quota = std::forward<QuotaT>(value);
155 template <
typename QuotaT = QuotaSettings>
157 SetQuota(std::forward<QuotaT>(value));
169 template <
typename ProductCodeT = Aws::String>
171 m_productCodeHasBeenSet =
true;
172 m_productCode = std::forward<ProductCodeT>(value);
174 template <
typename ProductCodeT = Aws::String>
188 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
190 m_tagsHasBeenSet =
true;
191 m_tags = std::forward<TagsT>(value);
193 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
195 SetTags(std::forward<TagsT>(value));
198 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
200 m_tagsHasBeenSet =
true;
201 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
210 template <
typename RequestIdT = Aws::String>
212 m_requestIdHasBeenSet =
true;
213 m_requestId = std::forward<RequestIdT>(value);
215 template <
typename RequestIdT = Aws::String>
239 bool m_idHasBeenSet =
false;
240 bool m_nameHasBeenSet =
false;
241 bool m_descriptionHasBeenSet =
false;
242 bool m_apiStagesHasBeenSet =
false;
243 bool m_throttleHasBeenSet =
false;
244 bool m_quotaHasBeenSet =
false;
245 bool m_productCodeHasBeenSet =
false;
246 bool m_tagsHasBeenSet =
false;
247 bool m_requestIdHasBeenSet =
false;
const Aws::String & GetName() const
UsagePlan & AddApiStages(ApiStagesT &&value)
UsagePlan & WithQuota(QuotaT &&value)
UsagePlan & WithProductCode(ProductCodeT &&value)
bool NameHasBeenSet() const
AWS_APIGATEWAY_API UsagePlan(Aws::Utils::Json::JsonView jsonValue)
UsagePlan & WithDescription(DescriptionT &&value)
bool TagsHasBeenSet() const
void SetThrottle(ThrottleT &&value)
void SetTags(TagsT &&value)
bool ThrottleHasBeenSet() const
UsagePlan & WithTags(TagsT &&value)
const QuotaSettings & GetQuota() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::String & GetRequestId() const
void SetQuota(QuotaT &&value)
UsagePlan & WithRequestId(RequestIdT &&value)
UsagePlan & WithName(NameT &&value)
void SetProductCode(ProductCodeT &&value)
const Aws::String & GetId() const
AWS_APIGATEWAY_API UsagePlan()=default
AWS_APIGATEWAY_API UsagePlan & operator=(Aws::Utils::Json::JsonView jsonValue)
bool DescriptionHasBeenSet() const
const Aws::Vector< ApiStage > & GetApiStages() const
const ThrottleSettings & GetThrottle() const
void SetDescription(DescriptionT &&value)
void SetApiStages(ApiStagesT &&value)
bool QuotaHasBeenSet() const
const Aws::String & GetProductCode() const
bool ApiStagesHasBeenSet() const
UsagePlan & WithId(IdT &&value)
void SetName(NameT &&value)
AWS_APIGATEWAY_API Aws::Utils::Json::JsonValue Jsonize() const
bool RequestIdHasBeenSet() const
UsagePlan & WithThrottle(ThrottleT &&value)
UsagePlan & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetRequestId(RequestIdT &&value)
bool ProductCodeHasBeenSet() const
UsagePlan & WithApiStages(ApiStagesT &&value)
const Aws::String & GetDescription() const
bool IdHasBeenSet() const
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