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/servicecatalog/model/ProvisionedProductPlanType.h> 11 #include <aws/core/utils/memory/stl/AWSVector.h> 12 #include <aws/servicecatalog/model/UpdateProvisioningParameter.h> 13 #include <aws/servicecatalog/model/Tag.h> 14 #include <utility> 15 #include <aws/core/utils/UUID.h> 16 17 namespace Aws 18 { 19 namespace ServiceCatalog 20 { 21 namespace Model 22 { 23 24 /** 25 */ 26 class AWS_SERVICECATALOG_API CreateProvisionedProductPlanRequest : public ServiceCatalogRequest 27 { 28 public: 29 CreateProvisionedProductPlanRequest(); 30 31 // Service request name is the Operation name which will send this request out, 32 // each operation should has unique request name, so that we can get operation's name from this request. 33 // Note: this is not true for response, multiple operations may have the same response name, 34 // so we can not get operation's name from response. GetServiceRequestName()35 inline virtual const char* GetServiceRequestName() const override { return "CreateProvisionedProductPlan"; } 36 37 Aws::String SerializePayload() const override; 38 39 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 40 41 42 /** 43 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 44 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 45 * Chinese</p> </li> </ul> 46 */ GetAcceptLanguage()47 inline const Aws::String& GetAcceptLanguage() const{ return m_acceptLanguage; } 48 49 /** 50 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 51 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 52 * Chinese</p> </li> </ul> 53 */ AcceptLanguageHasBeenSet()54 inline bool AcceptLanguageHasBeenSet() const { return m_acceptLanguageHasBeenSet; } 55 56 /** 57 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 58 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 59 * Chinese</p> </li> </ul> 60 */ SetAcceptLanguage(const Aws::String & value)61 inline void SetAcceptLanguage(const Aws::String& value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage = value; } 62 63 /** 64 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 65 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 66 * Chinese</p> </li> </ul> 67 */ SetAcceptLanguage(Aws::String && value)68 inline void SetAcceptLanguage(Aws::String&& value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage = std::move(value); } 69 70 /** 71 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 72 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 73 * Chinese</p> </li> </ul> 74 */ SetAcceptLanguage(const char * value)75 inline void SetAcceptLanguage(const char* value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage.assign(value); } 76 77 /** 78 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 79 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 80 * Chinese</p> </li> </ul> 81 */ WithAcceptLanguage(const Aws::String & value)82 inline CreateProvisionedProductPlanRequest& WithAcceptLanguage(const Aws::String& value) { SetAcceptLanguage(value); return *this;} 83 84 /** 85 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 86 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 87 * Chinese</p> </li> </ul> 88 */ WithAcceptLanguage(Aws::String && value)89 inline CreateProvisionedProductPlanRequest& WithAcceptLanguage(Aws::String&& value) { SetAcceptLanguage(std::move(value)); return *this;} 90 91 /** 92 * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p> 93 * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> - 94 * Chinese</p> </li> </ul> 95 */ WithAcceptLanguage(const char * value)96 inline CreateProvisionedProductPlanRequest& WithAcceptLanguage(const char* value) { SetAcceptLanguage(value); return *this;} 97 98 99 /** 100 * <p>The name of the plan.</p> 101 */ GetPlanName()102 inline const Aws::String& GetPlanName() const{ return m_planName; } 103 104 /** 105 * <p>The name of the plan.</p> 106 */ PlanNameHasBeenSet()107 inline bool PlanNameHasBeenSet() const { return m_planNameHasBeenSet; } 108 109 /** 110 * <p>The name of the plan.</p> 111 */ SetPlanName(const Aws::String & value)112 inline void SetPlanName(const Aws::String& value) { m_planNameHasBeenSet = true; m_planName = value; } 113 114 /** 115 * <p>The name of the plan.</p> 116 */ SetPlanName(Aws::String && value)117 inline void SetPlanName(Aws::String&& value) { m_planNameHasBeenSet = true; m_planName = std::move(value); } 118 119 /** 120 * <p>The name of the plan.</p> 121 */ SetPlanName(const char * value)122 inline void SetPlanName(const char* value) { m_planNameHasBeenSet = true; m_planName.assign(value); } 123 124 /** 125 * <p>The name of the plan.</p> 126 */ WithPlanName(const Aws::String & value)127 inline CreateProvisionedProductPlanRequest& WithPlanName(const Aws::String& value) { SetPlanName(value); return *this;} 128 129 /** 130 * <p>The name of the plan.</p> 131 */ WithPlanName(Aws::String && value)132 inline CreateProvisionedProductPlanRequest& WithPlanName(Aws::String&& value) { SetPlanName(std::move(value)); return *this;} 133 134 /** 135 * <p>The name of the plan.</p> 136 */ WithPlanName(const char * value)137 inline CreateProvisionedProductPlanRequest& WithPlanName(const char* value) { SetPlanName(value); return *this;} 138 139 140 /** 141 * <p>The plan type.</p> 142 */ GetPlanType()143 inline const ProvisionedProductPlanType& GetPlanType() const{ return m_planType; } 144 145 /** 146 * <p>The plan type.</p> 147 */ PlanTypeHasBeenSet()148 inline bool PlanTypeHasBeenSet() const { return m_planTypeHasBeenSet; } 149 150 /** 151 * <p>The plan type.</p> 152 */ SetPlanType(const ProvisionedProductPlanType & value)153 inline void SetPlanType(const ProvisionedProductPlanType& value) { m_planTypeHasBeenSet = true; m_planType = value; } 154 155 /** 156 * <p>The plan type.</p> 157 */ SetPlanType(ProvisionedProductPlanType && value)158 inline void SetPlanType(ProvisionedProductPlanType&& value) { m_planTypeHasBeenSet = true; m_planType = std::move(value); } 159 160 /** 161 * <p>The plan type.</p> 162 */ WithPlanType(const ProvisionedProductPlanType & value)163 inline CreateProvisionedProductPlanRequest& WithPlanType(const ProvisionedProductPlanType& value) { SetPlanType(value); return *this;} 164 165 /** 166 * <p>The plan type.</p> 167 */ WithPlanType(ProvisionedProductPlanType && value)168 inline CreateProvisionedProductPlanRequest& WithPlanType(ProvisionedProductPlanType&& value) { SetPlanType(std::move(value)); return *this;} 169 170 171 /** 172 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 173 * stack-related events.</p> 174 */ GetNotificationArns()175 inline const Aws::Vector<Aws::String>& GetNotificationArns() const{ return m_notificationArns; } 176 177 /** 178 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 179 * stack-related events.</p> 180 */ NotificationArnsHasBeenSet()181 inline bool NotificationArnsHasBeenSet() const { return m_notificationArnsHasBeenSet; } 182 183 /** 184 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 185 * stack-related events.</p> 186 */ SetNotificationArns(const Aws::Vector<Aws::String> & value)187 inline void SetNotificationArns(const Aws::Vector<Aws::String>& value) { m_notificationArnsHasBeenSet = true; m_notificationArns = value; } 188 189 /** 190 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 191 * stack-related events.</p> 192 */ SetNotificationArns(Aws::Vector<Aws::String> && value)193 inline void SetNotificationArns(Aws::Vector<Aws::String>&& value) { m_notificationArnsHasBeenSet = true; m_notificationArns = std::move(value); } 194 195 /** 196 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 197 * stack-related events.</p> 198 */ WithNotificationArns(const Aws::Vector<Aws::String> & value)199 inline CreateProvisionedProductPlanRequest& WithNotificationArns(const Aws::Vector<Aws::String>& value) { SetNotificationArns(value); return *this;} 200 201 /** 202 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 203 * stack-related events.</p> 204 */ WithNotificationArns(Aws::Vector<Aws::String> && value)205 inline CreateProvisionedProductPlanRequest& WithNotificationArns(Aws::Vector<Aws::String>&& value) { SetNotificationArns(std::move(value)); return *this;} 206 207 /** 208 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 209 * stack-related events.</p> 210 */ AddNotificationArns(const Aws::String & value)211 inline CreateProvisionedProductPlanRequest& AddNotificationArns(const Aws::String& value) { m_notificationArnsHasBeenSet = true; m_notificationArns.push_back(value); return *this; } 212 213 /** 214 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 215 * stack-related events.</p> 216 */ AddNotificationArns(Aws::String && value)217 inline CreateProvisionedProductPlanRequest& AddNotificationArns(Aws::String&& value) { m_notificationArnsHasBeenSet = true; m_notificationArns.push_back(std::move(value)); return *this; } 218 219 /** 220 * <p>Passed to CloudFormation. The SNS topic ARNs to which to publish 221 * stack-related events.</p> 222 */ AddNotificationArns(const char * value)223 inline CreateProvisionedProductPlanRequest& AddNotificationArns(const char* value) { m_notificationArnsHasBeenSet = true; m_notificationArns.push_back(value); return *this; } 224 225 226 /** 227 * <p>The path identifier of the product. This value is optional if the product has 228 * a default path, and required if the product has more than one path. To list the 229 * paths for a product, use <a>ListLaunchPaths</a>.</p> 230 */ GetPathId()231 inline const Aws::String& GetPathId() const{ return m_pathId; } 232 233 /** 234 * <p>The path identifier of the product. This value is optional if the product has 235 * a default path, and required if the product has more than one path. To list the 236 * paths for a product, use <a>ListLaunchPaths</a>.</p> 237 */ PathIdHasBeenSet()238 inline bool PathIdHasBeenSet() const { return m_pathIdHasBeenSet; } 239 240 /** 241 * <p>The path identifier of the product. This value is optional if the product has 242 * a default path, and required if the product has more than one path. To list the 243 * paths for a product, use <a>ListLaunchPaths</a>.</p> 244 */ SetPathId(const Aws::String & value)245 inline void SetPathId(const Aws::String& value) { m_pathIdHasBeenSet = true; m_pathId = value; } 246 247 /** 248 * <p>The path identifier of the product. This value is optional if the product has 249 * a default path, and required if the product has more than one path. To list the 250 * paths for a product, use <a>ListLaunchPaths</a>.</p> 251 */ SetPathId(Aws::String && value)252 inline void SetPathId(Aws::String&& value) { m_pathIdHasBeenSet = true; m_pathId = std::move(value); } 253 254 /** 255 * <p>The path identifier of the product. This value is optional if the product has 256 * a default path, and required if the product has more than one path. To list the 257 * paths for a product, use <a>ListLaunchPaths</a>.</p> 258 */ SetPathId(const char * value)259 inline void SetPathId(const char* value) { m_pathIdHasBeenSet = true; m_pathId.assign(value); } 260 261 /** 262 * <p>The path identifier of the product. This value is optional if the product has 263 * a default path, and required if the product has more than one path. To list the 264 * paths for a product, use <a>ListLaunchPaths</a>.</p> 265 */ WithPathId(const Aws::String & value)266 inline CreateProvisionedProductPlanRequest& WithPathId(const Aws::String& value) { SetPathId(value); return *this;} 267 268 /** 269 * <p>The path identifier of the product. This value is optional if the product has 270 * a default path, and required if the product has more than one path. To list the 271 * paths for a product, use <a>ListLaunchPaths</a>.</p> 272 */ WithPathId(Aws::String && value)273 inline CreateProvisionedProductPlanRequest& WithPathId(Aws::String&& value) { SetPathId(std::move(value)); return *this;} 274 275 /** 276 * <p>The path identifier of the product. This value is optional if the product has 277 * a default path, and required if the product has more than one path. To list the 278 * paths for a product, use <a>ListLaunchPaths</a>.</p> 279 */ WithPathId(const char * value)280 inline CreateProvisionedProductPlanRequest& WithPathId(const char* value) { SetPathId(value); return *this;} 281 282 283 /** 284 * <p>The product identifier.</p> 285 */ GetProductId()286 inline const Aws::String& GetProductId() const{ return m_productId; } 287 288 /** 289 * <p>The product identifier.</p> 290 */ ProductIdHasBeenSet()291 inline bool ProductIdHasBeenSet() const { return m_productIdHasBeenSet; } 292 293 /** 294 * <p>The product identifier.</p> 295 */ SetProductId(const Aws::String & value)296 inline void SetProductId(const Aws::String& value) { m_productIdHasBeenSet = true; m_productId = value; } 297 298 /** 299 * <p>The product identifier.</p> 300 */ SetProductId(Aws::String && value)301 inline void SetProductId(Aws::String&& value) { m_productIdHasBeenSet = true; m_productId = std::move(value); } 302 303 /** 304 * <p>The product identifier.</p> 305 */ SetProductId(const char * value)306 inline void SetProductId(const char* value) { m_productIdHasBeenSet = true; m_productId.assign(value); } 307 308 /** 309 * <p>The product identifier.</p> 310 */ WithProductId(const Aws::String & value)311 inline CreateProvisionedProductPlanRequest& WithProductId(const Aws::String& value) { SetProductId(value); return *this;} 312 313 /** 314 * <p>The product identifier.</p> 315 */ WithProductId(Aws::String && value)316 inline CreateProvisionedProductPlanRequest& WithProductId(Aws::String&& value) { SetProductId(std::move(value)); return *this;} 317 318 /** 319 * <p>The product identifier.</p> 320 */ WithProductId(const char * value)321 inline CreateProvisionedProductPlanRequest& WithProductId(const char* value) { SetProductId(value); return *this;} 322 323 324 /** 325 * <p>A user-friendly name for the provisioned product. This value must be unique 326 * for the AWS account and cannot be updated after the product is provisioned.</p> 327 */ GetProvisionedProductName()328 inline const Aws::String& GetProvisionedProductName() const{ return m_provisionedProductName; } 329 330 /** 331 * <p>A user-friendly name for the provisioned product. This value must be unique 332 * for the AWS account and cannot be updated after the product is provisioned.</p> 333 */ ProvisionedProductNameHasBeenSet()334 inline bool ProvisionedProductNameHasBeenSet() const { return m_provisionedProductNameHasBeenSet; } 335 336 /** 337 * <p>A user-friendly name for the provisioned product. This value must be unique 338 * for the AWS account and cannot be updated after the product is provisioned.</p> 339 */ SetProvisionedProductName(const Aws::String & value)340 inline void SetProvisionedProductName(const Aws::String& value) { m_provisionedProductNameHasBeenSet = true; m_provisionedProductName = value; } 341 342 /** 343 * <p>A user-friendly name for the provisioned product. This value must be unique 344 * for the AWS account and cannot be updated after the product is provisioned.</p> 345 */ SetProvisionedProductName(Aws::String && value)346 inline void SetProvisionedProductName(Aws::String&& value) { m_provisionedProductNameHasBeenSet = true; m_provisionedProductName = std::move(value); } 347 348 /** 349 * <p>A user-friendly name for the provisioned product. This value must be unique 350 * for the AWS account and cannot be updated after the product is provisioned.</p> 351 */ SetProvisionedProductName(const char * value)352 inline void SetProvisionedProductName(const char* value) { m_provisionedProductNameHasBeenSet = true; m_provisionedProductName.assign(value); } 353 354 /** 355 * <p>A user-friendly name for the provisioned product. This value must be unique 356 * for the AWS account and cannot be updated after the product is provisioned.</p> 357 */ WithProvisionedProductName(const Aws::String & value)358 inline CreateProvisionedProductPlanRequest& WithProvisionedProductName(const Aws::String& value) { SetProvisionedProductName(value); return *this;} 359 360 /** 361 * <p>A user-friendly name for the provisioned product. This value must be unique 362 * for the AWS account and cannot be updated after the product is provisioned.</p> 363 */ WithProvisionedProductName(Aws::String && value)364 inline CreateProvisionedProductPlanRequest& WithProvisionedProductName(Aws::String&& value) { SetProvisionedProductName(std::move(value)); return *this;} 365 366 /** 367 * <p>A user-friendly name for the provisioned product. This value must be unique 368 * for the AWS account and cannot be updated after the product is provisioned.</p> 369 */ WithProvisionedProductName(const char * value)370 inline CreateProvisionedProductPlanRequest& WithProvisionedProductName(const char* value) { SetProvisionedProductName(value); return *this;} 371 372 373 /** 374 * <p>The identifier of the provisioning artifact.</p> 375 */ GetProvisioningArtifactId()376 inline const Aws::String& GetProvisioningArtifactId() const{ return m_provisioningArtifactId; } 377 378 /** 379 * <p>The identifier of the provisioning artifact.</p> 380 */ ProvisioningArtifactIdHasBeenSet()381 inline bool ProvisioningArtifactIdHasBeenSet() const { return m_provisioningArtifactIdHasBeenSet; } 382 383 /** 384 * <p>The identifier of the provisioning artifact.</p> 385 */ SetProvisioningArtifactId(const Aws::String & value)386 inline void SetProvisioningArtifactId(const Aws::String& value) { m_provisioningArtifactIdHasBeenSet = true; m_provisioningArtifactId = value; } 387 388 /** 389 * <p>The identifier of the provisioning artifact.</p> 390 */ SetProvisioningArtifactId(Aws::String && value)391 inline void SetProvisioningArtifactId(Aws::String&& value) { m_provisioningArtifactIdHasBeenSet = true; m_provisioningArtifactId = std::move(value); } 392 393 /** 394 * <p>The identifier of the provisioning artifact.</p> 395 */ SetProvisioningArtifactId(const char * value)396 inline void SetProvisioningArtifactId(const char* value) { m_provisioningArtifactIdHasBeenSet = true; m_provisioningArtifactId.assign(value); } 397 398 /** 399 * <p>The identifier of the provisioning artifact.</p> 400 */ WithProvisioningArtifactId(const Aws::String & value)401 inline CreateProvisionedProductPlanRequest& WithProvisioningArtifactId(const Aws::String& value) { SetProvisioningArtifactId(value); return *this;} 402 403 /** 404 * <p>The identifier of the provisioning artifact.</p> 405 */ WithProvisioningArtifactId(Aws::String && value)406 inline CreateProvisionedProductPlanRequest& WithProvisioningArtifactId(Aws::String&& value) { SetProvisioningArtifactId(std::move(value)); return *this;} 407 408 /** 409 * <p>The identifier of the provisioning artifact.</p> 410 */ WithProvisioningArtifactId(const char * value)411 inline CreateProvisionedProductPlanRequest& WithProvisioningArtifactId(const char* value) { SetProvisioningArtifactId(value); return *this;} 412 413 414 /** 415 * <p>Parameters specified by the administrator that are required for provisioning 416 * the product.</p> 417 */ GetProvisioningParameters()418 inline const Aws::Vector<UpdateProvisioningParameter>& GetProvisioningParameters() const{ return m_provisioningParameters; } 419 420 /** 421 * <p>Parameters specified by the administrator that are required for provisioning 422 * the product.</p> 423 */ ProvisioningParametersHasBeenSet()424 inline bool ProvisioningParametersHasBeenSet() const { return m_provisioningParametersHasBeenSet; } 425 426 /** 427 * <p>Parameters specified by the administrator that are required for provisioning 428 * the product.</p> 429 */ SetProvisioningParameters(const Aws::Vector<UpdateProvisioningParameter> & value)430 inline void SetProvisioningParameters(const Aws::Vector<UpdateProvisioningParameter>& value) { m_provisioningParametersHasBeenSet = true; m_provisioningParameters = value; } 431 432 /** 433 * <p>Parameters specified by the administrator that are required for provisioning 434 * the product.</p> 435 */ SetProvisioningParameters(Aws::Vector<UpdateProvisioningParameter> && value)436 inline void SetProvisioningParameters(Aws::Vector<UpdateProvisioningParameter>&& value) { m_provisioningParametersHasBeenSet = true; m_provisioningParameters = std::move(value); } 437 438 /** 439 * <p>Parameters specified by the administrator that are required for provisioning 440 * the product.</p> 441 */ WithProvisioningParameters(const Aws::Vector<UpdateProvisioningParameter> & value)442 inline CreateProvisionedProductPlanRequest& WithProvisioningParameters(const Aws::Vector<UpdateProvisioningParameter>& value) { SetProvisioningParameters(value); return *this;} 443 444 /** 445 * <p>Parameters specified by the administrator that are required for provisioning 446 * the product.</p> 447 */ WithProvisioningParameters(Aws::Vector<UpdateProvisioningParameter> && value)448 inline CreateProvisionedProductPlanRequest& WithProvisioningParameters(Aws::Vector<UpdateProvisioningParameter>&& value) { SetProvisioningParameters(std::move(value)); return *this;} 449 450 /** 451 * <p>Parameters specified by the administrator that are required for provisioning 452 * the product.</p> 453 */ AddProvisioningParameters(const UpdateProvisioningParameter & value)454 inline CreateProvisionedProductPlanRequest& AddProvisioningParameters(const UpdateProvisioningParameter& value) { m_provisioningParametersHasBeenSet = true; m_provisioningParameters.push_back(value); return *this; } 455 456 /** 457 * <p>Parameters specified by the administrator that are required for provisioning 458 * the product.</p> 459 */ AddProvisioningParameters(UpdateProvisioningParameter && value)460 inline CreateProvisionedProductPlanRequest& AddProvisioningParameters(UpdateProvisioningParameter&& value) { m_provisioningParametersHasBeenSet = true; m_provisioningParameters.push_back(std::move(value)); return *this; } 461 462 463 /** 464 * <p>A unique identifier that you provide to ensure idempotency. If multiple 465 * requests differ only by the idempotency token, the same response is returned for 466 * each repeated request.</p> 467 */ GetIdempotencyToken()468 inline const Aws::String& GetIdempotencyToken() const{ return m_idempotencyToken; } 469 470 /** 471 * <p>A unique identifier that you provide to ensure idempotency. If multiple 472 * requests differ only by the idempotency token, the same response is returned for 473 * each repeated request.</p> 474 */ IdempotencyTokenHasBeenSet()475 inline bool IdempotencyTokenHasBeenSet() const { return m_idempotencyTokenHasBeenSet; } 476 477 /** 478 * <p>A unique identifier that you provide to ensure idempotency. If multiple 479 * requests differ only by the idempotency token, the same response is returned for 480 * each repeated request.</p> 481 */ SetIdempotencyToken(const Aws::String & value)482 inline void SetIdempotencyToken(const Aws::String& value) { m_idempotencyTokenHasBeenSet = true; m_idempotencyToken = value; } 483 484 /** 485 * <p>A unique identifier that you provide to ensure idempotency. If multiple 486 * requests differ only by the idempotency token, the same response is returned for 487 * each repeated request.</p> 488 */ SetIdempotencyToken(Aws::String && value)489 inline void SetIdempotencyToken(Aws::String&& value) { m_idempotencyTokenHasBeenSet = true; m_idempotencyToken = std::move(value); } 490 491 /** 492 * <p>A unique identifier that you provide to ensure idempotency. If multiple 493 * requests differ only by the idempotency token, the same response is returned for 494 * each repeated request.</p> 495 */ SetIdempotencyToken(const char * value)496 inline void SetIdempotencyToken(const char* value) { m_idempotencyTokenHasBeenSet = true; m_idempotencyToken.assign(value); } 497 498 /** 499 * <p>A unique identifier that you provide to ensure idempotency. If multiple 500 * requests differ only by the idempotency token, the same response is returned for 501 * each repeated request.</p> 502 */ WithIdempotencyToken(const Aws::String & value)503 inline CreateProvisionedProductPlanRequest& WithIdempotencyToken(const Aws::String& value) { SetIdempotencyToken(value); return *this;} 504 505 /** 506 * <p>A unique identifier that you provide to ensure idempotency. If multiple 507 * requests differ only by the idempotency token, the same response is returned for 508 * each repeated request.</p> 509 */ WithIdempotencyToken(Aws::String && value)510 inline CreateProvisionedProductPlanRequest& WithIdempotencyToken(Aws::String&& value) { SetIdempotencyToken(std::move(value)); return *this;} 511 512 /** 513 * <p>A unique identifier that you provide to ensure idempotency. If multiple 514 * requests differ only by the idempotency token, the same response is returned for 515 * each repeated request.</p> 516 */ WithIdempotencyToken(const char * value)517 inline CreateProvisionedProductPlanRequest& WithIdempotencyToken(const char* value) { SetIdempotencyToken(value); return *this;} 518 519 520 /** 521 * <p>One or more tags.</p> <p>If the plan is for an existing provisioned product, 522 * the product must have a <code>RESOURCE_UPDATE</code> constraint with 523 * <code>TagUpdatesOnProvisionedProduct</code> set to <code>ALLOWED</code> to allow 524 * tag updates.</p> 525 */ GetTags()526 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; } 527 528 /** 529 * <p>One or more tags.</p> <p>If the plan is for an existing provisioned product, 530 * the product must have a <code>RESOURCE_UPDATE</code> constraint with 531 * <code>TagUpdatesOnProvisionedProduct</code> set to <code>ALLOWED</code> to allow 532 * tag updates.</p> 533 */ TagsHasBeenSet()534 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 535 536 /** 537 * <p>One or more tags.</p> <p>If the plan is for an existing provisioned product, 538 * the product must have a <code>RESOURCE_UPDATE</code> constraint with 539 * <code>TagUpdatesOnProvisionedProduct</code> set to <code>ALLOWED</code> to allow 540 * tag updates.</p> 541 */ SetTags(const Aws::Vector<Tag> & value)542 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; } 543 544 /** 545 * <p>One or more tags.</p> <p>If the plan is for an existing provisioned product, 546 * the product must have a <code>RESOURCE_UPDATE</code> constraint with 547 * <code>TagUpdatesOnProvisionedProduct</code> set to <code>ALLOWED</code> to allow 548 * tag updates.</p> 549 */ SetTags(Aws::Vector<Tag> && value)550 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 551 552 /** 553 * <p>One or more tags.</p> <p>If the plan is for an existing provisioned product, 554 * the product must have a <code>RESOURCE_UPDATE</code> constraint with 555 * <code>TagUpdatesOnProvisionedProduct</code> set to <code>ALLOWED</code> to allow 556 * tag updates.</p> 557 */ WithTags(const Aws::Vector<Tag> & value)558 inline CreateProvisionedProductPlanRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;} 559 560 /** 561 * <p>One or more tags.</p> <p>If the plan is for an existing provisioned product, 562 * the product must have a <code>RESOURCE_UPDATE</code> constraint with 563 * <code>TagUpdatesOnProvisionedProduct</code> set to <code>ALLOWED</code> to allow 564 * tag updates.</p> 565 */ WithTags(Aws::Vector<Tag> && value)566 inline CreateProvisionedProductPlanRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;} 567 568 /** 569 * <p>One or more tags.</p> <p>If the plan is for an existing provisioned product, 570 * the product must have a <code>RESOURCE_UPDATE</code> constraint with 571 * <code>TagUpdatesOnProvisionedProduct</code> set to <code>ALLOWED</code> to allow 572 * tag updates.</p> 573 */ AddTags(const Tag & value)574 inline CreateProvisionedProductPlanRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } 575 576 /** 577 * <p>One or more tags.</p> <p>If the plan is for an existing provisioned product, 578 * the product must have a <code>RESOURCE_UPDATE</code> constraint with 579 * <code>TagUpdatesOnProvisionedProduct</code> set to <code>ALLOWED</code> to allow 580 * tag updates.</p> 581 */ AddTags(Tag && value)582 inline CreateProvisionedProductPlanRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } 583 584 private: 585 586 Aws::String m_acceptLanguage; 587 bool m_acceptLanguageHasBeenSet; 588 589 Aws::String m_planName; 590 bool m_planNameHasBeenSet; 591 592 ProvisionedProductPlanType m_planType; 593 bool m_planTypeHasBeenSet; 594 595 Aws::Vector<Aws::String> m_notificationArns; 596 bool m_notificationArnsHasBeenSet; 597 598 Aws::String m_pathId; 599 bool m_pathIdHasBeenSet; 600 601 Aws::String m_productId; 602 bool m_productIdHasBeenSet; 603 604 Aws::String m_provisionedProductName; 605 bool m_provisionedProductNameHasBeenSet; 606 607 Aws::String m_provisioningArtifactId; 608 bool m_provisioningArtifactIdHasBeenSet; 609 610 Aws::Vector<UpdateProvisioningParameter> m_provisioningParameters; 611 bool m_provisioningParametersHasBeenSet; 612 613 Aws::String m_idempotencyToken; 614 bool m_idempotencyTokenHasBeenSet; 615 616 Aws::Vector<Tag> m_tags; 617 bool m_tagsHasBeenSet; 618 }; 619 620 } // namespace Model 621 } // namespace ServiceCatalog 622 } // namespace Aws 623