/** * 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 DataExchange { namespace Model { /** */ class UpdateAssetRequest : public DataExchangeRequest { public: AWS_DATAEXCHANGE_API UpdateAssetRequest(); // 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 "UpdateAsset"; } AWS_DATAEXCHANGE_API Aws::String SerializePayload() const override; /** *

The unique identifier for an asset.

*/ inline const Aws::String& GetAssetId() const{ return m_assetId; } /** *

The unique identifier for an asset.

*/ inline bool AssetIdHasBeenSet() const { return m_assetIdHasBeenSet; } /** *

The unique identifier for an asset.

*/ inline void SetAssetId(const Aws::String& value) { m_assetIdHasBeenSet = true; m_assetId = value; } /** *

The unique identifier for an asset.

*/ inline void SetAssetId(Aws::String&& value) { m_assetIdHasBeenSet = true; m_assetId = std::move(value); } /** *

The unique identifier for an asset.

*/ inline void SetAssetId(const char* value) { m_assetIdHasBeenSet = true; m_assetId.assign(value); } /** *

The unique identifier for an asset.

*/ inline UpdateAssetRequest& WithAssetId(const Aws::String& value) { SetAssetId(value); return *this;} /** *

The unique identifier for an asset.

*/ inline UpdateAssetRequest& WithAssetId(Aws::String&& value) { SetAssetId(std::move(value)); return *this;} /** *

The unique identifier for an asset.

*/ inline UpdateAssetRequest& WithAssetId(const char* value) { SetAssetId(value); return *this;} /** *

The unique identifier for a data set.

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

The unique identifier for a data set.

*/ inline bool DataSetIdHasBeenSet() const { return m_dataSetIdHasBeenSet; } /** *

The unique identifier for a data set.

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

The unique identifier for a data set.

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

The unique identifier for a data set.

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

The unique identifier for a data set.

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

The unique identifier for a data set.

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

The unique identifier for a data set.

*/ inline UpdateAssetRequest& WithDataSetId(const char* value) { SetDataSetId(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 LF-tag policy" are used as the 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 LF-tag policy" are used as the name.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

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 LF-tag policy" are used as the name.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; 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 LF-tag policy" are used as the name.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; 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 LF-tag policy" are used as the name.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; 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 LF-tag policy" are used as the name.

*/ inline UpdateAssetRequest& 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 LF-tag policy" are used as the name.

*/ inline UpdateAssetRequest& 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 LF-tag policy" are used as the name.

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

The unique identifier for a revision.

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

The unique identifier for a revision.

*/ inline bool RevisionIdHasBeenSet() const { return m_revisionIdHasBeenSet; } /** *

The unique identifier for a revision.

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

The unique identifier for a revision.

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

The unique identifier for a revision.

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

The unique identifier for a revision.

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

The unique identifier for a revision.

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

The unique identifier for a revision.

*/ inline UpdateAssetRequest& WithRevisionId(const char* value) { SetRevisionId(value); return *this;} private: Aws::String m_assetId; bool m_assetIdHasBeenSet = false; Aws::String m_dataSetId; bool m_dataSetIdHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_revisionId; bool m_revisionIdHasBeenSet = false; }; } // namespace Model } // namespace DataExchange } // namespace Aws