/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace DataExchange { namespace Model { class GetAssetResult { public: AWS_DATAEXCHANGE_API GetAssetResult(); AWS_DATAEXCHANGE_API GetAssetResult(const Aws::AmazonWebServiceResult& result); AWS_DATAEXCHANGE_API GetAssetResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The ARN for the asset.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The ARN for the asset.

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

The ARN for the asset.

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

The ARN for the asset.

*/ inline void SetArn(const char* value) { m_arn.assign(value); } /** *

The ARN for the asset.

*/ inline GetAssetResult& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The ARN for the asset.

*/ inline GetAssetResult& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The ARN for the asset.

*/ inline GetAssetResult& WithArn(const char* value) { SetArn(value); return *this;} /** *

Details about the asset.

*/ inline const AssetDetails& GetAssetDetails() const{ return m_assetDetails; } /** *

Details about the asset.

*/ inline void SetAssetDetails(const AssetDetails& value) { m_assetDetails = value; } /** *

Details about the asset.

*/ inline void SetAssetDetails(AssetDetails&& value) { m_assetDetails = std::move(value); } /** *

Details about the asset.

*/ inline GetAssetResult& WithAssetDetails(const AssetDetails& value) { SetAssetDetails(value); return *this;} /** *

Details about the asset.

*/ inline GetAssetResult& WithAssetDetails(AssetDetails&& value) { SetAssetDetails(std::move(value)); return *this;} /** *

The type of asset that is added to a data set.

*/ inline const AssetType& GetAssetType() const{ return m_assetType; } /** *

The type of asset that is added to a data set.

*/ inline void SetAssetType(const AssetType& value) { m_assetType = value; } /** *

The type of asset that is added to a data set.

*/ inline void SetAssetType(AssetType&& value) { m_assetType = std::move(value); } /** *

The type of asset that is added to a data set.

*/ inline GetAssetResult& WithAssetType(const AssetType& value) { SetAssetType(value); return *this;} /** *

The type of asset that is added to a data set.

*/ inline GetAssetResult& WithAssetType(AssetType&& value) { SetAssetType(std::move(value)); return *this;} /** *

The date and time that the asset was created, in ISO 8601 format.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The date and time that the asset was created, in ISO 8601 format.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } /** *

The date and time that the asset was created, in ISO 8601 format.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } /** *

The date and time that the asset was created, in ISO 8601 format.

*/ inline GetAssetResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The date and time that the asset was created, in ISO 8601 format.

*/ inline GetAssetResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The unique identifier for the data set associated with this asset.

*/ inline const Aws::String& GetDataSetId() const{ return m_dataSetId; } /** *

The unique identifier for the data set associated with this asset.

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

The unique identifier for the data set associated with this asset.

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

The unique identifier for the data set associated with this asset.

*/ inline void SetDataSetId(const char* value) { m_dataSetId.assign(value); } /** *

The unique identifier for the data set associated with this asset.

*/ inline GetAssetResult& WithDataSetId(const Aws::String& value) { SetDataSetId(value); return *this;} /** *

The unique identifier for the data set associated with this asset.

*/ inline GetAssetResult& WithDataSetId(Aws::String&& value) { SetDataSetId(std::move(value)); return *this;} /** *

The unique identifier for the data set associated with this asset.

*/ inline GetAssetResult& WithDataSetId(const char* value) { SetDataSetId(value); return *this;} /** *

The unique identifier for the asset.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The unique identifier for the asset.

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

The unique identifier for the asset.

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

The unique identifier for the asset.

*/ inline void SetId(const char* value) { m_id.assign(value); } /** *

The unique identifier for the asset.

*/ inline GetAssetResult& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The unique identifier for the asset.

*/ inline GetAssetResult& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The unique identifier for the asset.

*/ inline GetAssetResult& WithId(const char* value) { SetId(value); return *this;} /** *

The name of the asset. When importing from Amazon S3, the Amazon S3 object * key is used as the asset name. When exporting to Amazon S3, the asset name is * used as default target Amazon S3 object key. When importing from Amazon API * Gateway API, the API name is used as the asset name. When importing from Amazon * Redshift, the datashare name is used as the asset name. When importing from AWS * Lake Formation, the static values of "Database(s) included in the LF-tag policy" * or "Table(s) included in the LF-tag policy" are used as the asset name.

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

The name of the asset. When importing from Amazon S3, the Amazon S3 object * key is used as the asset name. When exporting to Amazon S3, the asset name is * used as default target Amazon S3 object key. When importing from Amazon API * Gateway API, the API name is used as the asset name. When importing from Amazon * Redshift, the datashare name is used as the asset name. When importing from AWS * Lake Formation, the static values of "Database(s) included in the LF-tag policy" * or "Table(s) included in the LF-tag policy" are used as the asset name.

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

The name of the asset. When importing from Amazon S3, the Amazon S3 object * key is used as the asset name. When exporting to Amazon S3, the asset name is * used as default target Amazon S3 object key. When importing from Amazon API * Gateway API, the API name is used as the asset name. When importing from Amazon * Redshift, the datashare name is used as the asset name. When importing from AWS * Lake Formation, the static values of "Database(s) included in the LF-tag policy" * or "Table(s) included in the LF-tag policy" are used as the asset name.

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

The name of the asset. When importing from Amazon S3, the Amazon S3 object * key is used as the asset name. When exporting to Amazon S3, the asset name is * used as default target Amazon S3 object key. When importing from Amazon API * Gateway API, the API name is used as the asset name. When importing from Amazon * Redshift, the datashare name is used as the asset name. When importing from AWS * Lake Formation, the static values of "Database(s) included in the LF-tag policy" * or "Table(s) included in the LF-tag policy" are used as the asset name.

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

The name of the asset. When importing from Amazon S3, the Amazon S3 object * key is used as the asset name. When exporting to Amazon S3, the asset name is * used as default target Amazon S3 object key. When importing from Amazon API * Gateway API, the API name is used as the asset name. When importing from Amazon * Redshift, the datashare name is used as the asset name. When importing from AWS * Lake Formation, the static values of "Database(s) included in the LF-tag policy" * or "Table(s) included in the LF-tag policy" are used as the asset name.

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

The name of the asset. When importing from Amazon S3, the Amazon S3 object * key is used as the asset name. When exporting to Amazon S3, the asset name is * used as default target Amazon S3 object key. When importing from Amazon API * Gateway API, the API name is used as the asset name. When importing from Amazon * Redshift, the datashare name is used as the asset name. When importing from AWS * Lake Formation, the static values of "Database(s) included in the LF-tag policy" * or "Table(s) included in the LF-tag policy" are used as the asset name.

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

The name of the asset. When importing from Amazon S3, the Amazon S3 object * key is used as the asset name. When exporting to Amazon S3, the asset name is * used as default target Amazon S3 object key. When importing from Amazon API * Gateway API, the API name is used as the asset name. When importing from Amazon * Redshift, the datashare name is used as the asset name. When importing from AWS * Lake Formation, the static values of "Database(s) included in the LF-tag policy" * or "Table(s) included in the LF-tag policy" are used as the asset name.

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

The unique identifier for the revision associated with this asset.

*/ inline const Aws::String& GetRevisionId() const{ return m_revisionId; } /** *

The unique identifier for the revision associated with this asset.

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

The unique identifier for the revision associated with this asset.

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

The unique identifier for the revision associated with this asset.

*/ inline void SetRevisionId(const char* value) { m_revisionId.assign(value); } /** *

The unique identifier for the revision associated with this asset.

*/ inline GetAssetResult& WithRevisionId(const Aws::String& value) { SetRevisionId(value); return *this;} /** *

The unique identifier for the revision associated with this asset.

*/ inline GetAssetResult& WithRevisionId(Aws::String&& value) { SetRevisionId(std::move(value)); return *this;} /** *

The unique identifier for the revision associated with this asset.

*/ inline GetAssetResult& WithRevisionId(const char* value) { SetRevisionId(value); return *this;} /** *

The asset ID of the owned asset corresponding to the entitled asset being * viewed. This parameter is returned when an asset owner is viewing the entitled * copy of its owned asset.

*/ inline const Aws::String& GetSourceId() const{ return m_sourceId; } /** *

The asset ID of the owned asset corresponding to the entitled asset being * viewed. This parameter is returned when an asset owner is viewing the entitled * copy of its owned asset.

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

The asset ID of the owned asset corresponding to the entitled asset being * viewed. This parameter is returned when an asset owner is viewing the entitled * copy of its owned asset.

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

The asset ID of the owned asset corresponding to the entitled asset being * viewed. This parameter is returned when an asset owner is viewing the entitled * copy of its owned asset.

*/ inline void SetSourceId(const char* value) { m_sourceId.assign(value); } /** *

The asset ID of the owned asset corresponding to the entitled asset being * viewed. This parameter is returned when an asset owner is viewing the entitled * copy of its owned asset.

*/ inline GetAssetResult& WithSourceId(const Aws::String& value) { SetSourceId(value); return *this;} /** *

The asset ID of the owned asset corresponding to the entitled asset being * viewed. This parameter is returned when an asset owner is viewing the entitled * copy of its owned asset.

*/ inline GetAssetResult& WithSourceId(Aws::String&& value) { SetSourceId(std::move(value)); return *this;} /** *

The asset ID of the owned asset corresponding to the entitled asset being * viewed. This parameter is returned when an asset owner is viewing the entitled * copy of its owned asset.

*/ inline GetAssetResult& WithSourceId(const char* value) { SetSourceId(value); return *this;} /** *

The date and time that the asset was last updated, in ISO 8601 format.

*/ inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } /** *

The date and time that the asset was last updated, in ISO 8601 format.

*/ inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAt = value; } /** *

The date and time that the asset was last updated, in ISO 8601 format.

*/ inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAt = std::move(value); } /** *

The date and time that the asset was last updated, in ISO 8601 format.

*/ inline GetAssetResult& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} /** *

The date and time that the asset was last updated, in ISO 8601 format.

*/ inline GetAssetResult& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(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 GetAssetResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetAssetResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetAssetResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_arn; AssetDetails m_assetDetails; AssetType m_assetType; Aws::Utils::DateTime m_createdAt; Aws::String m_dataSetId; Aws::String m_id; Aws::String m_name; Aws::String m_revisionId; Aws::String m_sourceId; Aws::Utils::DateTime m_updatedAt; Aws::String m_requestId; }; } // namespace Model } // namespace DataExchange } // namespace Aws