/** * 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 ServiceCatalog { namespace Model { /** *

An object that contains summary information about a product view and a * provisioning artifact.

See Also:

AWS * API Reference

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

Summary information about a product view.

*/ inline const ProductViewSummary& GetProductViewSummary() const{ return m_productViewSummary; } /** *

Summary information about a product view.

*/ inline bool ProductViewSummaryHasBeenSet() const { return m_productViewSummaryHasBeenSet; } /** *

Summary information about a product view.

*/ inline void SetProductViewSummary(const ProductViewSummary& value) { m_productViewSummaryHasBeenSet = true; m_productViewSummary = value; } /** *

Summary information about a product view.

*/ inline void SetProductViewSummary(ProductViewSummary&& value) { m_productViewSummaryHasBeenSet = true; m_productViewSummary = std::move(value); } /** *

Summary information about a product view.

*/ inline ProvisioningArtifactView& WithProductViewSummary(const ProductViewSummary& value) { SetProductViewSummary(value); return *this;} /** *

Summary information about a product view.

*/ inline ProvisioningArtifactView& WithProductViewSummary(ProductViewSummary&& value) { SetProductViewSummary(std::move(value)); return *this;} /** *

Information about a provisioning artifact. A provisioning artifact is also * known as a product version.

*/ inline const ProvisioningArtifact& GetProvisioningArtifact() const{ return m_provisioningArtifact; } /** *

Information about a provisioning artifact. A provisioning artifact is also * known as a product version.

*/ inline bool ProvisioningArtifactHasBeenSet() const { return m_provisioningArtifactHasBeenSet; } /** *

Information about a provisioning artifact. A provisioning artifact is also * known as a product version.

*/ inline void SetProvisioningArtifact(const ProvisioningArtifact& value) { m_provisioningArtifactHasBeenSet = true; m_provisioningArtifact = value; } /** *

Information about a provisioning artifact. A provisioning artifact is also * known as a product version.

*/ inline void SetProvisioningArtifact(ProvisioningArtifact&& value) { m_provisioningArtifactHasBeenSet = true; m_provisioningArtifact = std::move(value); } /** *

Information about a provisioning artifact. A provisioning artifact is also * known as a product version.

*/ inline ProvisioningArtifactView& WithProvisioningArtifact(const ProvisioningArtifact& value) { SetProvisioningArtifact(value); return *this;} /** *

Information about a provisioning artifact. A provisioning artifact is also * known as a product version.

*/ inline ProvisioningArtifactView& WithProvisioningArtifact(ProvisioningArtifact&& value) { SetProvisioningArtifact(std::move(value)); return *this;} private: ProductViewSummary m_productViewSummary; bool m_productViewSummaryHasBeenSet = false; ProvisioningArtifact m_provisioningArtifact; bool m_provisioningArtifactHasBeenSet = false; }; } // namespace Model } // namespace ServiceCatalog } // namespace Aws