/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a method response of a given HTTP status code returned to the
* client. The method response is passed from the back end through the associated
* integration response that can be transformed using a mapping template. The example request retrieves a
* MethodResponse of the 200 status code. The successful response returns Example: A MethodResponse instance of an
* API
Request
* GET
* /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200 HTTP/1.1
* Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
* X-Amz-Date: 20160603T222952Z Authorization: AWS4-HMAC-SHA256
* Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request,
* SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}Response
200 OK status
* and a payload as follows:{ "_links": { "curies": { "href":
* "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html",
* "name": "methodresponse", "templated": true }, "self": { "href":
* "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "title":
* "200" }, "methodresponse:delete": { "href":
* "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" },
* "methodresponse:update": { "href":
* "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } },
* "responseModels": { "application/json": "Empty" }, "responseParameters": {
* "method.response.header.Content-Type": false }, "statusCode": "200"
* }See Also:
AWS
* API Reference
The method response's status code.
*/ inline const Aws::String& GetStatusCode() const{ return m_statusCode; } /** *The method response's status code.
*/ inline void SetStatusCode(const Aws::String& value) { m_statusCode = value; } /** *The method response's status code.
*/ inline void SetStatusCode(Aws::String&& value) { m_statusCode = std::move(value); } /** *The method response's status code.
*/ inline void SetStatusCode(const char* value) { m_statusCode.assign(value); } /** *The method response's status code.
*/ inline PutMethodResponseResult& WithStatusCode(const Aws::String& value) { SetStatusCode(value); return *this;} /** *The method response's status code.
*/ inline PutMethodResponseResult& WithStatusCode(Aws::String&& value) { SetStatusCode(std::move(value)); return *this;} /** *The method response's status code.
*/ inline PutMethodResponseResult& WithStatusCode(const char* value) { SetStatusCode(value); return *this;} /** *A key-value map specifying required or optional response parameters that API
* Gateway can send back to the caller. A key defines a method response header and
* the value specifies whether the associated method response header is required or
* not. The expression of the key must match the pattern
* method.response.header.{name}, where name is a valid
* and unique header name. API Gateway passes certain integration response data to
* the method response headers specified here according to the mapping you
* prescribe in the API's IntegrationResponse. The integration response data
* that can be mapped include an integration response header expressed in
* integration.response.header.{name}, a static value enclosed within
* a pair of single quotes (e.g., 'application/json'), or a JSON
* expression from the back-end response payload in the form of
* integration.response.body.{JSON-expression}, where
* JSON-expression is a valid JSON expression without the
* $ prefix.)
A key-value map specifying required or optional response parameters that API
* Gateway can send back to the caller. A key defines a method response header and
* the value specifies whether the associated method response header is required or
* not. The expression of the key must match the pattern
* method.response.header.{name}, where name is a valid
* and unique header name. API Gateway passes certain integration response data to
* the method response headers specified here according to the mapping you
* prescribe in the API's IntegrationResponse. The integration response data
* that can be mapped include an integration response header expressed in
* integration.response.header.{name}, a static value enclosed within
* a pair of single quotes (e.g., 'application/json'), or a JSON
* expression from the back-end response payload in the form of
* integration.response.body.{JSON-expression}, where
* JSON-expression is a valid JSON expression without the
* $ prefix.)
A key-value map specifying required or optional response parameters that API
* Gateway can send back to the caller. A key defines a method response header and
* the value specifies whether the associated method response header is required or
* not. The expression of the key must match the pattern
* method.response.header.{name}, where name is a valid
* and unique header name. API Gateway passes certain integration response data to
* the method response headers specified here according to the mapping you
* prescribe in the API's IntegrationResponse. The integration response data
* that can be mapped include an integration response header expressed in
* integration.response.header.{name}, a static value enclosed within
* a pair of single quotes (e.g., 'application/json'), or a JSON
* expression from the back-end response payload in the form of
* integration.response.body.{JSON-expression}, where
* JSON-expression is a valid JSON expression without the
* $ prefix.)
A key-value map specifying required or optional response parameters that API
* Gateway can send back to the caller. A key defines a method response header and
* the value specifies whether the associated method response header is required or
* not. The expression of the key must match the pattern
* method.response.header.{name}, where name is a valid
* and unique header name. API Gateway passes certain integration response data to
* the method response headers specified here according to the mapping you
* prescribe in the API's IntegrationResponse. The integration response data
* that can be mapped include an integration response header expressed in
* integration.response.header.{name}, a static value enclosed within
* a pair of single quotes (e.g., 'application/json'), or a JSON
* expression from the back-end response payload in the form of
* integration.response.body.{JSON-expression}, where
* JSON-expression is a valid JSON expression without the
* $ prefix.)
A key-value map specifying required or optional response parameters that API
* Gateway can send back to the caller. A key defines a method response header and
* the value specifies whether the associated method response header is required or
* not. The expression of the key must match the pattern
* method.response.header.{name}, where name is a valid
* and unique header name. API Gateway passes certain integration response data to
* the method response headers specified here according to the mapping you
* prescribe in the API's IntegrationResponse. The integration response data
* that can be mapped include an integration response header expressed in
* integration.response.header.{name}, a static value enclosed within
* a pair of single quotes (e.g., 'application/json'), or a JSON
* expression from the back-end response payload in the form of
* integration.response.body.{JSON-expression}, where
* JSON-expression is a valid JSON expression without the
* $ prefix.)
A key-value map specifying required or optional response parameters that API
* Gateway can send back to the caller. A key defines a method response header and
* the value specifies whether the associated method response header is required or
* not. The expression of the key must match the pattern
* method.response.header.{name}, where name is a valid
* and unique header name. API Gateway passes certain integration response data to
* the method response headers specified here according to the mapping you
* prescribe in the API's IntegrationResponse. The integration response data
* that can be mapped include an integration response header expressed in
* integration.response.header.{name}, a static value enclosed within
* a pair of single quotes (e.g., 'application/json'), or a JSON
* expression from the back-end response payload in the form of
* integration.response.body.{JSON-expression}, where
* JSON-expression is a valid JSON expression without the
* $ prefix.)
A key-value map specifying required or optional response parameters that API
* Gateway can send back to the caller. A key defines a method response header and
* the value specifies whether the associated method response header is required or
* not. The expression of the key must match the pattern
* method.response.header.{name}, where name is a valid
* and unique header name. API Gateway passes certain integration response data to
* the method response headers specified here according to the mapping you
* prescribe in the API's IntegrationResponse. The integration response data
* that can be mapped include an integration response header expressed in
* integration.response.header.{name}, a static value enclosed within
* a pair of single quotes (e.g., 'application/json'), or a JSON
* expression from the back-end response payload in the form of
* integration.response.body.{JSON-expression}, where
* JSON-expression is a valid JSON expression without the
* $ prefix.)
A key-value map specifying required or optional response parameters that API
* Gateway can send back to the caller. A key defines a method response header and
* the value specifies whether the associated method response header is required or
* not. The expression of the key must match the pattern
* method.response.header.{name}, where name is a valid
* and unique header name. API Gateway passes certain integration response data to
* the method response headers specified here according to the mapping you
* prescribe in the API's IntegrationResponse. The integration response data
* that can be mapped include an integration response header expressed in
* integration.response.header.{name}, a static value enclosed within
* a pair of single quotes (e.g., 'application/json'), or a JSON
* expression from the back-end response payload in the form of
* integration.response.body.{JSON-expression}, where
* JSON-expression is a valid JSON expression without the
* $ prefix.)
Specifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline const Aws::MapSpecifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline void SetResponseModels(const Aws::MapSpecifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline void SetResponseModels(Aws::MapSpecifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& WithResponseModels(const Aws::MapSpecifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& WithResponseModels(Aws::MapSpecifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& AddResponseModels(const Aws::String& key, const Aws::String& value) { m_responseModels.emplace(key, value); return *this; } /** *Specifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& AddResponseModels(Aws::String&& key, const Aws::String& value) { m_responseModels.emplace(std::move(key), value); return *this; } /** *Specifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& AddResponseModels(const Aws::String& key, Aws::String&& value) { m_responseModels.emplace(key, std::move(value)); return *this; } /** *Specifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& AddResponseModels(Aws::String&& key, Aws::String&& value) { m_responseModels.emplace(std::move(key), std::move(value)); return *this; } /** *Specifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& AddResponseModels(const char* key, Aws::String&& value) { m_responseModels.emplace(key, std::move(value)); return *this; } /** *Specifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& AddResponseModels(Aws::String&& key, const char* value) { m_responseModels.emplace(std::move(key), value); return *this; } /** *Specifies the Model resources used for the response's content-type. * Response models are represented as a key/value map, with a content-type as the * key and a Model name as the value.
*/ inline PutMethodResponseResult& AddResponseModels(const char* key, const char* value) { m_responseModels.emplace(key, value); return *this; } private: Aws::String m_statusCode; Aws::Map