/** * 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 Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ApiGatewayV2 { namespace Model { /** *

Represents a route response.

See Also:

AWS * API Reference

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

Represents the model selection expression of a route response. Supported only * for WebSocket APIs.

*/ inline const Aws::String& GetModelSelectionExpression() const{ return m_modelSelectionExpression; } /** *

Represents the model selection expression of a route response. Supported only * for WebSocket APIs.

*/ inline bool ModelSelectionExpressionHasBeenSet() const { return m_modelSelectionExpressionHasBeenSet; } /** *

Represents the model selection expression of a route response. Supported only * for WebSocket APIs.

*/ inline void SetModelSelectionExpression(const Aws::String& value) { m_modelSelectionExpressionHasBeenSet = true; m_modelSelectionExpression = value; } /** *

Represents the model selection expression of a route response. Supported only * for WebSocket APIs.

*/ inline void SetModelSelectionExpression(Aws::String&& value) { m_modelSelectionExpressionHasBeenSet = true; m_modelSelectionExpression = std::move(value); } /** *

Represents the model selection expression of a route response. Supported only * for WebSocket APIs.

*/ inline void SetModelSelectionExpression(const char* value) { m_modelSelectionExpressionHasBeenSet = true; m_modelSelectionExpression.assign(value); } /** *

Represents the model selection expression of a route response. Supported only * for WebSocket APIs.

*/ inline RouteResponse& WithModelSelectionExpression(const Aws::String& value) { SetModelSelectionExpression(value); return *this;} /** *

Represents the model selection expression of a route response. Supported only * for WebSocket APIs.

*/ inline RouteResponse& WithModelSelectionExpression(Aws::String&& value) { SetModelSelectionExpression(std::move(value)); return *this;} /** *

Represents the model selection expression of a route response. Supported only * for WebSocket APIs.

*/ inline RouteResponse& WithModelSelectionExpression(const char* value) { SetModelSelectionExpression(value); return *this;} /** *

Represents the response models of a route response.

*/ inline const Aws::Map& GetResponseModels() const{ return m_responseModels; } /** *

Represents the response models of a route response.

*/ inline bool ResponseModelsHasBeenSet() const { return m_responseModelsHasBeenSet; } /** *

Represents the response models of a route response.

*/ inline void SetResponseModels(const Aws::Map& value) { m_responseModelsHasBeenSet = true; m_responseModels = value; } /** *

Represents the response models of a route response.

*/ inline void SetResponseModels(Aws::Map&& value) { m_responseModelsHasBeenSet = true; m_responseModels = std::move(value); } /** *

Represents the response models of a route response.

*/ inline RouteResponse& WithResponseModels(const Aws::Map& value) { SetResponseModels(value); return *this;} /** *

Represents the response models of a route response.

*/ inline RouteResponse& WithResponseModels(Aws::Map&& value) { SetResponseModels(std::move(value)); return *this;} /** *

Represents the response models of a route response.

*/ inline RouteResponse& AddResponseModels(const Aws::String& key, const Aws::String& value) { m_responseModelsHasBeenSet = true; m_responseModels.emplace(key, value); return *this; } /** *

Represents the response models of a route response.

*/ inline RouteResponse& AddResponseModels(Aws::String&& key, const Aws::String& value) { m_responseModelsHasBeenSet = true; m_responseModels.emplace(std::move(key), value); return *this; } /** *

Represents the response models of a route response.

*/ inline RouteResponse& AddResponseModels(const Aws::String& key, Aws::String&& value) { m_responseModelsHasBeenSet = true; m_responseModels.emplace(key, std::move(value)); return *this; } /** *

Represents the response models of a route response.

*/ inline RouteResponse& AddResponseModels(Aws::String&& key, Aws::String&& value) { m_responseModelsHasBeenSet = true; m_responseModels.emplace(std::move(key), std::move(value)); return *this; } /** *

Represents the response models of a route response.

*/ inline RouteResponse& AddResponseModels(const char* key, Aws::String&& value) { m_responseModelsHasBeenSet = true; m_responseModels.emplace(key, std::move(value)); return *this; } /** *

Represents the response models of a route response.

*/ inline RouteResponse& AddResponseModels(Aws::String&& key, const char* value) { m_responseModelsHasBeenSet = true; m_responseModels.emplace(std::move(key), value); return *this; } /** *

Represents the response models of a route response.

*/ inline RouteResponse& AddResponseModels(const char* key, const char* value) { m_responseModelsHasBeenSet = true; m_responseModels.emplace(key, value); return *this; } /** *

Represents the response parameters of a route response.

*/ inline const Aws::Map& GetResponseParameters() const{ return m_responseParameters; } /** *

Represents the response parameters of a route response.

*/ inline bool ResponseParametersHasBeenSet() const { return m_responseParametersHasBeenSet; } /** *

Represents the response parameters of a route response.

*/ inline void SetResponseParameters(const Aws::Map& value) { m_responseParametersHasBeenSet = true; m_responseParameters = value; } /** *

Represents the response parameters of a route response.

*/ inline void SetResponseParameters(Aws::Map&& value) { m_responseParametersHasBeenSet = true; m_responseParameters = std::move(value); } /** *

Represents the response parameters of a route response.

*/ inline RouteResponse& WithResponseParameters(const Aws::Map& value) { SetResponseParameters(value); return *this;} /** *

Represents the response parameters of a route response.

*/ inline RouteResponse& WithResponseParameters(Aws::Map&& value) { SetResponseParameters(std::move(value)); return *this;} /** *

Represents the response parameters of a route response.

*/ inline RouteResponse& AddResponseParameters(const Aws::String& key, const ParameterConstraints& value) { m_responseParametersHasBeenSet = true; m_responseParameters.emplace(key, value); return *this; } /** *

Represents the response parameters of a route response.

*/ inline RouteResponse& AddResponseParameters(Aws::String&& key, const ParameterConstraints& value) { m_responseParametersHasBeenSet = true; m_responseParameters.emplace(std::move(key), value); return *this; } /** *

Represents the response parameters of a route response.

*/ inline RouteResponse& AddResponseParameters(const Aws::String& key, ParameterConstraints&& value) { m_responseParametersHasBeenSet = true; m_responseParameters.emplace(key, std::move(value)); return *this; } /** *

Represents the response parameters of a route response.

*/ inline RouteResponse& AddResponseParameters(Aws::String&& key, ParameterConstraints&& value) { m_responseParametersHasBeenSet = true; m_responseParameters.emplace(std::move(key), std::move(value)); return *this; } /** *

Represents the response parameters of a route response.

*/ inline RouteResponse& AddResponseParameters(const char* key, ParameterConstraints&& value) { m_responseParametersHasBeenSet = true; m_responseParameters.emplace(key, std::move(value)); return *this; } /** *

Represents the response parameters of a route response.

*/ inline RouteResponse& AddResponseParameters(const char* key, const ParameterConstraints& value) { m_responseParametersHasBeenSet = true; m_responseParameters.emplace(key, value); return *this; } /** *

Represents the identifier of a route response.

*/ inline const Aws::String& GetRouteResponseId() const{ return m_routeResponseId; } /** *

Represents the identifier of a route response.

*/ inline bool RouteResponseIdHasBeenSet() const { return m_routeResponseIdHasBeenSet; } /** *

Represents the identifier of a route response.

*/ inline void SetRouteResponseId(const Aws::String& value) { m_routeResponseIdHasBeenSet = true; m_routeResponseId = value; } /** *

Represents the identifier of a route response.

*/ inline void SetRouteResponseId(Aws::String&& value) { m_routeResponseIdHasBeenSet = true; m_routeResponseId = std::move(value); } /** *

Represents the identifier of a route response.

*/ inline void SetRouteResponseId(const char* value) { m_routeResponseIdHasBeenSet = true; m_routeResponseId.assign(value); } /** *

Represents the identifier of a route response.

*/ inline RouteResponse& WithRouteResponseId(const Aws::String& value) { SetRouteResponseId(value); return *this;} /** *

Represents the identifier of a route response.

*/ inline RouteResponse& WithRouteResponseId(Aws::String&& value) { SetRouteResponseId(std::move(value)); return *this;} /** *

Represents the identifier of a route response.

*/ inline RouteResponse& WithRouteResponseId(const char* value) { SetRouteResponseId(value); return *this;} /** *

Represents the route response key of a route response.

*/ inline const Aws::String& GetRouteResponseKey() const{ return m_routeResponseKey; } /** *

Represents the route response key of a route response.

*/ inline bool RouteResponseKeyHasBeenSet() const { return m_routeResponseKeyHasBeenSet; } /** *

Represents the route response key of a route response.

*/ inline void SetRouteResponseKey(const Aws::String& value) { m_routeResponseKeyHasBeenSet = true; m_routeResponseKey = value; } /** *

Represents the route response key of a route response.

*/ inline void SetRouteResponseKey(Aws::String&& value) { m_routeResponseKeyHasBeenSet = true; m_routeResponseKey = std::move(value); } /** *

Represents the route response key of a route response.

*/ inline void SetRouteResponseKey(const char* value) { m_routeResponseKeyHasBeenSet = true; m_routeResponseKey.assign(value); } /** *

Represents the route response key of a route response.

*/ inline RouteResponse& WithRouteResponseKey(const Aws::String& value) { SetRouteResponseKey(value); return *this;} /** *

Represents the route response key of a route response.

*/ inline RouteResponse& WithRouteResponseKey(Aws::String&& value) { SetRouteResponseKey(std::move(value)); return *this;} /** *

Represents the route response key of a route response.

*/ inline RouteResponse& WithRouteResponseKey(const char* value) { SetRouteResponseKey(value); return *this;} private: Aws::String m_modelSelectionExpression; bool m_modelSelectionExpressionHasBeenSet = false; Aws::Map m_responseModels; bool m_responseModelsHasBeenSet = false; Aws::Map m_responseParameters; bool m_responseParametersHasBeenSet = false; Aws::String m_routeResponseId; bool m_routeResponseIdHasBeenSet = false; Aws::String m_routeResponseKey; bool m_routeResponseKeyHasBeenSet = false; }; } // namespace Model } // namespace ApiGatewayV2 } // namespace Aws