1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #include <aws/servicediscovery/model/DiscoverInstancesRequest.h>
7 #include <aws/core/utils/json/JsonSerializer.h>
8 
9 #include <utility>
10 
11 using namespace Aws::ServiceDiscovery::Model;
12 using namespace Aws::Utils::Json;
13 using namespace Aws::Utils;
14 
DiscoverInstancesRequest()15 DiscoverInstancesRequest::DiscoverInstancesRequest() :
16     m_namespaceNameHasBeenSet(false),
17     m_serviceNameHasBeenSet(false),
18     m_maxResults(0),
19     m_maxResultsHasBeenSet(false),
20     m_queryParametersHasBeenSet(false),
21     m_optionalParametersHasBeenSet(false),
22     m_healthStatus(HealthStatusFilter::NOT_SET),
23     m_healthStatusHasBeenSet(false)
24 {
25 }
26 
SerializePayload() const27 Aws::String DiscoverInstancesRequest::SerializePayload() const
28 {
29   JsonValue payload;
30 
31   if(m_namespaceNameHasBeenSet)
32   {
33    payload.WithString("NamespaceName", m_namespaceName);
34 
35   }
36 
37   if(m_serviceNameHasBeenSet)
38   {
39    payload.WithString("ServiceName", m_serviceName);
40 
41   }
42 
43   if(m_maxResultsHasBeenSet)
44   {
45    payload.WithInteger("MaxResults", m_maxResults);
46 
47   }
48 
49   if(m_queryParametersHasBeenSet)
50   {
51    JsonValue queryParametersJsonMap;
52    for(auto& queryParametersItem : m_queryParameters)
53    {
54      queryParametersJsonMap.WithString(queryParametersItem.first, queryParametersItem.second);
55    }
56    payload.WithObject("QueryParameters", std::move(queryParametersJsonMap));
57 
58   }
59 
60   if(m_optionalParametersHasBeenSet)
61   {
62    JsonValue optionalParametersJsonMap;
63    for(auto& optionalParametersItem : m_optionalParameters)
64    {
65      optionalParametersJsonMap.WithString(optionalParametersItem.first, optionalParametersItem.second);
66    }
67    payload.WithObject("OptionalParameters", std::move(optionalParametersJsonMap));
68 
69   }
70 
71   if(m_healthStatusHasBeenSet)
72   {
73    payload.WithString("HealthStatus", HealthStatusFilterMapper::GetNameForHealthStatusFilter(m_healthStatus));
74   }
75 
76   return payload.View().WriteReadable();
77 }
78 
GetRequestSpecificHeaders() const79 Aws::Http::HeaderValueCollection DiscoverInstancesRequest::GetRequestSpecificHeaders() const
80 {
81   Aws::Http::HeaderValueCollection headers;
82   headers.insert(Aws::Http::HeaderValuePair("X-Amz-Target", "Route53AutoNaming_v20170314.DiscoverInstances"));
83   return headers;
84 
85 }
86 
87 
88 
89 
90