/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Http { class URI; } //namespace Http namespace DataExchange { namespace Model { /** */ class SendApiAssetRequest : public StreamingDataExchangeRequest { public: AWS_DATAEXCHANGE_API SendApiAssetRequest(); // 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 "SendApiAsset"; } AWS_DATAEXCHANGE_API void AddQueryStringParameters(Aws::Http::URI& uri) const override; AWS_DATAEXCHANGE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline const Aws::Map& GetQueryStringParameters() const{ return m_queryStringParameters; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline bool QueryStringParametersHasBeenSet() const { return m_queryStringParametersHasBeenSet; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline void SetQueryStringParameters(const Aws::Map& value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters = value; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline void SetQueryStringParameters(Aws::Map&& value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters = std::move(value); } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& WithQueryStringParameters(const Aws::Map& value) { SetQueryStringParameters(value); return *this;} /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& WithQueryStringParameters(Aws::Map&& value) { SetQueryStringParameters(std::move(value)); return *this;} /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& AddQueryStringParameters(const Aws::String& key, const Aws::String& value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters.emplace(key, value); return *this; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& AddQueryStringParameters(Aws::String&& key, const Aws::String& value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters.emplace(std::move(key), value); return *this; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& AddQueryStringParameters(const Aws::String& key, Aws::String&& value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters.emplace(key, std::move(value)); return *this; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& AddQueryStringParameters(Aws::String&& key, Aws::String&& value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters.emplace(std::move(key), std::move(value)); return *this; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& AddQueryStringParameters(const char* key, Aws::String&& value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters.emplace(key, std::move(value)); return *this; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& AddQueryStringParameters(Aws::String&& key, const char* value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters.emplace(std::move(key), value); return *this; } /** *

Attach query string parameters to the end of the URI (for example, * /v1/examplePath?exampleParam=exampleValue).

*/ inline SendApiAssetRequest& AddQueryStringParameters(const char* key, const char* value) { m_queryStringParametersHasBeenSet = true; m_queryStringParameters.emplace(key, value); return *this; } /** *

Asset ID value for the API request.

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

Asset ID value for the API request.

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

Asset ID value for the API request.

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

Asset ID value for the API request.

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

Asset ID value for the API request.

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

Asset ID value for the API request.

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

Asset ID value for the API request.

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

Asset ID value for the API request.

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

Data set ID value for the API request.

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

Data set ID value for the API request.

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

Data set ID value for the API request.

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

Data set ID value for the API request.

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

Data set ID value for the API request.

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

Data set ID value for the API request.

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

Data set ID value for the API request.

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

Data set ID value for the API request.

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

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline const Aws::Map& GetRequestHeaders() const{ return m_requestHeaders; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline bool RequestHeadersHasBeenSet() const { return m_requestHeadersHasBeenSet; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline void SetRequestHeaders(const Aws::Map& value) { m_requestHeadersHasBeenSet = true; m_requestHeaders = value; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline void SetRequestHeaders(Aws::Map&& value) { m_requestHeadersHasBeenSet = true; m_requestHeaders = std::move(value); } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& WithRequestHeaders(const Aws::Map& value) { SetRequestHeaders(value); return *this;} /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& WithRequestHeaders(Aws::Map&& value) { SetRequestHeaders(std::move(value)); return *this;} /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& AddRequestHeaders(const Aws::String& key, const Aws::String& value) { m_requestHeadersHasBeenSet = true; m_requestHeaders.emplace(key, value); return *this; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& AddRequestHeaders(Aws::String&& key, const Aws::String& value) { m_requestHeadersHasBeenSet = true; m_requestHeaders.emplace(std::move(key), value); return *this; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& AddRequestHeaders(const Aws::String& key, Aws::String&& value) { m_requestHeadersHasBeenSet = true; m_requestHeaders.emplace(key, std::move(value)); return *this; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& AddRequestHeaders(Aws::String&& key, Aws::String&& value) { m_requestHeadersHasBeenSet = true; m_requestHeaders.emplace(std::move(key), std::move(value)); return *this; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& AddRequestHeaders(const char* key, Aws::String&& value) { m_requestHeadersHasBeenSet = true; m_requestHeaders.emplace(key, std::move(value)); return *this; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& AddRequestHeaders(Aws::String&& key, const char* value) { m_requestHeadersHasBeenSet = true; m_requestHeaders.emplace(std::move(key), value); return *this; } /** *

Any header value prefixed with x-amzn-dataexchange-header- will have that * stripped before sending the Asset API request. Use this when you want to * override a header that AWS Data Exchange uses. Alternatively, you can use the * header without a prefix to the HTTP request.

*/ inline SendApiAssetRequest& AddRequestHeaders(const char* key, const char* value) { m_requestHeadersHasBeenSet = true; m_requestHeaders.emplace(key, value); return *this; } /** *

HTTP method value for the API request. Alternatively, you can use the * appropriate verb in your request.

*/ inline const Aws::String& GetMethod() const{ return m_method; } /** *

HTTP method value for the API request. Alternatively, you can use the * appropriate verb in your request.

*/ inline bool MethodHasBeenSet() const { return m_methodHasBeenSet; } /** *

HTTP method value for the API request. Alternatively, you can use the * appropriate verb in your request.

*/ inline void SetMethod(const Aws::String& value) { m_methodHasBeenSet = true; m_method = value; } /** *

HTTP method value for the API request. Alternatively, you can use the * appropriate verb in your request.

*/ inline void SetMethod(Aws::String&& value) { m_methodHasBeenSet = true; m_method = std::move(value); } /** *

HTTP method value for the API request. Alternatively, you can use the * appropriate verb in your request.

*/ inline void SetMethod(const char* value) { m_methodHasBeenSet = true; m_method.assign(value); } /** *

HTTP method value for the API request. Alternatively, you can use the * appropriate verb in your request.

*/ inline SendApiAssetRequest& WithMethod(const Aws::String& value) { SetMethod(value); return *this;} /** *

HTTP method value for the API request. Alternatively, you can use the * appropriate verb in your request.

*/ inline SendApiAssetRequest& WithMethod(Aws::String&& value) { SetMethod(std::move(value)); return *this;} /** *

HTTP method value for the API request. Alternatively, you can use the * appropriate verb in your request.

*/ inline SendApiAssetRequest& WithMethod(const char* value) { SetMethod(value); return *this;} /** *

URI path value for the API request. Alternatively, you can set the URI path * directly by invoking /v1/{pathValue}.

*/ inline const Aws::String& GetPath() const{ return m_path; } /** *

URI path value for the API request. Alternatively, you can set the URI path * directly by invoking /v1/{pathValue}.

*/ inline bool PathHasBeenSet() const { return m_pathHasBeenSet; } /** *

URI path value for the API request. Alternatively, you can set the URI path * directly by invoking /v1/{pathValue}.

*/ inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; } /** *

URI path value for the API request. Alternatively, you can set the URI path * directly by invoking /v1/{pathValue}.

*/ inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = std::move(value); } /** *

URI path value for the API request. Alternatively, you can set the URI path * directly by invoking /v1/{pathValue}.

*/ inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); } /** *

URI path value for the API request. Alternatively, you can set the URI path * directly by invoking /v1/{pathValue}.

*/ inline SendApiAssetRequest& WithPath(const Aws::String& value) { SetPath(value); return *this;} /** *

URI path value for the API request. Alternatively, you can set the URI path * directly by invoking /v1/{pathValue}.

*/ inline SendApiAssetRequest& WithPath(Aws::String&& value) { SetPath(std::move(value)); return *this;} /** *

URI path value for the API request. Alternatively, you can set the URI path * directly by invoking /v1/{pathValue}.

*/ inline SendApiAssetRequest& WithPath(const char* value) { SetPath(value); return *this;} /** *

Revision ID value for the API request.

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

Revision ID value for the API request.

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

Revision ID value for the API request.

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

Revision ID value for the API request.

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

Revision ID value for the API request.

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

Revision ID value for the API request.

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

Revision ID value for the API request.

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

Revision ID value for the API request.

*/ inline SendApiAssetRequest& WithRevisionId(const char* value) { SetRevisionId(value); return *this;} private: Aws::Map m_queryStringParameters; bool m_queryStringParametersHasBeenSet = false; Aws::String m_assetId; bool m_assetIdHasBeenSet = false; Aws::String m_dataSetId; bool m_dataSetIdHasBeenSet = false; Aws::Map m_requestHeaders; bool m_requestHeadersHasBeenSet = false; Aws::String m_method; bool m_methodHasBeenSet = false; Aws::String m_path; bool m_pathHasBeenSet = false; Aws::String m_revisionId; bool m_revisionIdHasBeenSet = false; }; } // namespace Model } // namespace DataExchange } // namespace Aws