1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #include <aws/ssm-contacts/model/CreateContactChannelRequest.h>
7 #include <aws/core/utils/json/JsonSerializer.h>
8 
9 #include <utility>
10 
11 using namespace Aws::SSMContacts::Model;
12 using namespace Aws::Utils::Json;
13 using namespace Aws::Utils;
14 
CreateContactChannelRequest()15 CreateContactChannelRequest::CreateContactChannelRequest() :
16     m_contactIdHasBeenSet(false),
17     m_nameHasBeenSet(false),
18     m_type(ChannelType::NOT_SET),
19     m_typeHasBeenSet(false),
20     m_deliveryAddressHasBeenSet(false),
21     m_deferActivation(false),
22     m_deferActivationHasBeenSet(false),
23     m_idempotencyToken(Aws::Utils::UUID::RandomUUID()),
24     m_idempotencyTokenHasBeenSet(true)
25 {
26 }
27 
SerializePayload() const28 Aws::String CreateContactChannelRequest::SerializePayload() const
29 {
30   JsonValue payload;
31 
32   if(m_contactIdHasBeenSet)
33   {
34    payload.WithString("ContactId", m_contactId);
35 
36   }
37 
38   if(m_nameHasBeenSet)
39   {
40    payload.WithString("Name", m_name);
41 
42   }
43 
44   if(m_typeHasBeenSet)
45   {
46    payload.WithString("Type", ChannelTypeMapper::GetNameForChannelType(m_type));
47   }
48 
49   if(m_deliveryAddressHasBeenSet)
50   {
51    payload.WithObject("DeliveryAddress", m_deliveryAddress.Jsonize());
52 
53   }
54 
55   if(m_deferActivationHasBeenSet)
56   {
57    payload.WithBool("DeferActivation", m_deferActivation);
58 
59   }
60 
61   if(m_idempotencyTokenHasBeenSet)
62   {
63    payload.WithString("IdempotencyToken", m_idempotencyToken);
64 
65   }
66 
67   return payload.View().WriteReadable();
68 }
69 
GetRequestSpecificHeaders() const70 Aws::Http::HeaderValueCollection CreateContactChannelRequest::GetRequestSpecificHeaders() const
71 {
72   Aws::Http::HeaderValueCollection headers;
73   headers.insert(Aws::Http::HeaderValuePair("X-Amz-Target", "SSMContacts.CreateContactChannel"));
74   return headers;
75 
76 }
77 
78 
79 
80 
81