/** * 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 CodeGuruSecurity { namespace Model { Vulnerability::Vulnerability() : m_filePathHasBeenSet(false), m_idHasBeenSet(false), m_itemCount(0), m_itemCountHasBeenSet(false), m_referenceUrlsHasBeenSet(false), m_relatedVulnerabilitiesHasBeenSet(false) { } Vulnerability::Vulnerability(JsonView jsonValue) : m_filePathHasBeenSet(false), m_idHasBeenSet(false), m_itemCount(0), m_itemCountHasBeenSet(false), m_referenceUrlsHasBeenSet(false), m_relatedVulnerabilitiesHasBeenSet(false) { *this = jsonValue; } Vulnerability& Vulnerability::operator =(JsonView jsonValue) { if(jsonValue.ValueExists("filePath")) { m_filePath = jsonValue.GetObject("filePath"); m_filePathHasBeenSet = true; } if(jsonValue.ValueExists("id")) { m_id = jsonValue.GetString("id"); m_idHasBeenSet = true; } if(jsonValue.ValueExists("itemCount")) { m_itemCount = jsonValue.GetInteger("itemCount"); m_itemCountHasBeenSet = true; } if(jsonValue.ValueExists("referenceUrls")) { Aws::Utils::Array referenceUrlsJsonList = jsonValue.GetArray("referenceUrls"); for(unsigned referenceUrlsIndex = 0; referenceUrlsIndex < referenceUrlsJsonList.GetLength(); ++referenceUrlsIndex) { m_referenceUrls.push_back(referenceUrlsJsonList[referenceUrlsIndex].AsString()); } m_referenceUrlsHasBeenSet = true; } if(jsonValue.ValueExists("relatedVulnerabilities")) { Aws::Utils::Array relatedVulnerabilitiesJsonList = jsonValue.GetArray("relatedVulnerabilities"); for(unsigned relatedVulnerabilitiesIndex = 0; relatedVulnerabilitiesIndex < relatedVulnerabilitiesJsonList.GetLength(); ++relatedVulnerabilitiesIndex) { m_relatedVulnerabilities.push_back(relatedVulnerabilitiesJsonList[relatedVulnerabilitiesIndex].AsString()); } m_relatedVulnerabilitiesHasBeenSet = true; } return *this; } JsonValue Vulnerability::Jsonize() const { JsonValue payload; if(m_filePathHasBeenSet) { payload.WithObject("filePath", m_filePath.Jsonize()); } if(m_idHasBeenSet) { payload.WithString("id", m_id); } if(m_itemCountHasBeenSet) { payload.WithInteger("itemCount", m_itemCount); } if(m_referenceUrlsHasBeenSet) { Aws::Utils::Array referenceUrlsJsonList(m_referenceUrls.size()); for(unsigned referenceUrlsIndex = 0; referenceUrlsIndex < referenceUrlsJsonList.GetLength(); ++referenceUrlsIndex) { referenceUrlsJsonList[referenceUrlsIndex].AsString(m_referenceUrls[referenceUrlsIndex]); } payload.WithArray("referenceUrls", std::move(referenceUrlsJsonList)); } if(m_relatedVulnerabilitiesHasBeenSet) { Aws::Utils::Array relatedVulnerabilitiesJsonList(m_relatedVulnerabilities.size()); for(unsigned relatedVulnerabilitiesIndex = 0; relatedVulnerabilitiesIndex < relatedVulnerabilitiesJsonList.GetLength(); ++relatedVulnerabilitiesIndex) { relatedVulnerabilitiesJsonList[relatedVulnerabilitiesIndex].AsString(m_relatedVulnerabilities[relatedVulnerabilitiesIndex]); } payload.WithArray("relatedVulnerabilities", std::move(relatedVulnerabilitiesJsonList)); } return payload; } } // namespace Model } // namespace CodeGuruSecurity } // namespace Aws