/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include #include #include using namespace Aws::Utils::Json; using namespace Aws::Utils; namespace Aws { namespace Shield { namespace Model { InvalidParameterException::InvalidParameterException() : m_messageHasBeenSet(false), m_reason(ValidationExceptionReason::NOT_SET), m_reasonHasBeenSet(false), m_fieldsHasBeenSet(false) { } InvalidParameterException::InvalidParameterException(JsonView jsonValue) : m_messageHasBeenSet(false), m_reason(ValidationExceptionReason::NOT_SET), m_reasonHasBeenSet(false), m_fieldsHasBeenSet(false) { *this = jsonValue; } InvalidParameterException& InvalidParameterException::operator =(JsonView jsonValue) { if(jsonValue.ValueExists("message")) { m_message = jsonValue.GetString("message"); m_messageHasBeenSet = true; } if(jsonValue.ValueExists("reason")) { m_reason = ValidationExceptionReasonMapper::GetValidationExceptionReasonForName(jsonValue.GetString("reason")); m_reasonHasBeenSet = true; } if(jsonValue.ValueExists("fields")) { Aws::Utils::Array fieldsJsonList = jsonValue.GetArray("fields"); for(unsigned fieldsIndex = 0; fieldsIndex < fieldsJsonList.GetLength(); ++fieldsIndex) { m_fields.push_back(fieldsJsonList[fieldsIndex].AsObject()); } m_fieldsHasBeenSet = true; } return *this; } JsonValue InvalidParameterException::Jsonize() const { JsonValue payload; if(m_messageHasBeenSet) { payload.WithString("message", m_message); } if(m_reasonHasBeenSet) { payload.WithString("reason", ValidationExceptionReasonMapper::GetNameForValidationExceptionReason(m_reason)); } if(m_fieldsHasBeenSet) { Aws::Utils::Array fieldsJsonList(m_fields.size()); for(unsigned fieldsIndex = 0; fieldsIndex < fieldsJsonList.GetLength(); ++fieldsIndex) { fieldsJsonList[fieldsIndex].AsObject(m_fields[fieldsIndex].Jsonize()); } payload.WithArray("fields", std::move(fieldsJsonList)); } return payload; } } // namespace Model } // namespace Shield } // namespace Aws