/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace LicenseManager { namespace Model { /** */ class CheckoutLicenseRequest : public LicenseManagerRequest { public: AWS_LICENSEMANAGER_API CheckoutLicenseRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CheckoutLicense"; } AWS_LICENSEMANAGER_API Aws::String SerializePayload() const override; AWS_LICENSEMANAGER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

Product SKU.

*/ inline const Aws::String& GetProductSKU() const{ return m_productSKU; } /** *

Product SKU.

*/ inline bool ProductSKUHasBeenSet() const { return m_productSKUHasBeenSet; } /** *

Product SKU.

*/ inline void SetProductSKU(const Aws::String& value) { m_productSKUHasBeenSet = true; m_productSKU = value; } /** *

Product SKU.

*/ inline void SetProductSKU(Aws::String&& value) { m_productSKUHasBeenSet = true; m_productSKU = std::move(value); } /** *

Product SKU.

*/ inline void SetProductSKU(const char* value) { m_productSKUHasBeenSet = true; m_productSKU.assign(value); } /** *

Product SKU.

*/ inline CheckoutLicenseRequest& WithProductSKU(const Aws::String& value) { SetProductSKU(value); return *this;} /** *

Product SKU.

*/ inline CheckoutLicenseRequest& WithProductSKU(Aws::String&& value) { SetProductSKU(std::move(value)); return *this;} /** *

Product SKU.

*/ inline CheckoutLicenseRequest& WithProductSKU(const char* value) { SetProductSKU(value); return *this;} /** *

Checkout type.

*/ inline const CheckoutType& GetCheckoutType() const{ return m_checkoutType; } /** *

Checkout type.

*/ inline bool CheckoutTypeHasBeenSet() const { return m_checkoutTypeHasBeenSet; } /** *

Checkout type.

*/ inline void SetCheckoutType(const CheckoutType& value) { m_checkoutTypeHasBeenSet = true; m_checkoutType = value; } /** *

Checkout type.

*/ inline void SetCheckoutType(CheckoutType&& value) { m_checkoutTypeHasBeenSet = true; m_checkoutType = std::move(value); } /** *

Checkout type.

*/ inline CheckoutLicenseRequest& WithCheckoutType(const CheckoutType& value) { SetCheckoutType(value); return *this;} /** *

Checkout type.

*/ inline CheckoutLicenseRequest& WithCheckoutType(CheckoutType&& value) { SetCheckoutType(std::move(value)); return *this;} /** *

Key fingerprint identifying the license.

*/ inline const Aws::String& GetKeyFingerprint() const{ return m_keyFingerprint; } /** *

Key fingerprint identifying the license.

*/ inline bool KeyFingerprintHasBeenSet() const { return m_keyFingerprintHasBeenSet; } /** *

Key fingerprint identifying the license.

*/ inline void SetKeyFingerprint(const Aws::String& value) { m_keyFingerprintHasBeenSet = true; m_keyFingerprint = value; } /** *

Key fingerprint identifying the license.

*/ inline void SetKeyFingerprint(Aws::String&& value) { m_keyFingerprintHasBeenSet = true; m_keyFingerprint = std::move(value); } /** *

Key fingerprint identifying the license.

*/ inline void SetKeyFingerprint(const char* value) { m_keyFingerprintHasBeenSet = true; m_keyFingerprint.assign(value); } /** *

Key fingerprint identifying the license.

*/ inline CheckoutLicenseRequest& WithKeyFingerprint(const Aws::String& value) { SetKeyFingerprint(value); return *this;} /** *

Key fingerprint identifying the license.

*/ inline CheckoutLicenseRequest& WithKeyFingerprint(Aws::String&& value) { SetKeyFingerprint(std::move(value)); return *this;} /** *

Key fingerprint identifying the license.

*/ inline CheckoutLicenseRequest& WithKeyFingerprint(const char* value) { SetKeyFingerprint(value); return *this;} /** *

License entitlements.

*/ inline const Aws::Vector& GetEntitlements() const{ return m_entitlements; } /** *

License entitlements.

*/ inline bool EntitlementsHasBeenSet() const { return m_entitlementsHasBeenSet; } /** *

License entitlements.

*/ inline void SetEntitlements(const Aws::Vector& value) { m_entitlementsHasBeenSet = true; m_entitlements = value; } /** *

License entitlements.

*/ inline void SetEntitlements(Aws::Vector&& value) { m_entitlementsHasBeenSet = true; m_entitlements = std::move(value); } /** *

License entitlements.

*/ inline CheckoutLicenseRequest& WithEntitlements(const Aws::Vector& value) { SetEntitlements(value); return *this;} /** *

License entitlements.

*/ inline CheckoutLicenseRequest& WithEntitlements(Aws::Vector&& value) { SetEntitlements(std::move(value)); return *this;} /** *

License entitlements.

*/ inline CheckoutLicenseRequest& AddEntitlements(const EntitlementData& value) { m_entitlementsHasBeenSet = true; m_entitlements.push_back(value); return *this; } /** *

License entitlements.

*/ inline CheckoutLicenseRequest& AddEntitlements(EntitlementData&& value) { m_entitlementsHasBeenSet = true; m_entitlements.push_back(std::move(value)); return *this; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline const Aws::String& GetClientToken() const{ return m_clientToken; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline CheckoutLicenseRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline CheckoutLicenseRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency * of the request.

*/ inline CheckoutLicenseRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} /** *

License beneficiary.

*/ inline const Aws::String& GetBeneficiary() const{ return m_beneficiary; } /** *

License beneficiary.

*/ inline bool BeneficiaryHasBeenSet() const { return m_beneficiaryHasBeenSet; } /** *

License beneficiary.

*/ inline void SetBeneficiary(const Aws::String& value) { m_beneficiaryHasBeenSet = true; m_beneficiary = value; } /** *

License beneficiary.

*/ inline void SetBeneficiary(Aws::String&& value) { m_beneficiaryHasBeenSet = true; m_beneficiary = std::move(value); } /** *

License beneficiary.

*/ inline void SetBeneficiary(const char* value) { m_beneficiaryHasBeenSet = true; m_beneficiary.assign(value); } /** *

License beneficiary.

*/ inline CheckoutLicenseRequest& WithBeneficiary(const Aws::String& value) { SetBeneficiary(value); return *this;} /** *

License beneficiary.

*/ inline CheckoutLicenseRequest& WithBeneficiary(Aws::String&& value) { SetBeneficiary(std::move(value)); return *this;} /** *

License beneficiary.

*/ inline CheckoutLicenseRequest& WithBeneficiary(const char* value) { SetBeneficiary(value); return *this;} /** *

Node ID.

*/ inline const Aws::String& GetNodeId() const{ return m_nodeId; } /** *

Node ID.

*/ inline bool NodeIdHasBeenSet() const { return m_nodeIdHasBeenSet; } /** *

Node ID.

*/ inline void SetNodeId(const Aws::String& value) { m_nodeIdHasBeenSet = true; m_nodeId = value; } /** *

Node ID.

*/ inline void SetNodeId(Aws::String&& value) { m_nodeIdHasBeenSet = true; m_nodeId = std::move(value); } /** *

Node ID.

*/ inline void SetNodeId(const char* value) { m_nodeIdHasBeenSet = true; m_nodeId.assign(value); } /** *

Node ID.

*/ inline CheckoutLicenseRequest& WithNodeId(const Aws::String& value) { SetNodeId(value); return *this;} /** *

Node ID.

*/ inline CheckoutLicenseRequest& WithNodeId(Aws::String&& value) { SetNodeId(std::move(value)); return *this;} /** *

Node ID.

*/ inline CheckoutLicenseRequest& WithNodeId(const char* value) { SetNodeId(value); return *this;} private: Aws::String m_productSKU; bool m_productSKUHasBeenSet = false; CheckoutType m_checkoutType; bool m_checkoutTypeHasBeenSet = false; Aws::String m_keyFingerprint; bool m_keyFingerprintHasBeenSet = false; Aws::Vector m_entitlements; bool m_entitlementsHasBeenSet = false; Aws::String m_clientToken; bool m_clientTokenHasBeenSet = false; Aws::String m_beneficiary; bool m_beneficiaryHasBeenSet = false; Aws::String m_nodeId; bool m_nodeIdHasBeenSet = false; }; } // namespace Model } // namespace LicenseManager } // namespace Aws