1 /**
2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 * SPDX-License-Identifier: Apache-2.0.
4 */
5
6 #include <aws/iot/model/CreateScheduledAuditRequest.h>
7 #include <aws/core/utils/json/JsonSerializer.h>
8
9 #include <utility>
10
11 using namespace Aws::IoT::Model;
12 using namespace Aws::Utils::Json;
13 using namespace Aws::Utils;
14
CreateScheduledAuditRequest()15 CreateScheduledAuditRequest::CreateScheduledAuditRequest() :
16 m_frequency(AuditFrequency::NOT_SET),
17 m_frequencyHasBeenSet(false),
18 m_dayOfMonthHasBeenSet(false),
19 m_dayOfWeek(DayOfWeek::NOT_SET),
20 m_dayOfWeekHasBeenSet(false),
21 m_targetCheckNamesHasBeenSet(false),
22 m_scheduledAuditNameHasBeenSet(false),
23 m_tagsHasBeenSet(false)
24 {
25 }
26
SerializePayload() const27 Aws::String CreateScheduledAuditRequest::SerializePayload() const
28 {
29 JsonValue payload;
30
31 if(m_frequencyHasBeenSet)
32 {
33 payload.WithString("frequency", AuditFrequencyMapper::GetNameForAuditFrequency(m_frequency));
34 }
35
36 if(m_dayOfMonthHasBeenSet)
37 {
38 payload.WithString("dayOfMonth", m_dayOfMonth);
39
40 }
41
42 if(m_dayOfWeekHasBeenSet)
43 {
44 payload.WithString("dayOfWeek", DayOfWeekMapper::GetNameForDayOfWeek(m_dayOfWeek));
45 }
46
47 if(m_targetCheckNamesHasBeenSet)
48 {
49 Array<JsonValue> targetCheckNamesJsonList(m_targetCheckNames.size());
50 for(unsigned targetCheckNamesIndex = 0; targetCheckNamesIndex < targetCheckNamesJsonList.GetLength(); ++targetCheckNamesIndex)
51 {
52 targetCheckNamesJsonList[targetCheckNamesIndex].AsString(m_targetCheckNames[targetCheckNamesIndex]);
53 }
54 payload.WithArray("targetCheckNames", std::move(targetCheckNamesJsonList));
55
56 }
57
58 if(m_tagsHasBeenSet)
59 {
60 Array<JsonValue> tagsJsonList(m_tags.size());
61 for(unsigned tagsIndex = 0; tagsIndex < tagsJsonList.GetLength(); ++tagsIndex)
62 {
63 tagsJsonList[tagsIndex].AsObject(m_tags[tagsIndex].Jsonize());
64 }
65 payload.WithArray("tags", std::move(tagsJsonList));
66
67 }
68
69 return payload.View().WriteReadable();
70 }
71
72
73
74
75