1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #include <aws/mgn/model/DescribeSourceServersRequestFilters.h> 7 #include <aws/core/utils/json/JsonSerializer.h> 8 9 #include <utility> 10 11 using namespace Aws::Utils::Json; 12 using namespace Aws::Utils; 13 14 namespace Aws 15 { 16 namespace mgn 17 { 18 namespace Model 19 { 20 DescribeSourceServersRequestFilters()21DescribeSourceServersRequestFilters::DescribeSourceServersRequestFilters() : 22 m_isArchived(false), 23 m_isArchivedHasBeenSet(false), 24 m_sourceServerIDsHasBeenSet(false) 25 { 26 } 27 DescribeSourceServersRequestFilters(JsonView jsonValue)28DescribeSourceServersRequestFilters::DescribeSourceServersRequestFilters(JsonView jsonValue) : 29 m_isArchived(false), 30 m_isArchivedHasBeenSet(false), 31 m_sourceServerIDsHasBeenSet(false) 32 { 33 *this = jsonValue; 34 } 35 operator =(JsonView jsonValue)36DescribeSourceServersRequestFilters& DescribeSourceServersRequestFilters::operator =(JsonView jsonValue) 37 { 38 if(jsonValue.ValueExists("isArchived")) 39 { 40 m_isArchived = jsonValue.GetBool("isArchived"); 41 42 m_isArchivedHasBeenSet = true; 43 } 44 45 if(jsonValue.ValueExists("sourceServerIDs")) 46 { 47 Array<JsonView> sourceServerIDsJsonList = jsonValue.GetArray("sourceServerIDs"); 48 for(unsigned sourceServerIDsIndex = 0; sourceServerIDsIndex < sourceServerIDsJsonList.GetLength(); ++sourceServerIDsIndex) 49 { 50 m_sourceServerIDs.push_back(sourceServerIDsJsonList[sourceServerIDsIndex].AsString()); 51 } 52 m_sourceServerIDsHasBeenSet = true; 53 } 54 55 return *this; 56 } 57 Jsonize() const58JsonValue DescribeSourceServersRequestFilters::Jsonize() const 59 { 60 JsonValue payload; 61 62 if(m_isArchivedHasBeenSet) 63 { 64 payload.WithBool("isArchived", m_isArchived); 65 66 } 67 68 if(m_sourceServerIDsHasBeenSet) 69 { 70 Array<JsonValue> sourceServerIDsJsonList(m_sourceServerIDs.size()); 71 for(unsigned sourceServerIDsIndex = 0; sourceServerIDsIndex < sourceServerIDsJsonList.GetLength(); ++sourceServerIDsIndex) 72 { 73 sourceServerIDsJsonList[sourceServerIDsIndex].AsString(m_sourceServerIDs[sourceServerIDsIndex]); 74 } 75 payload.WithArray("sourceServerIDs", std::move(sourceServerIDsJsonList)); 76 77 } 78 79 return payload; 80 } 81 82 } // namespace Model 83 } // namespace mgn 84 } // namespace Aws 85