1 /**
2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 * SPDX-License-Identifier: Apache-2.0.
4 */
5
6 #include <aws/sagemaker/model/TransformJob.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 SageMaker
17 {
18 namespace Model
19 {
20
TransformJob()21 TransformJob::TransformJob() :
22 m_transformJobNameHasBeenSet(false),
23 m_transformJobArnHasBeenSet(false),
24 m_transformJobStatus(TransformJobStatus::NOT_SET),
25 m_transformJobStatusHasBeenSet(false),
26 m_failureReasonHasBeenSet(false),
27 m_modelNameHasBeenSet(false),
28 m_maxConcurrentTransforms(0),
29 m_maxConcurrentTransformsHasBeenSet(false),
30 m_modelClientConfigHasBeenSet(false),
31 m_maxPayloadInMB(0),
32 m_maxPayloadInMBHasBeenSet(false),
33 m_batchStrategy(BatchStrategy::NOT_SET),
34 m_batchStrategyHasBeenSet(false),
35 m_environmentHasBeenSet(false),
36 m_transformInputHasBeenSet(false),
37 m_transformOutputHasBeenSet(false),
38 m_transformResourcesHasBeenSet(false),
39 m_creationTimeHasBeenSet(false),
40 m_transformStartTimeHasBeenSet(false),
41 m_transformEndTimeHasBeenSet(false),
42 m_labelingJobArnHasBeenSet(false),
43 m_autoMLJobArnHasBeenSet(false),
44 m_dataProcessingHasBeenSet(false),
45 m_experimentConfigHasBeenSet(false),
46 m_tagsHasBeenSet(false)
47 {
48 }
49
TransformJob(JsonView jsonValue)50 TransformJob::TransformJob(JsonView jsonValue) :
51 m_transformJobNameHasBeenSet(false),
52 m_transformJobArnHasBeenSet(false),
53 m_transformJobStatus(TransformJobStatus::NOT_SET),
54 m_transformJobStatusHasBeenSet(false),
55 m_failureReasonHasBeenSet(false),
56 m_modelNameHasBeenSet(false),
57 m_maxConcurrentTransforms(0),
58 m_maxConcurrentTransformsHasBeenSet(false),
59 m_modelClientConfigHasBeenSet(false),
60 m_maxPayloadInMB(0),
61 m_maxPayloadInMBHasBeenSet(false),
62 m_batchStrategy(BatchStrategy::NOT_SET),
63 m_batchStrategyHasBeenSet(false),
64 m_environmentHasBeenSet(false),
65 m_transformInputHasBeenSet(false),
66 m_transformOutputHasBeenSet(false),
67 m_transformResourcesHasBeenSet(false),
68 m_creationTimeHasBeenSet(false),
69 m_transformStartTimeHasBeenSet(false),
70 m_transformEndTimeHasBeenSet(false),
71 m_labelingJobArnHasBeenSet(false),
72 m_autoMLJobArnHasBeenSet(false),
73 m_dataProcessingHasBeenSet(false),
74 m_experimentConfigHasBeenSet(false),
75 m_tagsHasBeenSet(false)
76 {
77 *this = jsonValue;
78 }
79
operator =(JsonView jsonValue)80 TransformJob& TransformJob::operator =(JsonView jsonValue)
81 {
82 if(jsonValue.ValueExists("TransformJobName"))
83 {
84 m_transformJobName = jsonValue.GetString("TransformJobName");
85
86 m_transformJobNameHasBeenSet = true;
87 }
88
89 if(jsonValue.ValueExists("TransformJobArn"))
90 {
91 m_transformJobArn = jsonValue.GetString("TransformJobArn");
92
93 m_transformJobArnHasBeenSet = true;
94 }
95
96 if(jsonValue.ValueExists("TransformJobStatus"))
97 {
98 m_transformJobStatus = TransformJobStatusMapper::GetTransformJobStatusForName(jsonValue.GetString("TransformJobStatus"));
99
100 m_transformJobStatusHasBeenSet = true;
101 }
102
103 if(jsonValue.ValueExists("FailureReason"))
104 {
105 m_failureReason = jsonValue.GetString("FailureReason");
106
107 m_failureReasonHasBeenSet = true;
108 }
109
110 if(jsonValue.ValueExists("ModelName"))
111 {
112 m_modelName = jsonValue.GetString("ModelName");
113
114 m_modelNameHasBeenSet = true;
115 }
116
117 if(jsonValue.ValueExists("MaxConcurrentTransforms"))
118 {
119 m_maxConcurrentTransforms = jsonValue.GetInteger("MaxConcurrentTransforms");
120
121 m_maxConcurrentTransformsHasBeenSet = true;
122 }
123
124 if(jsonValue.ValueExists("ModelClientConfig"))
125 {
126 m_modelClientConfig = jsonValue.GetObject("ModelClientConfig");
127
128 m_modelClientConfigHasBeenSet = true;
129 }
130
131 if(jsonValue.ValueExists("MaxPayloadInMB"))
132 {
133 m_maxPayloadInMB = jsonValue.GetInteger("MaxPayloadInMB");
134
135 m_maxPayloadInMBHasBeenSet = true;
136 }
137
138 if(jsonValue.ValueExists("BatchStrategy"))
139 {
140 m_batchStrategy = BatchStrategyMapper::GetBatchStrategyForName(jsonValue.GetString("BatchStrategy"));
141
142 m_batchStrategyHasBeenSet = true;
143 }
144
145 if(jsonValue.ValueExists("Environment"))
146 {
147 Aws::Map<Aws::String, JsonView> environmentJsonMap = jsonValue.GetObject("Environment").GetAllObjects();
148 for(auto& environmentItem : environmentJsonMap)
149 {
150 m_environment[environmentItem.first] = environmentItem.second.AsString();
151 }
152 m_environmentHasBeenSet = true;
153 }
154
155 if(jsonValue.ValueExists("TransformInput"))
156 {
157 m_transformInput = jsonValue.GetObject("TransformInput");
158
159 m_transformInputHasBeenSet = true;
160 }
161
162 if(jsonValue.ValueExists("TransformOutput"))
163 {
164 m_transformOutput = jsonValue.GetObject("TransformOutput");
165
166 m_transformOutputHasBeenSet = true;
167 }
168
169 if(jsonValue.ValueExists("TransformResources"))
170 {
171 m_transformResources = jsonValue.GetObject("TransformResources");
172
173 m_transformResourcesHasBeenSet = true;
174 }
175
176 if(jsonValue.ValueExists("CreationTime"))
177 {
178 m_creationTime = jsonValue.GetDouble("CreationTime");
179
180 m_creationTimeHasBeenSet = true;
181 }
182
183 if(jsonValue.ValueExists("TransformStartTime"))
184 {
185 m_transformStartTime = jsonValue.GetDouble("TransformStartTime");
186
187 m_transformStartTimeHasBeenSet = true;
188 }
189
190 if(jsonValue.ValueExists("TransformEndTime"))
191 {
192 m_transformEndTime = jsonValue.GetDouble("TransformEndTime");
193
194 m_transformEndTimeHasBeenSet = true;
195 }
196
197 if(jsonValue.ValueExists("LabelingJobArn"))
198 {
199 m_labelingJobArn = jsonValue.GetString("LabelingJobArn");
200
201 m_labelingJobArnHasBeenSet = true;
202 }
203
204 if(jsonValue.ValueExists("AutoMLJobArn"))
205 {
206 m_autoMLJobArn = jsonValue.GetString("AutoMLJobArn");
207
208 m_autoMLJobArnHasBeenSet = true;
209 }
210
211 if(jsonValue.ValueExists("DataProcessing"))
212 {
213 m_dataProcessing = jsonValue.GetObject("DataProcessing");
214
215 m_dataProcessingHasBeenSet = true;
216 }
217
218 if(jsonValue.ValueExists("ExperimentConfig"))
219 {
220 m_experimentConfig = jsonValue.GetObject("ExperimentConfig");
221
222 m_experimentConfigHasBeenSet = true;
223 }
224
225 if(jsonValue.ValueExists("Tags"))
226 {
227 Array<JsonView> tagsJsonList = jsonValue.GetArray("Tags");
228 for(unsigned tagsIndex = 0; tagsIndex < tagsJsonList.GetLength(); ++tagsIndex)
229 {
230 m_tags.push_back(tagsJsonList[tagsIndex].AsObject());
231 }
232 m_tagsHasBeenSet = true;
233 }
234
235 return *this;
236 }
237
Jsonize() const238 JsonValue TransformJob::Jsonize() const
239 {
240 JsonValue payload;
241
242 if(m_transformJobNameHasBeenSet)
243 {
244 payload.WithString("TransformJobName", m_transformJobName);
245
246 }
247
248 if(m_transformJobArnHasBeenSet)
249 {
250 payload.WithString("TransformJobArn", m_transformJobArn);
251
252 }
253
254 if(m_transformJobStatusHasBeenSet)
255 {
256 payload.WithString("TransformJobStatus", TransformJobStatusMapper::GetNameForTransformJobStatus(m_transformJobStatus));
257 }
258
259 if(m_failureReasonHasBeenSet)
260 {
261 payload.WithString("FailureReason", m_failureReason);
262
263 }
264
265 if(m_modelNameHasBeenSet)
266 {
267 payload.WithString("ModelName", m_modelName);
268
269 }
270
271 if(m_maxConcurrentTransformsHasBeenSet)
272 {
273 payload.WithInteger("MaxConcurrentTransforms", m_maxConcurrentTransforms);
274
275 }
276
277 if(m_modelClientConfigHasBeenSet)
278 {
279 payload.WithObject("ModelClientConfig", m_modelClientConfig.Jsonize());
280
281 }
282
283 if(m_maxPayloadInMBHasBeenSet)
284 {
285 payload.WithInteger("MaxPayloadInMB", m_maxPayloadInMB);
286
287 }
288
289 if(m_batchStrategyHasBeenSet)
290 {
291 payload.WithString("BatchStrategy", BatchStrategyMapper::GetNameForBatchStrategy(m_batchStrategy));
292 }
293
294 if(m_environmentHasBeenSet)
295 {
296 JsonValue environmentJsonMap;
297 for(auto& environmentItem : m_environment)
298 {
299 environmentJsonMap.WithString(environmentItem.first, environmentItem.second);
300 }
301 payload.WithObject("Environment", std::move(environmentJsonMap));
302
303 }
304
305 if(m_transformInputHasBeenSet)
306 {
307 payload.WithObject("TransformInput", m_transformInput.Jsonize());
308
309 }
310
311 if(m_transformOutputHasBeenSet)
312 {
313 payload.WithObject("TransformOutput", m_transformOutput.Jsonize());
314
315 }
316
317 if(m_transformResourcesHasBeenSet)
318 {
319 payload.WithObject("TransformResources", m_transformResources.Jsonize());
320
321 }
322
323 if(m_creationTimeHasBeenSet)
324 {
325 payload.WithDouble("CreationTime", m_creationTime.SecondsWithMSPrecision());
326 }
327
328 if(m_transformStartTimeHasBeenSet)
329 {
330 payload.WithDouble("TransformStartTime", m_transformStartTime.SecondsWithMSPrecision());
331 }
332
333 if(m_transformEndTimeHasBeenSet)
334 {
335 payload.WithDouble("TransformEndTime", m_transformEndTime.SecondsWithMSPrecision());
336 }
337
338 if(m_labelingJobArnHasBeenSet)
339 {
340 payload.WithString("LabelingJobArn", m_labelingJobArn);
341
342 }
343
344 if(m_autoMLJobArnHasBeenSet)
345 {
346 payload.WithString("AutoMLJobArn", m_autoMLJobArn);
347
348 }
349
350 if(m_dataProcessingHasBeenSet)
351 {
352 payload.WithObject("DataProcessing", m_dataProcessing.Jsonize());
353
354 }
355
356 if(m_experimentConfigHasBeenSet)
357 {
358 payload.WithObject("ExperimentConfig", m_experimentConfig.Jsonize());
359
360 }
361
362 if(m_tagsHasBeenSet)
363 {
364 Array<JsonValue> tagsJsonList(m_tags.size());
365 for(unsigned tagsIndex = 0; tagsIndex < tagsJsonList.GetLength(); ++tagsIndex)
366 {
367 tagsJsonList[tagsIndex].AsObject(m_tags[tagsIndex].Jsonize());
368 }
369 payload.WithArray("Tags", std::move(tagsJsonList));
370
371 }
372
373 return payload;
374 }
375
376 } // namespace Model
377 } // namespace SageMaker
378 } // namespace Aws
379