1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/servicecatalog/ServiceCatalog_EXPORTS.h> 8 #include <aws/servicecatalog/ServiceCatalogRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSMap.h> 11 #include <aws/servicecatalog/model/ProductViewSortBy.h> 12 #include <aws/servicecatalog/model/SortOrder.h> 13 #include <aws/servicecatalog/model/ProductSource.h> 14 #include <aws/servicecatalog/model/ProductViewFilterBy.h> 15 #include <aws/core/utils/memory/stl/AWSVector.h> 16 #include <utility> 17 18 namespace Aws 19 { 20 namespace ServiceCatalog 21 { 22 namespace Model 23 { 24 25 /** 26 */ 27 class AWS_SERVICECATALOG_API SearchProductsAsAdminRequest : public ServiceCatalogRequest 28 { 29 public: 30 SearchProductsAsAdminRequest(); 31 32 // Service request name is the Operation name which will send this request out, 33 // each operation should has unique request name, so that we can get operation's name from this request. 34 // Note: this is not true for response, multiple operations may have the same response name, 35 // so we can not get operation's name from response. GetServiceRequestName()36 inline virtual const char* GetServiceRequestName() const override { return "SearchProductsAsAdmin"; } 37 38 Aws::String SerializePayload() const override; 39 40 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 41 42 43 /** 44 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 45 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 46 * Chinese</p> </li> </ul> 47 */ GetAcceptLanguage()48 inline const Aws::String& GetAcceptLanguage() const{ return m_acceptLanguage; } 49 50 /** 51 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 52 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 53 * Chinese</p> </li> </ul> 54 */ AcceptLanguageHasBeenSet()55 inline bool AcceptLanguageHasBeenSet() const { return m_acceptLanguageHasBeenSet; } 56 57 /** 58 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 59 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 60 * Chinese</p> </li> </ul> 61 */ SetAcceptLanguage(const Aws::String & value)62 inline void SetAcceptLanguage(const Aws::String& value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage = value; } 63 64 /** 65 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 66 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 67 * Chinese</p> </li> </ul> 68 */ SetAcceptLanguage(Aws::String && value)69 inline void SetAcceptLanguage(Aws::String&& value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage = std::move(value); } 70 71 /** 72 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 73 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 74 * Chinese</p> </li> </ul> 75 */ SetAcceptLanguage(const char * value)76 inline void SetAcceptLanguage(const char* value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage.assign(value); } 77 78 /** 79 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 80 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 81 * Chinese</p> </li> </ul> 82 */ WithAcceptLanguage(const Aws::String & value)83 inline SearchProductsAsAdminRequest& WithAcceptLanguage(const Aws::String& value) { SetAcceptLanguage(value); return *this;} 84 85 /** 86 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 87 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 88 * Chinese</p> </li> </ul> 89 */ WithAcceptLanguage(Aws::String && value)90 inline SearchProductsAsAdminRequest& WithAcceptLanguage(Aws::String&& value) { SetAcceptLanguage(std::move(value)); return *this;} 91 92 /** 93 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 94 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 95 * Chinese</p> </li> </ul> 96 */ WithAcceptLanguage(const char * value)97 inline SearchProductsAsAdminRequest& WithAcceptLanguage(const char* value) { SetAcceptLanguage(value); return *this;} 98 99 100 /** 101 * <p>The portfolio identifier.</p> 102 */ GetPortfolioId()103 inline const Aws::String& GetPortfolioId() const{ return m_portfolioId; } 104 105 /** 106 * <p>The portfolio identifier.</p> 107 */ PortfolioIdHasBeenSet()108 inline bool PortfolioIdHasBeenSet() const { return m_portfolioIdHasBeenSet; } 109 110 /** 111 * <p>The portfolio identifier.</p> 112 */ SetPortfolioId(const Aws::String & value)113 inline void SetPortfolioId(const Aws::String& value) { m_portfolioIdHasBeenSet = true; m_portfolioId = value; } 114 115 /** 116 * <p>The portfolio identifier.</p> 117 */ SetPortfolioId(Aws::String && value)118 inline void SetPortfolioId(Aws::String&& value) { m_portfolioIdHasBeenSet = true; m_portfolioId = std::move(value); } 119 120 /** 121 * <p>The portfolio identifier.</p> 122 */ SetPortfolioId(const char * value)123 inline void SetPortfolioId(const char* value) { m_portfolioIdHasBeenSet = true; m_portfolioId.assign(value); } 124 125 /** 126 * <p>The portfolio identifier.</p> 127 */ WithPortfolioId(const Aws::String & value)128 inline SearchProductsAsAdminRequest& WithPortfolioId(const Aws::String& value) { SetPortfolioId(value); return *this;} 129 130 /** 131 * <p>The portfolio identifier.</p> 132 */ WithPortfolioId(Aws::String && value)133 inline SearchProductsAsAdminRequest& WithPortfolioId(Aws::String&& value) { SetPortfolioId(std::move(value)); return *this;} 134 135 /** 136 * <p>The portfolio identifier.</p> 137 */ WithPortfolioId(const char * value)138 inline SearchProductsAsAdminRequest& WithPortfolioId(const char* value) { SetPortfolioId(value); return *this;} 139 140 141 /** 142 * <p>The search filters. If no search filters are specified, the output includes 143 * all products to which the administrator has access.</p> 144 */ GetFilters()145 inline const Aws::Map<ProductViewFilterBy, Aws::Vector<Aws::String>>& GetFilters() const{ return m_filters; } 146 147 /** 148 * <p>The search filters. If no search filters are specified, the output includes 149 * all products to which the administrator has access.</p> 150 */ FiltersHasBeenSet()151 inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; } 152 153 /** 154 * <p>The search filters. If no search filters are specified, the output includes 155 * all products to which the administrator has access.</p> 156 */ SetFilters(const Aws::Map<ProductViewFilterBy,Aws::Vector<Aws::String>> & value)157 inline void SetFilters(const Aws::Map<ProductViewFilterBy, Aws::Vector<Aws::String>>& value) { m_filtersHasBeenSet = true; m_filters = value; } 158 159 /** 160 * <p>The search filters. If no search filters are specified, the output includes 161 * all products to which the administrator has access.</p> 162 */ SetFilters(Aws::Map<ProductViewFilterBy,Aws::Vector<Aws::String>> && value)163 inline void SetFilters(Aws::Map<ProductViewFilterBy, Aws::Vector<Aws::String>>&& value) { m_filtersHasBeenSet = true; m_filters = std::move(value); } 164 165 /** 166 * <p>The search filters. If no search filters are specified, the output includes 167 * all products to which the administrator has access.</p> 168 */ WithFilters(const Aws::Map<ProductViewFilterBy,Aws::Vector<Aws::String>> & value)169 inline SearchProductsAsAdminRequest& WithFilters(const Aws::Map<ProductViewFilterBy, Aws::Vector<Aws::String>>& value) { SetFilters(value); return *this;} 170 171 /** 172 * <p>The search filters. If no search filters are specified, the output includes 173 * all products to which the administrator has access.</p> 174 */ WithFilters(Aws::Map<ProductViewFilterBy,Aws::Vector<Aws::String>> && value)175 inline SearchProductsAsAdminRequest& WithFilters(Aws::Map<ProductViewFilterBy, Aws::Vector<Aws::String>>&& value) { SetFilters(std::move(value)); return *this;} 176 177 /** 178 * <p>The search filters. If no search filters are specified, the output includes 179 * all products to which the administrator has access.</p> 180 */ AddFilters(const ProductViewFilterBy & key,const Aws::Vector<Aws::String> & value)181 inline SearchProductsAsAdminRequest& AddFilters(const ProductViewFilterBy& key, const Aws::Vector<Aws::String>& value) { m_filtersHasBeenSet = true; m_filters.emplace(key, value); return *this; } 182 183 /** 184 * <p>The search filters. If no search filters are specified, the output includes 185 * all products to which the administrator has access.</p> 186 */ AddFilters(ProductViewFilterBy && key,const Aws::Vector<Aws::String> & value)187 inline SearchProductsAsAdminRequest& AddFilters(ProductViewFilterBy&& key, const Aws::Vector<Aws::String>& value) { m_filtersHasBeenSet = true; m_filters.emplace(std::move(key), value); return *this; } 188 189 /** 190 * <p>The search filters. If no search filters are specified, the output includes 191 * all products to which the administrator has access.</p> 192 */ AddFilters(const ProductViewFilterBy & key,Aws::Vector<Aws::String> && value)193 inline SearchProductsAsAdminRequest& AddFilters(const ProductViewFilterBy& key, Aws::Vector<Aws::String>&& value) { m_filtersHasBeenSet = true; m_filters.emplace(key, std::move(value)); return *this; } 194 195 /** 196 * <p>The search filters. If no search filters are specified, the output includes 197 * all products to which the administrator has access.</p> 198 */ AddFilters(ProductViewFilterBy && key,Aws::Vector<Aws::String> && value)199 inline SearchProductsAsAdminRequest& AddFilters(ProductViewFilterBy&& key, Aws::Vector<Aws::String>&& value) { m_filtersHasBeenSet = true; m_filters.emplace(std::move(key), std::move(value)); return *this; } 200 201 202 /** 203 * <p>The sort field. If no value is specified, the results are not sorted.</p> 204 */ GetSortBy()205 inline const ProductViewSortBy& GetSortBy() const{ return m_sortBy; } 206 207 /** 208 * <p>The sort field. If no value is specified, the results are not sorted.</p> 209 */ SortByHasBeenSet()210 inline bool SortByHasBeenSet() const { return m_sortByHasBeenSet; } 211 212 /** 213 * <p>The sort field. If no value is specified, the results are not sorted.</p> 214 */ SetSortBy(const ProductViewSortBy & value)215 inline void SetSortBy(const ProductViewSortBy& value) { m_sortByHasBeenSet = true; m_sortBy = value; } 216 217 /** 218 * <p>The sort field. If no value is specified, the results are not sorted.</p> 219 */ SetSortBy(ProductViewSortBy && value)220 inline void SetSortBy(ProductViewSortBy&& value) { m_sortByHasBeenSet = true; m_sortBy = std::move(value); } 221 222 /** 223 * <p>The sort field. If no value is specified, the results are not sorted.</p> 224 */ WithSortBy(const ProductViewSortBy & value)225 inline SearchProductsAsAdminRequest& WithSortBy(const ProductViewSortBy& value) { SetSortBy(value); return *this;} 226 227 /** 228 * <p>The sort field. If no value is specified, the results are not sorted.</p> 229 */ WithSortBy(ProductViewSortBy && value)230 inline SearchProductsAsAdminRequest& WithSortBy(ProductViewSortBy&& value) { SetSortBy(std::move(value)); return *this;} 231 232 233 /** 234 * <p>The sort order. If no value is specified, the results are not sorted.</p> 235 */ GetSortOrder()236 inline const SortOrder& GetSortOrder() const{ return m_sortOrder; } 237 238 /** 239 * <p>The sort order. If no value is specified, the results are not sorted.</p> 240 */ SortOrderHasBeenSet()241 inline bool SortOrderHasBeenSet() const { return m_sortOrderHasBeenSet; } 242 243 /** 244 * <p>The sort order. If no value is specified, the results are not sorted.</p> 245 */ SetSortOrder(const SortOrder & value)246 inline void SetSortOrder(const SortOrder& value) { m_sortOrderHasBeenSet = true; m_sortOrder = value; } 247 248 /** 249 * <p>The sort order. If no value is specified, the results are not sorted.</p> 250 */ SetSortOrder(SortOrder && value)251 inline void SetSortOrder(SortOrder&& value) { m_sortOrderHasBeenSet = true; m_sortOrder = std::move(value); } 252 253 /** 254 * <p>The sort order. If no value is specified, the results are not sorted.</p> 255 */ WithSortOrder(const SortOrder & value)256 inline SearchProductsAsAdminRequest& WithSortOrder(const SortOrder& value) { SetSortOrder(value); return *this;} 257 258 /** 259 * <p>The sort order. If no value is specified, the results are not sorted.</p> 260 */ WithSortOrder(SortOrder && value)261 inline SearchProductsAsAdminRequest& WithSortOrder(SortOrder&& value) { SetSortOrder(std::move(value)); return *this;} 262 263 264 /** 265 * <p>The page token for the next set of results. To retrieve the first set of 266 * results, use null.</p> 267 */ GetPageToken()268 inline const Aws::String& GetPageToken() const{ return m_pageToken; } 269 270 /** 271 * <p>The page token for the next set of results. To retrieve the first set of 272 * results, use null.</p> 273 */ PageTokenHasBeenSet()274 inline bool PageTokenHasBeenSet() const { return m_pageTokenHasBeenSet; } 275 276 /** 277 * <p>The page token for the next set of results. To retrieve the first set of 278 * results, use null.</p> 279 */ SetPageToken(const Aws::String & value)280 inline void SetPageToken(const Aws::String& value) { m_pageTokenHasBeenSet = true; m_pageToken = value; } 281 282 /** 283 * <p>The page token for the next set of results. To retrieve the first set of 284 * results, use null.</p> 285 */ SetPageToken(Aws::String && value)286 inline void SetPageToken(Aws::String&& value) { m_pageTokenHasBeenSet = true; m_pageToken = std::move(value); } 287 288 /** 289 * <p>The page token for the next set of results. To retrieve the first set of 290 * results, use null.</p> 291 */ SetPageToken(const char * value)292 inline void SetPageToken(const char* value) { m_pageTokenHasBeenSet = true; m_pageToken.assign(value); } 293 294 /** 295 * <p>The page token for the next set of results. To retrieve the first set of 296 * results, use null.</p> 297 */ WithPageToken(const Aws::String & value)298 inline SearchProductsAsAdminRequest& WithPageToken(const Aws::String& value) { SetPageToken(value); return *this;} 299 300 /** 301 * <p>The page token for the next set of results. To retrieve the first set of 302 * results, use null.</p> 303 */ WithPageToken(Aws::String && value)304 inline SearchProductsAsAdminRequest& WithPageToken(Aws::String&& value) { SetPageToken(std::move(value)); return *this;} 305 306 /** 307 * <p>The page token for the next set of results. To retrieve the first set of 308 * results, use null.</p> 309 */ WithPageToken(const char * value)310 inline SearchProductsAsAdminRequest& WithPageToken(const char* value) { SetPageToken(value); return *this;} 311 312 313 /** 314 * <p>The maximum number of items to return with this call.</p> 315 */ GetPageSize()316 inline int GetPageSize() const{ return m_pageSize; } 317 318 /** 319 * <p>The maximum number of items to return with this call.</p> 320 */ PageSizeHasBeenSet()321 inline bool PageSizeHasBeenSet() const { return m_pageSizeHasBeenSet; } 322 323 /** 324 * <p>The maximum number of items to return with this call.</p> 325 */ SetPageSize(int value)326 inline void SetPageSize(int value) { m_pageSizeHasBeenSet = true; m_pageSize = value; } 327 328 /** 329 * <p>The maximum number of items to return with this call.</p> 330 */ WithPageSize(int value)331 inline SearchProductsAsAdminRequest& WithPageSize(int value) { SetPageSize(value); return *this;} 332 333 334 /** 335 * <p>Access level of the source of the product.</p> 336 */ GetProductSource()337 inline const ProductSource& GetProductSource() const{ return m_productSource; } 338 339 /** 340 * <p>Access level of the source of the product.</p> 341 */ ProductSourceHasBeenSet()342 inline bool ProductSourceHasBeenSet() const { return m_productSourceHasBeenSet; } 343 344 /** 345 * <p>Access level of the source of the product.</p> 346 */ SetProductSource(const ProductSource & value)347 inline void SetProductSource(const ProductSource& value) { m_productSourceHasBeenSet = true; m_productSource = value; } 348 349 /** 350 * <p>Access level of the source of the product.</p> 351 */ SetProductSource(ProductSource && value)352 inline void SetProductSource(ProductSource&& value) { m_productSourceHasBeenSet = true; m_productSource = std::move(value); } 353 354 /** 355 * <p>Access level of the source of the product.</p> 356 */ WithProductSource(const ProductSource & value)357 inline SearchProductsAsAdminRequest& WithProductSource(const ProductSource& value) { SetProductSource(value); return *this;} 358 359 /** 360 * <p>Access level of the source of the product.</p> 361 */ WithProductSource(ProductSource && value)362 inline SearchProductsAsAdminRequest& WithProductSource(ProductSource&& value) { SetProductSource(std::move(value)); return *this;} 363 364 private: 365 366 Aws::String m_acceptLanguage; 367 bool m_acceptLanguageHasBeenSet; 368 369 Aws::String m_portfolioId; 370 bool m_portfolioIdHasBeenSet; 371 372 Aws::Map<ProductViewFilterBy, Aws::Vector<Aws::String>> m_filters; 373 bool m_filtersHasBeenSet; 374 375 ProductViewSortBy m_sortBy; 376 bool m_sortByHasBeenSet; 377 378 SortOrder m_sortOrder; 379 bool m_sortOrderHasBeenSet; 380 381 Aws::String m_pageToken; 382 bool m_pageTokenHasBeenSet; 383 384 int m_pageSize; 385 bool m_pageSizeHasBeenSet; 386 387 ProductSource m_productSource; 388 bool m_productSourceHasBeenSet; 389 }; 390 391 } // namespace Model 392 } // namespace ServiceCatalog 393 } // namespace Aws 394