/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include #include #include #include using namespace Aws::Utils::Json; using namespace Aws::Utils; namespace Aws { namespace APIGateway { namespace Model { IntegrationResponse::IntegrationResponse() : m_statusCodeHasBeenSet(false), m_selectionPatternHasBeenSet(false), m_responseParametersHasBeenSet(false), m_responseTemplatesHasBeenSet(false), m_contentHandling(ContentHandlingStrategy::NOT_SET), m_contentHandlingHasBeenSet(false), m_requestIdHasBeenSet(false) { } IntegrationResponse::IntegrationResponse(JsonView jsonValue) : m_statusCodeHasBeenSet(false), m_selectionPatternHasBeenSet(false), m_responseParametersHasBeenSet(false), m_responseTemplatesHasBeenSet(false), m_contentHandling(ContentHandlingStrategy::NOT_SET), m_contentHandlingHasBeenSet(false), m_requestIdHasBeenSet(false) { *this = jsonValue; } IntegrationResponse& IntegrationResponse::operator =(JsonView jsonValue) { if(jsonValue.ValueExists("statusCode")) { m_statusCode = jsonValue.GetString("statusCode"); m_statusCodeHasBeenSet = true; } if(jsonValue.ValueExists("selectionPattern")) { m_selectionPattern = jsonValue.GetString("selectionPattern"); m_selectionPatternHasBeenSet = true; } if(jsonValue.ValueExists("responseParameters")) { Aws::Map responseParametersJsonMap = jsonValue.GetObject("responseParameters").GetAllObjects(); for(auto& responseParametersItem : responseParametersJsonMap) { m_responseParameters[responseParametersItem.first] = responseParametersItem.second.AsString(); } m_responseParametersHasBeenSet = true; } if(jsonValue.ValueExists("responseTemplates")) { Aws::Map responseTemplatesJsonMap = jsonValue.GetObject("responseTemplates").GetAllObjects(); for(auto& responseTemplatesItem : responseTemplatesJsonMap) { m_responseTemplates[responseTemplatesItem.first] = responseTemplatesItem.second.AsString(); } m_responseTemplatesHasBeenSet = true; } if(jsonValue.ValueExists("contentHandling")) { m_contentHandling = ContentHandlingStrategyMapper::GetContentHandlingStrategyForName(jsonValue.GetString("contentHandling")); m_contentHandlingHasBeenSet = true; } return *this; } JsonValue IntegrationResponse::Jsonize() const { JsonValue payload; if(m_statusCodeHasBeenSet) { payload.WithString("statusCode", m_statusCode); } if(m_selectionPatternHasBeenSet) { payload.WithString("selectionPattern", m_selectionPattern); } if(m_responseParametersHasBeenSet) { JsonValue responseParametersJsonMap; for(auto& responseParametersItem : m_responseParameters) { responseParametersJsonMap.WithString(responseParametersItem.first, responseParametersItem.second); } payload.WithObject("responseParameters", std::move(responseParametersJsonMap)); } if(m_responseTemplatesHasBeenSet) { JsonValue responseTemplatesJsonMap; for(auto& responseTemplatesItem : m_responseTemplates) { responseTemplatesJsonMap.WithString(responseTemplatesItem.first, responseTemplatesItem.second); } payload.WithObject("responseTemplates", std::move(responseTemplatesJsonMap)); } if(m_contentHandlingHasBeenSet) { payload.WithString("contentHandling", ContentHandlingStrategyMapper::GetNameForContentHandlingStrategy(m_contentHandling)); } return payload; } } // namespace Model } // namespace APIGateway } // namespace Aws