1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #include <aws/panorama/model/Node.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 Panorama
17 {
18 namespace Model
19 {
20 
Node()21 Node::Node() :
22     m_nodeIdHasBeenSet(false),
23     m_nameHasBeenSet(false),
24     m_category(NodeCategory::NOT_SET),
25     m_categoryHasBeenSet(false),
26     m_ownerAccountHasBeenSet(false),
27     m_packageNameHasBeenSet(false),
28     m_packageIdHasBeenSet(false),
29     m_packageArnHasBeenSet(false),
30     m_packageVersionHasBeenSet(false),
31     m_patchVersionHasBeenSet(false),
32     m_descriptionHasBeenSet(false),
33     m_createdTimeHasBeenSet(false)
34 {
35 }
36 
Node(JsonView jsonValue)37 Node::Node(JsonView jsonValue) :
38     m_nodeIdHasBeenSet(false),
39     m_nameHasBeenSet(false),
40     m_category(NodeCategory::NOT_SET),
41     m_categoryHasBeenSet(false),
42     m_ownerAccountHasBeenSet(false),
43     m_packageNameHasBeenSet(false),
44     m_packageIdHasBeenSet(false),
45     m_packageArnHasBeenSet(false),
46     m_packageVersionHasBeenSet(false),
47     m_patchVersionHasBeenSet(false),
48     m_descriptionHasBeenSet(false),
49     m_createdTimeHasBeenSet(false)
50 {
51   *this = jsonValue;
52 }
53 
operator =(JsonView jsonValue)54 Node& Node::operator =(JsonView jsonValue)
55 {
56   if(jsonValue.ValueExists("NodeId"))
57   {
58     m_nodeId = jsonValue.GetString("NodeId");
59 
60     m_nodeIdHasBeenSet = true;
61   }
62 
63   if(jsonValue.ValueExists("Name"))
64   {
65     m_name = jsonValue.GetString("Name");
66 
67     m_nameHasBeenSet = true;
68   }
69 
70   if(jsonValue.ValueExists("Category"))
71   {
72     m_category = NodeCategoryMapper::GetNodeCategoryForName(jsonValue.GetString("Category"));
73 
74     m_categoryHasBeenSet = true;
75   }
76 
77   if(jsonValue.ValueExists("OwnerAccount"))
78   {
79     m_ownerAccount = jsonValue.GetString("OwnerAccount");
80 
81     m_ownerAccountHasBeenSet = true;
82   }
83 
84   if(jsonValue.ValueExists("PackageName"))
85   {
86     m_packageName = jsonValue.GetString("PackageName");
87 
88     m_packageNameHasBeenSet = true;
89   }
90 
91   if(jsonValue.ValueExists("PackageId"))
92   {
93     m_packageId = jsonValue.GetString("PackageId");
94 
95     m_packageIdHasBeenSet = true;
96   }
97 
98   if(jsonValue.ValueExists("PackageArn"))
99   {
100     m_packageArn = jsonValue.GetString("PackageArn");
101 
102     m_packageArnHasBeenSet = true;
103   }
104 
105   if(jsonValue.ValueExists("PackageVersion"))
106   {
107     m_packageVersion = jsonValue.GetString("PackageVersion");
108 
109     m_packageVersionHasBeenSet = true;
110   }
111 
112   if(jsonValue.ValueExists("PatchVersion"))
113   {
114     m_patchVersion = jsonValue.GetString("PatchVersion");
115 
116     m_patchVersionHasBeenSet = true;
117   }
118 
119   if(jsonValue.ValueExists("Description"))
120   {
121     m_description = jsonValue.GetString("Description");
122 
123     m_descriptionHasBeenSet = true;
124   }
125 
126   if(jsonValue.ValueExists("CreatedTime"))
127   {
128     m_createdTime = jsonValue.GetDouble("CreatedTime");
129 
130     m_createdTimeHasBeenSet = true;
131   }
132 
133   return *this;
134 }
135 
Jsonize() const136 JsonValue Node::Jsonize() const
137 {
138   JsonValue payload;
139 
140   if(m_nodeIdHasBeenSet)
141   {
142    payload.WithString("NodeId", m_nodeId);
143 
144   }
145 
146   if(m_nameHasBeenSet)
147   {
148    payload.WithString("Name", m_name);
149 
150   }
151 
152   if(m_categoryHasBeenSet)
153   {
154    payload.WithString("Category", NodeCategoryMapper::GetNameForNodeCategory(m_category));
155   }
156 
157   if(m_ownerAccountHasBeenSet)
158   {
159    payload.WithString("OwnerAccount", m_ownerAccount);
160 
161   }
162 
163   if(m_packageNameHasBeenSet)
164   {
165    payload.WithString("PackageName", m_packageName);
166 
167   }
168 
169   if(m_packageIdHasBeenSet)
170   {
171    payload.WithString("PackageId", m_packageId);
172 
173   }
174 
175   if(m_packageArnHasBeenSet)
176   {
177    payload.WithString("PackageArn", m_packageArn);
178 
179   }
180 
181   if(m_packageVersionHasBeenSet)
182   {
183    payload.WithString("PackageVersion", m_packageVersion);
184 
185   }
186 
187   if(m_patchVersionHasBeenSet)
188   {
189    payload.WithString("PatchVersion", m_patchVersion);
190 
191   }
192 
193   if(m_descriptionHasBeenSet)
194   {
195    payload.WithString("Description", m_description);
196 
197   }
198 
199   if(m_createdTimeHasBeenSet)
200   {
201    payload.WithDouble("CreatedTime", m_createdTime.SecondsWithMSPrecision());
202   }
203 
204   return payload;
205 }
206 
207 } // namespace Model
208 } // namespace Panorama
209 } // namespace Aws
210