/** * 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 #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace LicenseManager { namespace Model { class GetLicenseConfigurationResult { public: AWS_LICENSEMANAGER_API GetLicenseConfigurationResult(); AWS_LICENSEMANAGER_API GetLicenseConfigurationResult(const Aws::AmazonWebServiceResult& result); AWS_LICENSEMANAGER_API GetLicenseConfigurationResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

Unique ID for the license configuration.

*/ inline const Aws::String& GetLicenseConfigurationId() const{ return m_licenseConfigurationId; } /** *

Unique ID for the license configuration.

*/ inline void SetLicenseConfigurationId(const Aws::String& value) { m_licenseConfigurationId = value; } /** *

Unique ID for the license configuration.

*/ inline void SetLicenseConfigurationId(Aws::String&& value) { m_licenseConfigurationId = std::move(value); } /** *

Unique ID for the license configuration.

*/ inline void SetLicenseConfigurationId(const char* value) { m_licenseConfigurationId.assign(value); } /** *

Unique ID for the license configuration.

*/ inline GetLicenseConfigurationResult& WithLicenseConfigurationId(const Aws::String& value) { SetLicenseConfigurationId(value); return *this;} /** *

Unique ID for the license configuration.

*/ inline GetLicenseConfigurationResult& WithLicenseConfigurationId(Aws::String&& value) { SetLicenseConfigurationId(std::move(value)); return *this;} /** *

Unique ID for the license configuration.

*/ inline GetLicenseConfigurationResult& WithLicenseConfigurationId(const char* value) { SetLicenseConfigurationId(value); return *this;} /** *

Amazon Resource Name (ARN) of the license configuration.

*/ inline const Aws::String& GetLicenseConfigurationArn() const{ return m_licenseConfigurationArn; } /** *

Amazon Resource Name (ARN) of the license configuration.

*/ inline void SetLicenseConfigurationArn(const Aws::String& value) { m_licenseConfigurationArn = value; } /** *

Amazon Resource Name (ARN) of the license configuration.

*/ inline void SetLicenseConfigurationArn(Aws::String&& value) { m_licenseConfigurationArn = std::move(value); } /** *

Amazon Resource Name (ARN) of the license configuration.

*/ inline void SetLicenseConfigurationArn(const char* value) { m_licenseConfigurationArn.assign(value); } /** *

Amazon Resource Name (ARN) of the license configuration.

*/ inline GetLicenseConfigurationResult& WithLicenseConfigurationArn(const Aws::String& value) { SetLicenseConfigurationArn(value); return *this;} /** *

Amazon Resource Name (ARN) of the license configuration.

*/ inline GetLicenseConfigurationResult& WithLicenseConfigurationArn(Aws::String&& value) { SetLicenseConfigurationArn(std::move(value)); return *this;} /** *

Amazon Resource Name (ARN) of the license configuration.

*/ inline GetLicenseConfigurationResult& WithLicenseConfigurationArn(const char* value) { SetLicenseConfigurationArn(value); return *this;} /** *

Name of the license configuration.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

Name of the license configuration.

*/ inline void SetName(const Aws::String& value) { m_name = value; } /** *

Name of the license configuration.

*/ inline void SetName(Aws::String&& value) { m_name = std::move(value); } /** *

Name of the license configuration.

*/ inline void SetName(const char* value) { m_name.assign(value); } /** *

Name of the license configuration.

*/ inline GetLicenseConfigurationResult& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

Name of the license configuration.

*/ inline GetLicenseConfigurationResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

Name of the license configuration.

*/ inline GetLicenseConfigurationResult& WithName(const char* value) { SetName(value); return *this;} /** *

Description of the license configuration.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

Description of the license configuration.

*/ inline void SetDescription(const Aws::String& value) { m_description = value; } /** *

Description of the license configuration.

*/ inline void SetDescription(Aws::String&& value) { m_description = std::move(value); } /** *

Description of the license configuration.

*/ inline void SetDescription(const char* value) { m_description.assign(value); } /** *

Description of the license configuration.

*/ inline GetLicenseConfigurationResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

Description of the license configuration.

*/ inline GetLicenseConfigurationResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

Description of the license configuration.

*/ inline GetLicenseConfigurationResult& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

Dimension for which the licenses are counted.

*/ inline const LicenseCountingType& GetLicenseCountingType() const{ return m_licenseCountingType; } /** *

Dimension for which the licenses are counted.

*/ inline void SetLicenseCountingType(const LicenseCountingType& value) { m_licenseCountingType = value; } /** *

Dimension for which the licenses are counted.

*/ inline void SetLicenseCountingType(LicenseCountingType&& value) { m_licenseCountingType = std::move(value); } /** *

Dimension for which the licenses are counted.

*/ inline GetLicenseConfigurationResult& WithLicenseCountingType(const LicenseCountingType& value) { SetLicenseCountingType(value); return *this;} /** *

Dimension for which the licenses are counted.

*/ inline GetLicenseConfigurationResult& WithLicenseCountingType(LicenseCountingType&& value) { SetLicenseCountingType(std::move(value)); return *this;} /** *

License rules.

*/ inline const Aws::Vector& GetLicenseRules() const{ return m_licenseRules; } /** *

License rules.

*/ inline void SetLicenseRules(const Aws::Vector& value) { m_licenseRules = value; } /** *

License rules.

*/ inline void SetLicenseRules(Aws::Vector&& value) { m_licenseRules = std::move(value); } /** *

License rules.

*/ inline GetLicenseConfigurationResult& WithLicenseRules(const Aws::Vector& value) { SetLicenseRules(value); return *this;} /** *

License rules.

*/ inline GetLicenseConfigurationResult& WithLicenseRules(Aws::Vector&& value) { SetLicenseRules(std::move(value)); return *this;} /** *

License rules.

*/ inline GetLicenseConfigurationResult& AddLicenseRules(const Aws::String& value) { m_licenseRules.push_back(value); return *this; } /** *

License rules.

*/ inline GetLicenseConfigurationResult& AddLicenseRules(Aws::String&& value) { m_licenseRules.push_back(std::move(value)); return *this; } /** *

License rules.

*/ inline GetLicenseConfigurationResult& AddLicenseRules(const char* value) { m_licenseRules.push_back(value); return *this; } /** *

Number of available licenses.

*/ inline long long GetLicenseCount() const{ return m_licenseCount; } /** *

Number of available licenses.

*/ inline void SetLicenseCount(long long value) { m_licenseCount = value; } /** *

Number of available licenses.

*/ inline GetLicenseConfigurationResult& WithLicenseCount(long long value) { SetLicenseCount(value); return *this;} /** *

Sets the number of available licenses as a hard limit.

*/ inline bool GetLicenseCountHardLimit() const{ return m_licenseCountHardLimit; } /** *

Sets the number of available licenses as a hard limit.

*/ inline void SetLicenseCountHardLimit(bool value) { m_licenseCountHardLimit = value; } /** *

Sets the number of available licenses as a hard limit.

*/ inline GetLicenseConfigurationResult& WithLicenseCountHardLimit(bool value) { SetLicenseCountHardLimit(value); return *this;} /** *

Number of licenses assigned to resources.

*/ inline long long GetConsumedLicenses() const{ return m_consumedLicenses; } /** *

Number of licenses assigned to resources.

*/ inline void SetConsumedLicenses(long long value) { m_consumedLicenses = value; } /** *

Number of licenses assigned to resources.

*/ inline GetLicenseConfigurationResult& WithConsumedLicenses(long long value) { SetConsumedLicenses(value); return *this;} /** *

License configuration status.

*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *

License configuration status.

*/ inline void SetStatus(const Aws::String& value) { m_status = value; } /** *

License configuration status.

*/ inline void SetStatus(Aws::String&& value) { m_status = std::move(value); } /** *

License configuration status.

*/ inline void SetStatus(const char* value) { m_status.assign(value); } /** *

License configuration status.

*/ inline GetLicenseConfigurationResult& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *

License configuration status.

*/ inline GetLicenseConfigurationResult& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *

License configuration status.

*/ inline GetLicenseConfigurationResult& WithStatus(const char* value) { SetStatus(value); return *this;} /** *

Account ID of the owner of the license configuration.

*/ inline const Aws::String& GetOwnerAccountId() const{ return m_ownerAccountId; } /** *

Account ID of the owner of the license configuration.

*/ inline void SetOwnerAccountId(const Aws::String& value) { m_ownerAccountId = value; } /** *

Account ID of the owner of the license configuration.

*/ inline void SetOwnerAccountId(Aws::String&& value) { m_ownerAccountId = std::move(value); } /** *

Account ID of the owner of the license configuration.

*/ inline void SetOwnerAccountId(const char* value) { m_ownerAccountId.assign(value); } /** *

Account ID of the owner of the license configuration.

*/ inline GetLicenseConfigurationResult& WithOwnerAccountId(const Aws::String& value) { SetOwnerAccountId(value); return *this;} /** *

Account ID of the owner of the license configuration.

*/ inline GetLicenseConfigurationResult& WithOwnerAccountId(Aws::String&& value) { SetOwnerAccountId(std::move(value)); return *this;} /** *

Account ID of the owner of the license configuration.

*/ inline GetLicenseConfigurationResult& WithOwnerAccountId(const char* value) { SetOwnerAccountId(value); return *this;} /** *

Summaries of the licenses consumed by resources.

*/ inline const Aws::Vector& GetConsumedLicenseSummaryList() const{ return m_consumedLicenseSummaryList; } /** *

Summaries of the licenses consumed by resources.

*/ inline void SetConsumedLicenseSummaryList(const Aws::Vector& value) { m_consumedLicenseSummaryList = value; } /** *

Summaries of the licenses consumed by resources.

*/ inline void SetConsumedLicenseSummaryList(Aws::Vector&& value) { m_consumedLicenseSummaryList = std::move(value); } /** *

Summaries of the licenses consumed by resources.

*/ inline GetLicenseConfigurationResult& WithConsumedLicenseSummaryList(const Aws::Vector& value) { SetConsumedLicenseSummaryList(value); return *this;} /** *

Summaries of the licenses consumed by resources.

*/ inline GetLicenseConfigurationResult& WithConsumedLicenseSummaryList(Aws::Vector&& value) { SetConsumedLicenseSummaryList(std::move(value)); return *this;} /** *

Summaries of the licenses consumed by resources.

*/ inline GetLicenseConfigurationResult& AddConsumedLicenseSummaryList(const ConsumedLicenseSummary& value) { m_consumedLicenseSummaryList.push_back(value); return *this; } /** *

Summaries of the licenses consumed by resources.

*/ inline GetLicenseConfigurationResult& AddConsumedLicenseSummaryList(ConsumedLicenseSummary&& value) { m_consumedLicenseSummaryList.push_back(std::move(value)); return *this; } /** *

Summaries of the managed resources.

*/ inline const Aws::Vector& GetManagedResourceSummaryList() const{ return m_managedResourceSummaryList; } /** *

Summaries of the managed resources.

*/ inline void SetManagedResourceSummaryList(const Aws::Vector& value) { m_managedResourceSummaryList = value; } /** *

Summaries of the managed resources.

*/ inline void SetManagedResourceSummaryList(Aws::Vector&& value) { m_managedResourceSummaryList = std::move(value); } /** *

Summaries of the managed resources.

*/ inline GetLicenseConfigurationResult& WithManagedResourceSummaryList(const Aws::Vector& value) { SetManagedResourceSummaryList(value); return *this;} /** *

Summaries of the managed resources.

*/ inline GetLicenseConfigurationResult& WithManagedResourceSummaryList(Aws::Vector&& value) { SetManagedResourceSummaryList(std::move(value)); return *this;} /** *

Summaries of the managed resources.

*/ inline GetLicenseConfigurationResult& AddManagedResourceSummaryList(const ManagedResourceSummary& value) { m_managedResourceSummaryList.push_back(value); return *this; } /** *

Summaries of the managed resources.

*/ inline GetLicenseConfigurationResult& AddManagedResourceSummaryList(ManagedResourceSummary&& value) { m_managedResourceSummaryList.push_back(std::move(value)); return *this; } /** *

Tags for the license configuration.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

Tags for the license configuration.

*/ inline void SetTags(const Aws::Vector& value) { m_tags = value; } /** *

Tags for the license configuration.

*/ inline void SetTags(Aws::Vector&& value) { m_tags = std::move(value); } /** *

Tags for the license configuration.

*/ inline GetLicenseConfigurationResult& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

Tags for the license configuration.

*/ inline GetLicenseConfigurationResult& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

Tags for the license configuration.

*/ inline GetLicenseConfigurationResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; } /** *

Tags for the license configuration.

*/ inline GetLicenseConfigurationResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; } /** *

Product information.

*/ inline const Aws::Vector& GetProductInformationList() const{ return m_productInformationList; } /** *

Product information.

*/ inline void SetProductInformationList(const Aws::Vector& value) { m_productInformationList = value; } /** *

Product information.

*/ inline void SetProductInformationList(Aws::Vector&& value) { m_productInformationList = std::move(value); } /** *

Product information.

*/ inline GetLicenseConfigurationResult& WithProductInformationList(const Aws::Vector& value) { SetProductInformationList(value); return *this;} /** *

Product information.

*/ inline GetLicenseConfigurationResult& WithProductInformationList(Aws::Vector&& value) { SetProductInformationList(std::move(value)); return *this;} /** *

Product information.

*/ inline GetLicenseConfigurationResult& AddProductInformationList(const ProductInformation& value) { m_productInformationList.push_back(value); return *this; } /** *

Product information.

*/ inline GetLicenseConfigurationResult& AddProductInformationList(ProductInformation&& value) { m_productInformationList.push_back(std::move(value)); return *this; } /** *

Automated discovery information.

*/ inline const AutomatedDiscoveryInformation& GetAutomatedDiscoveryInformation() const{ return m_automatedDiscoveryInformation; } /** *

Automated discovery information.

*/ inline void SetAutomatedDiscoveryInformation(const AutomatedDiscoveryInformation& value) { m_automatedDiscoveryInformation = value; } /** *

Automated discovery information.

*/ inline void SetAutomatedDiscoveryInformation(AutomatedDiscoveryInformation&& value) { m_automatedDiscoveryInformation = std::move(value); } /** *

Automated discovery information.

*/ inline GetLicenseConfigurationResult& WithAutomatedDiscoveryInformation(const AutomatedDiscoveryInformation& value) { SetAutomatedDiscoveryInformation(value); return *this;} /** *

Automated discovery information.

*/ inline GetLicenseConfigurationResult& WithAutomatedDiscoveryInformation(AutomatedDiscoveryInformation&& value) { SetAutomatedDiscoveryInformation(std::move(value)); return *this;} /** *

When true, disassociates a resource when software is uninstalled.

*/ inline bool GetDisassociateWhenNotFound() const{ return m_disassociateWhenNotFound; } /** *

When true, disassociates a resource when software is uninstalled.

*/ inline void SetDisassociateWhenNotFound(bool value) { m_disassociateWhenNotFound = value; } /** *

When true, disassociates a resource when software is uninstalled.

*/ inline GetLicenseConfigurationResult& WithDisassociateWhenNotFound(bool value) { SetDisassociateWhenNotFound(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetLicenseConfigurationResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetLicenseConfigurationResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetLicenseConfigurationResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_licenseConfigurationId; Aws::String m_licenseConfigurationArn; Aws::String m_name; Aws::String m_description; LicenseCountingType m_licenseCountingType; Aws::Vector m_licenseRules; long long m_licenseCount; bool m_licenseCountHardLimit; long long m_consumedLicenses; Aws::String m_status; Aws::String m_ownerAccountId; Aws::Vector m_consumedLicenseSummaryList; Aws::Vector m_managedResourceSummaryList; Aws::Vector m_tags; Aws::Vector m_productInformationList; AutomatedDiscoveryInformation m_automatedDiscoveryInformation; bool m_disassociateWhenNotFound; Aws::String m_requestId; }; } // namespace Model } // namespace LicenseManager } // namespace Aws