/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ECRPublic { namespace Model { /** *

The catalog data for a repository. This data is publicly visible in the * Amazon ECR Public Gallery.

See Also:

AWS * API Reference

*/ class RepositoryCatalogData { public: AWS_ECRPUBLIC_API RepositoryCatalogData(); AWS_ECRPUBLIC_API RepositoryCatalogData(Aws::Utils::Json::JsonView jsonValue); AWS_ECRPUBLIC_API RepositoryCatalogData& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_ECRPUBLIC_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The short description of the repository.

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

The short description of the repository.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

The short description of the repository.

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

The short description of the repository.

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

The short description of the repository.

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

The short description of the repository.

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

The short description of the repository.

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

The short description of the repository.

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

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline const Aws::Vector& GetArchitectures() const{ return m_architectures; } /** *

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline bool ArchitecturesHasBeenSet() const { return m_architecturesHasBeenSet; } /** *

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline void SetArchitectures(const Aws::Vector& value) { m_architecturesHasBeenSet = true; m_architectures = value; } /** *

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline void SetArchitectures(Aws::Vector&& value) { m_architecturesHasBeenSet = true; m_architectures = std::move(value); } /** *

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& WithArchitectures(const Aws::Vector& value) { SetArchitectures(value); return *this;} /** *

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& WithArchitectures(Aws::Vector&& value) { SetArchitectures(std::move(value)); return *this;} /** *

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& AddArchitectures(const Aws::String& value) { m_architecturesHasBeenSet = true; m_architectures.push_back(value); return *this; } /** *

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& AddArchitectures(Aws::String&& value) { m_architecturesHasBeenSet = true; m_architectures.push_back(std::move(value)); return *this; } /** *

The architecture tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& AddArchitectures(const char* value) { m_architecturesHasBeenSet = true; m_architectures.push_back(value); return *this; } /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline const Aws::Vector& GetOperatingSystems() const{ return m_operatingSystems; } /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline bool OperatingSystemsHasBeenSet() const { return m_operatingSystemsHasBeenSet; } /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline void SetOperatingSystems(const Aws::Vector& value) { m_operatingSystemsHasBeenSet = true; m_operatingSystems = value; } /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline void SetOperatingSystems(Aws::Vector&& value) { m_operatingSystemsHasBeenSet = true; m_operatingSystems = std::move(value); } /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& WithOperatingSystems(const Aws::Vector& value) { SetOperatingSystems(value); return *this;} /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& WithOperatingSystems(Aws::Vector&& value) { SetOperatingSystems(std::move(value)); return *this;} /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& AddOperatingSystems(const Aws::String& value) { m_operatingSystemsHasBeenSet = true; m_operatingSystems.push_back(value); return *this; } /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& AddOperatingSystems(Aws::String&& value) { m_operatingSystemsHasBeenSet = true; m_operatingSystems.push_back(std::move(value)); return *this; } /** *

The operating system tags that are associated with the repository.

*

Only supported operating system tags appear publicly in the Amazon ECR Public * Gallery. For more information, see RepositoryCatalogDataInput.

* */ inline RepositoryCatalogData& AddOperatingSystems(const char* value) { m_operatingSystemsHasBeenSet = true; m_operatingSystems.push_back(value); return *this; } /** *

The URL that contains the logo that's associated with the repository.

*/ inline const Aws::String& GetLogoUrl() const{ return m_logoUrl; } /** *

The URL that contains the logo that's associated with the repository.

*/ inline bool LogoUrlHasBeenSet() const { return m_logoUrlHasBeenSet; } /** *

The URL that contains the logo that's associated with the repository.

*/ inline void SetLogoUrl(const Aws::String& value) { m_logoUrlHasBeenSet = true; m_logoUrl = value; } /** *

The URL that contains the logo that's associated with the repository.

*/ inline void SetLogoUrl(Aws::String&& value) { m_logoUrlHasBeenSet = true; m_logoUrl = std::move(value); } /** *

The URL that contains the logo that's associated with the repository.

*/ inline void SetLogoUrl(const char* value) { m_logoUrlHasBeenSet = true; m_logoUrl.assign(value); } /** *

The URL that contains the logo that's associated with the repository.

*/ inline RepositoryCatalogData& WithLogoUrl(const Aws::String& value) { SetLogoUrl(value); return *this;} /** *

The URL that contains the logo that's associated with the repository.

*/ inline RepositoryCatalogData& WithLogoUrl(Aws::String&& value) { SetLogoUrl(std::move(value)); return *this;} /** *

The URL that contains the logo that's associated with the repository.

*/ inline RepositoryCatalogData& WithLogoUrl(const char* value) { SetLogoUrl(value); return *this;} /** *

The longform description of the contents of the repository. This text appears * in the repository details on the Amazon ECR Public Gallery.

*/ inline const Aws::String& GetAboutText() const{ return m_aboutText; } /** *

The longform description of the contents of the repository. This text appears * in the repository details on the Amazon ECR Public Gallery.

*/ inline bool AboutTextHasBeenSet() const { return m_aboutTextHasBeenSet; } /** *

The longform description of the contents of the repository. This text appears * in the repository details on the Amazon ECR Public Gallery.

*/ inline void SetAboutText(const Aws::String& value) { m_aboutTextHasBeenSet = true; m_aboutText = value; } /** *

The longform description of the contents of the repository. This text appears * in the repository details on the Amazon ECR Public Gallery.

*/ inline void SetAboutText(Aws::String&& value) { m_aboutTextHasBeenSet = true; m_aboutText = std::move(value); } /** *

The longform description of the contents of the repository. This text appears * in the repository details on the Amazon ECR Public Gallery.

*/ inline void SetAboutText(const char* value) { m_aboutTextHasBeenSet = true; m_aboutText.assign(value); } /** *

The longform description of the contents of the repository. This text appears * in the repository details on the Amazon ECR Public Gallery.

*/ inline RepositoryCatalogData& WithAboutText(const Aws::String& value) { SetAboutText(value); return *this;} /** *

The longform description of the contents of the repository. This text appears * in the repository details on the Amazon ECR Public Gallery.

*/ inline RepositoryCatalogData& WithAboutText(Aws::String&& value) { SetAboutText(std::move(value)); return *this;} /** *

The longform description of the contents of the repository. This text appears * in the repository details on the Amazon ECR Public Gallery.

*/ inline RepositoryCatalogData& WithAboutText(const char* value) { SetAboutText(value); return *this;} /** *

The longform usage details of the contents of the repository. The usage text * provides context for users of the repository.

*/ inline const Aws::String& GetUsageText() const{ return m_usageText; } /** *

The longform usage details of the contents of the repository. The usage text * provides context for users of the repository.

*/ inline bool UsageTextHasBeenSet() const { return m_usageTextHasBeenSet; } /** *

The longform usage details of the contents of the repository. The usage text * provides context for users of the repository.

*/ inline void SetUsageText(const Aws::String& value) { m_usageTextHasBeenSet = true; m_usageText = value; } /** *

The longform usage details of the contents of the repository. The usage text * provides context for users of the repository.

*/ inline void SetUsageText(Aws::String&& value) { m_usageTextHasBeenSet = true; m_usageText = std::move(value); } /** *

The longform usage details of the contents of the repository. The usage text * provides context for users of the repository.

*/ inline void SetUsageText(const char* value) { m_usageTextHasBeenSet = true; m_usageText.assign(value); } /** *

The longform usage details of the contents of the repository. The usage text * provides context for users of the repository.

*/ inline RepositoryCatalogData& WithUsageText(const Aws::String& value) { SetUsageText(value); return *this;} /** *

The longform usage details of the contents of the repository. The usage text * provides context for users of the repository.

*/ inline RepositoryCatalogData& WithUsageText(Aws::String&& value) { SetUsageText(std::move(value)); return *this;} /** *

The longform usage details of the contents of the repository. The usage text * provides context for users of the repository.

*/ inline RepositoryCatalogData& WithUsageText(const char* value) { SetUsageText(value); return *this;} /** *

Indicates whether the repository is certified by Amazon Web Services * Marketplace.

*/ inline bool GetMarketplaceCertified() const{ return m_marketplaceCertified; } /** *

Indicates whether the repository is certified by Amazon Web Services * Marketplace.

*/ inline bool MarketplaceCertifiedHasBeenSet() const { return m_marketplaceCertifiedHasBeenSet; } /** *

Indicates whether the repository is certified by Amazon Web Services * Marketplace.

*/ inline void SetMarketplaceCertified(bool value) { m_marketplaceCertifiedHasBeenSet = true; m_marketplaceCertified = value; } /** *

Indicates whether the repository is certified by Amazon Web Services * Marketplace.

*/ inline RepositoryCatalogData& WithMarketplaceCertified(bool value) { SetMarketplaceCertified(value); return *this;} private: Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::Vector m_architectures; bool m_architecturesHasBeenSet = false; Aws::Vector m_operatingSystems; bool m_operatingSystemsHasBeenSet = false; Aws::String m_logoUrl; bool m_logoUrlHasBeenSet = false; Aws::String m_aboutText; bool m_aboutTextHasBeenSet = false; Aws::String m_usageText; bool m_usageTextHasBeenSet = false; bool m_marketplaceCertified; bool m_marketplaceCertifiedHasBeenSet = false; }; } // namespace Model } // namespace ECRPublic } // namespace Aws