@aws-sdk/client-drs 3.312.0 → 3.315.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +32 -0
  2. package/dist-cjs/Drs.js +60 -0
  3. package/dist-cjs/commands/CreateLaunchConfigurationTemplateCommand.js +46 -0
  4. package/dist-cjs/commands/DeleteLaunchConfigurationTemplateCommand.js +45 -0
  5. package/dist-cjs/commands/DescribeLaunchConfigurationTemplatesCommand.js +46 -0
  6. package/dist-cjs/commands/UpdateLaunchConfigurationTemplateCommand.js +46 -0
  7. package/dist-cjs/commands/index.js +4 -0
  8. package/dist-cjs/models/models_0.js +39 -10
  9. package/dist-cjs/pagination/DescribeLaunchConfigurationTemplatesPaginator.js +29 -0
  10. package/dist-cjs/pagination/index.js +1 -0
  11. package/dist-cjs/protocols/Aws_restJson1.js +794 -1620
  12. package/dist-es/Drs.js +60 -0
  13. package/dist-es/commands/CreateLaunchConfigurationTemplateCommand.js +42 -0
  14. package/dist-es/commands/DeleteLaunchConfigurationTemplateCommand.js +41 -0
  15. package/dist-es/commands/DescribeLaunchConfigurationTemplatesCommand.js +42 -0
  16. package/dist-es/commands/UpdateLaunchConfigurationTemplateCommand.js +42 -0
  17. package/dist-es/commands/index.js +4 -0
  18. package/dist-es/models/models_0.js +32 -8
  19. package/dist-es/pagination/DescribeLaunchConfigurationTemplatesPaginator.js +25 -0
  20. package/dist-es/pagination/index.js +1 -0
  21. package/dist-es/protocols/Aws_restJson1.js +735 -1569
  22. package/dist-types/Drs.d.ts +32 -0
  23. package/dist-types/DrsClient.d.ts +6 -2
  24. package/dist-types/commands/CreateLaunchConfigurationTemplateCommand.d.ts +90 -0
  25. package/dist-types/commands/DeleteLaunchConfigurationTemplateCommand.d.ts +78 -0
  26. package/dist-types/commands/DescribeLaunchConfigurationTemplatesCommand.d.ts +82 -0
  27. package/dist-types/commands/UpdateLaunchConfigurationTemplateCommand.d.ts +88 -0
  28. package/dist-types/commands/index.d.ts +4 -0
  29. package/dist-types/models/models_0.d.ts +216 -34
  30. package/dist-types/pagination/DescribeLaunchConfigurationTemplatesPaginator.d.ts +7 -0
  31. package/dist-types/pagination/index.d.ts +1 -0
  32. package/dist-types/protocols/Aws_restJson1.d.ts +36 -0
  33. package/dist-types/ts3.4/Drs.d.ts +92 -0
  34. package/dist-types/ts3.4/DrsClient.d.ts +24 -0
  35. package/dist-types/ts3.4/commands/CreateLaunchConfigurationTemplateCommand.d.ts +41 -0
  36. package/dist-types/ts3.4/commands/DeleteLaunchConfigurationTemplateCommand.d.ts +41 -0
  37. package/dist-types/ts3.4/commands/DescribeLaunchConfigurationTemplatesCommand.d.ts +41 -0
  38. package/dist-types/ts3.4/commands/UpdateLaunchConfigurationTemplateCommand.d.ts +41 -0
  39. package/dist-types/ts3.4/commands/index.d.ts +4 -0
  40. package/dist-types/ts3.4/models/models_0.d.ts +82 -15
  41. package/dist-types/ts3.4/pagination/DescribeLaunchConfigurationTemplatesPaginator.d.ts +11 -0
  42. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  43. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +48 -0
  44. package/package.json +6 -6
@@ -1,5 +1,5 @@
1
1
  import { HttpRequest as __HttpRequest } from "@aws-sdk/protocol-http";
2
- import { decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, map as __map, resolvedPath as __resolvedPath, strictParseLong as __strictParseLong, throwDefaultError, } from "@aws-sdk/smithy-client";
2
+ import { _json, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, map, resolvedPath as __resolvedPath, strictParseLong as __strictParseLong, take, withBaseException, } from "@aws-sdk/smithy-client";
3
3
  import { DrsServiceException as __BaseException } from "../models/DrsServiceException";
4
4
  import { AccessDeniedException, ConflictException, InternalServerException, ResourceNotFoundException, ServiceQuotaExceededException, ThrottlingException, UninitializedAccountException, ValidationException, } from "../models/models_0";
5
5
  export const se_CreateExtendedSourceServerCommand = async (input, context) => {
@@ -9,10 +9,35 @@ export const se_CreateExtendedSourceServerCommand = async (input, context) => {
9
9
  };
10
10
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/CreateExtendedSourceServer";
11
11
  let body;
12
- body = JSON.stringify({
13
- ...(input.sourceServerArn != null && { sourceServerArn: input.sourceServerArn }),
14
- ...(input.tags != null && { tags: se_TagsMap(input.tags, context) }),
12
+ body = JSON.stringify(take(input, {
13
+ sourceServerArn: [],
14
+ tags: (_) => _json(_),
15
+ }));
16
+ return new __HttpRequest({
17
+ protocol,
18
+ hostname,
19
+ port,
20
+ method: "POST",
21
+ headers,
22
+ path: resolvedPath,
23
+ body,
15
24
  });
25
+ };
26
+ export const se_CreateLaunchConfigurationTemplateCommand = async (input, context) => {
27
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
28
+ const headers = {
29
+ "content-type": "application/json",
30
+ };
31
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/CreateLaunchConfigurationTemplate";
32
+ let body;
33
+ body = JSON.stringify(take(input, {
34
+ copyPrivateIp: [],
35
+ copyTags: [],
36
+ launchDisposition: [],
37
+ licensing: (_) => _json(_),
38
+ tags: (_) => _json(_),
39
+ targetInstanceTypeRightSizingMethod: [],
40
+ }));
16
41
  return new __HttpRequest({
17
42
  protocol,
18
43
  hostname,
@@ -30,33 +55,23 @@ export const se_CreateReplicationConfigurationTemplateCommand = async (input, co
30
55
  };
31
56
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/CreateReplicationConfigurationTemplate";
32
57
  let body;
33
- body = JSON.stringify({
34
- ...(input.associateDefaultSecurityGroup != null && {
35
- associateDefaultSecurityGroup: input.associateDefaultSecurityGroup,
36
- }),
37
- ...(input.autoReplicateNewDisks != null && { autoReplicateNewDisks: input.autoReplicateNewDisks }),
38
- ...(input.bandwidthThrottling != null && { bandwidthThrottling: input.bandwidthThrottling }),
39
- ...(input.createPublicIP != null && { createPublicIP: input.createPublicIP }),
40
- ...(input.dataPlaneRouting != null && { dataPlaneRouting: input.dataPlaneRouting }),
41
- ...(input.defaultLargeStagingDiskType != null && {
42
- defaultLargeStagingDiskType: input.defaultLargeStagingDiskType,
43
- }),
44
- ...(input.ebsEncryption != null && { ebsEncryption: input.ebsEncryption }),
45
- ...(input.ebsEncryptionKeyArn != null && { ebsEncryptionKeyArn: input.ebsEncryptionKeyArn }),
46
- ...(input.pitPolicy != null && { pitPolicy: se_PITPolicy(input.pitPolicy, context) }),
47
- ...(input.replicationServerInstanceType != null && {
48
- replicationServerInstanceType: input.replicationServerInstanceType,
49
- }),
50
- ...(input.replicationServersSecurityGroupsIDs != null && {
51
- replicationServersSecurityGroupsIDs: se_ReplicationServersSecurityGroupsIDs(input.replicationServersSecurityGroupsIDs, context),
52
- }),
53
- ...(input.stagingAreaSubnetId != null && { stagingAreaSubnetId: input.stagingAreaSubnetId }),
54
- ...(input.stagingAreaTags != null && { stagingAreaTags: se_TagsMap(input.stagingAreaTags, context) }),
55
- ...(input.tags != null && { tags: se_TagsMap(input.tags, context) }),
56
- ...(input.useDedicatedReplicationServer != null && {
57
- useDedicatedReplicationServer: input.useDedicatedReplicationServer,
58
- }),
59
- });
58
+ body = JSON.stringify(take(input, {
59
+ associateDefaultSecurityGroup: [],
60
+ autoReplicateNewDisks: [],
61
+ bandwidthThrottling: [],
62
+ createPublicIP: [],
63
+ dataPlaneRouting: [],
64
+ defaultLargeStagingDiskType: [],
65
+ ebsEncryption: [],
66
+ ebsEncryptionKeyArn: [],
67
+ pitPolicy: (_) => _json(_),
68
+ replicationServerInstanceType: [],
69
+ replicationServersSecurityGroupsIDs: (_) => _json(_),
70
+ stagingAreaSubnetId: [],
71
+ stagingAreaTags: (_) => _json(_),
72
+ tags: (_) => _json(_),
73
+ useDedicatedReplicationServer: [],
74
+ }));
60
75
  return new __HttpRequest({
61
76
  protocol,
62
77
  hostname,
@@ -74,9 +89,29 @@ export const se_DeleteJobCommand = async (input, context) => {
74
89
  };
75
90
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DeleteJob";
76
91
  let body;
77
- body = JSON.stringify({
78
- ...(input.jobID != null && { jobID: input.jobID }),
92
+ body = JSON.stringify(take(input, {
93
+ jobID: [],
94
+ }));
95
+ return new __HttpRequest({
96
+ protocol,
97
+ hostname,
98
+ port,
99
+ method: "POST",
100
+ headers,
101
+ path: resolvedPath,
102
+ body,
79
103
  });
104
+ };
105
+ export const se_DeleteLaunchConfigurationTemplateCommand = async (input, context) => {
106
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
107
+ const headers = {
108
+ "content-type": "application/json",
109
+ };
110
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DeleteLaunchConfigurationTemplate";
111
+ let body;
112
+ body = JSON.stringify(take(input, {
113
+ launchConfigurationTemplateID: [],
114
+ }));
80
115
  return new __HttpRequest({
81
116
  protocol,
82
117
  hostname,
@@ -94,9 +129,9 @@ export const se_DeleteRecoveryInstanceCommand = async (input, context) => {
94
129
  };
95
130
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DeleteRecoveryInstance";
96
131
  let body;
97
- body = JSON.stringify({
98
- ...(input.recoveryInstanceID != null && { recoveryInstanceID: input.recoveryInstanceID }),
99
- });
132
+ body = JSON.stringify(take(input, {
133
+ recoveryInstanceID: [],
134
+ }));
100
135
  return new __HttpRequest({
101
136
  protocol,
102
137
  hostname,
@@ -114,11 +149,9 @@ export const se_DeleteReplicationConfigurationTemplateCommand = async (input, co
114
149
  };
115
150
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DeleteReplicationConfigurationTemplate";
116
151
  let body;
117
- body = JSON.stringify({
118
- ...(input.replicationConfigurationTemplateID != null && {
119
- replicationConfigurationTemplateID: input.replicationConfigurationTemplateID,
120
- }),
121
- });
152
+ body = JSON.stringify(take(input, {
153
+ replicationConfigurationTemplateID: [],
154
+ }));
122
155
  return new __HttpRequest({
123
156
  protocol,
124
157
  hostname,
@@ -136,9 +169,9 @@ export const se_DeleteSourceServerCommand = async (input, context) => {
136
169
  };
137
170
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DeleteSourceServer";
138
171
  let body;
139
- body = JSON.stringify({
140
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
141
- });
172
+ body = JSON.stringify(take(input, {
173
+ sourceServerID: [],
174
+ }));
142
175
  return new __HttpRequest({
143
176
  protocol,
144
177
  hostname,
@@ -156,11 +189,11 @@ export const se_DescribeJobLogItemsCommand = async (input, context) => {
156
189
  };
157
190
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeJobLogItems";
158
191
  let body;
159
- body = JSON.stringify({
160
- ...(input.jobID != null && { jobID: input.jobID }),
161
- ...(input.maxResults != null && { maxResults: input.maxResults }),
162
- ...(input.nextToken != null && { nextToken: input.nextToken }),
163
- });
192
+ body = JSON.stringify(take(input, {
193
+ jobID: [],
194
+ maxResults: [],
195
+ nextToken: [],
196
+ }));
164
197
  return new __HttpRequest({
165
198
  protocol,
166
199
  hostname,
@@ -178,11 +211,33 @@ export const se_DescribeJobsCommand = async (input, context) => {
178
211
  };
179
212
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeJobs";
180
213
  let body;
181
- body = JSON.stringify({
182
- ...(input.filters != null && { filters: se_DescribeJobsRequestFilters(input.filters, context) }),
183
- ...(input.maxResults != null && { maxResults: input.maxResults }),
184
- ...(input.nextToken != null && { nextToken: input.nextToken }),
214
+ body = JSON.stringify(take(input, {
215
+ filters: (_) => _json(_),
216
+ maxResults: [],
217
+ nextToken: [],
218
+ }));
219
+ return new __HttpRequest({
220
+ protocol,
221
+ hostname,
222
+ port,
223
+ method: "POST",
224
+ headers,
225
+ path: resolvedPath,
226
+ body,
185
227
  });
228
+ };
229
+ export const se_DescribeLaunchConfigurationTemplatesCommand = async (input, context) => {
230
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
231
+ const headers = {
232
+ "content-type": "application/json",
233
+ };
234
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeLaunchConfigurationTemplates";
235
+ let body;
236
+ body = JSON.stringify(take(input, {
237
+ launchConfigurationTemplateIDs: (_) => _json(_),
238
+ maxResults: [],
239
+ nextToken: [],
240
+ }));
186
241
  return new __HttpRequest({
187
242
  protocol,
188
243
  hostname,
@@ -200,11 +255,11 @@ export const se_DescribeRecoveryInstancesCommand = async (input, context) => {
200
255
  };
201
256
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeRecoveryInstances";
202
257
  let body;
203
- body = JSON.stringify({
204
- ...(input.filters != null && { filters: se_DescribeRecoveryInstancesRequestFilters(input.filters, context) }),
205
- ...(input.maxResults != null && { maxResults: input.maxResults }),
206
- ...(input.nextToken != null && { nextToken: input.nextToken }),
207
- });
258
+ body = JSON.stringify(take(input, {
259
+ filters: (_) => _json(_),
260
+ maxResults: [],
261
+ nextToken: [],
262
+ }));
208
263
  return new __HttpRequest({
209
264
  protocol,
210
265
  hostname,
@@ -222,13 +277,13 @@ export const se_DescribeRecoverySnapshotsCommand = async (input, context) => {
222
277
  };
223
278
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeRecoverySnapshots";
224
279
  let body;
225
- body = JSON.stringify({
226
- ...(input.filters != null && { filters: se_DescribeRecoverySnapshotsRequestFilters(input.filters, context) }),
227
- ...(input.maxResults != null && { maxResults: input.maxResults }),
228
- ...(input.nextToken != null && { nextToken: input.nextToken }),
229
- ...(input.order != null && { order: input.order }),
230
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
231
- });
280
+ body = JSON.stringify(take(input, {
281
+ filters: (_) => _json(_),
282
+ maxResults: [],
283
+ nextToken: [],
284
+ order: [],
285
+ sourceServerID: [],
286
+ }));
232
287
  return new __HttpRequest({
233
288
  protocol,
234
289
  hostname,
@@ -247,13 +302,11 @@ export const se_DescribeReplicationConfigurationTemplatesCommand = async (input,
247
302
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
248
303
  "/DescribeReplicationConfigurationTemplates";
249
304
  let body;
250
- body = JSON.stringify({
251
- ...(input.maxResults != null && { maxResults: input.maxResults }),
252
- ...(input.nextToken != null && { nextToken: input.nextToken }),
253
- ...(input.replicationConfigurationTemplateIDs != null && {
254
- replicationConfigurationTemplateIDs: se_ReplicationConfigurationTemplateIDs(input.replicationConfigurationTemplateIDs, context),
255
- }),
256
- });
305
+ body = JSON.stringify(take(input, {
306
+ maxResults: [],
307
+ nextToken: [],
308
+ replicationConfigurationTemplateIDs: (_) => _json(_),
309
+ }));
257
310
  return new __HttpRequest({
258
311
  protocol,
259
312
  hostname,
@@ -271,11 +324,11 @@ export const se_DescribeSourceServersCommand = async (input, context) => {
271
324
  };
272
325
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSourceServers";
273
326
  let body;
274
- body = JSON.stringify({
275
- ...(input.filters != null && { filters: se_DescribeSourceServersRequestFilters(input.filters, context) }),
276
- ...(input.maxResults != null && { maxResults: input.maxResults }),
277
- ...(input.nextToken != null && { nextToken: input.nextToken }),
278
- });
327
+ body = JSON.stringify(take(input, {
328
+ filters: (_) => _json(_),
329
+ maxResults: [],
330
+ nextToken: [],
331
+ }));
279
332
  return new __HttpRequest({
280
333
  protocol,
281
334
  hostname,
@@ -293,9 +346,9 @@ export const se_DisconnectRecoveryInstanceCommand = async (input, context) => {
293
346
  };
294
347
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DisconnectRecoveryInstance";
295
348
  let body;
296
- body = JSON.stringify({
297
- ...(input.recoveryInstanceID != null && { recoveryInstanceID: input.recoveryInstanceID }),
298
- });
349
+ body = JSON.stringify(take(input, {
350
+ recoveryInstanceID: [],
351
+ }));
299
352
  return new __HttpRequest({
300
353
  protocol,
301
354
  hostname,
@@ -313,9 +366,9 @@ export const se_DisconnectSourceServerCommand = async (input, context) => {
313
366
  };
314
367
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DisconnectSourceServer";
315
368
  let body;
316
- body = JSON.stringify({
317
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
318
- });
369
+ body = JSON.stringify(take(input, {
370
+ sourceServerID: [],
371
+ }));
319
372
  return new __HttpRequest({
320
373
  protocol,
321
374
  hostname,
@@ -333,9 +386,9 @@ export const se_GetFailbackReplicationConfigurationCommand = async (input, conte
333
386
  };
334
387
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/GetFailbackReplicationConfiguration";
335
388
  let body;
336
- body = JSON.stringify({
337
- ...(input.recoveryInstanceID != null && { recoveryInstanceID: input.recoveryInstanceID }),
338
- });
389
+ body = JSON.stringify(take(input, {
390
+ recoveryInstanceID: [],
391
+ }));
339
392
  return new __HttpRequest({
340
393
  protocol,
341
394
  hostname,
@@ -353,9 +406,9 @@ export const se_GetLaunchConfigurationCommand = async (input, context) => {
353
406
  };
354
407
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/GetLaunchConfiguration";
355
408
  let body;
356
- body = JSON.stringify({
357
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
358
- });
409
+ body = JSON.stringify(take(input, {
410
+ sourceServerID: [],
411
+ }));
359
412
  return new __HttpRequest({
360
413
  protocol,
361
414
  hostname,
@@ -373,9 +426,9 @@ export const se_GetReplicationConfigurationCommand = async (input, context) => {
373
426
  };
374
427
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/GetReplicationConfiguration";
375
428
  let body;
376
- body = JSON.stringify({
377
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
378
- });
429
+ body = JSON.stringify(take(input, {
430
+ sourceServerID: [],
431
+ }));
379
432
  return new __HttpRequest({
380
433
  protocol,
381
434
  hostname,
@@ -411,11 +464,11 @@ export const se_ListExtensibleSourceServersCommand = async (input, context) => {
411
464
  };
412
465
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/ListExtensibleSourceServers";
413
466
  let body;
414
- body = JSON.stringify({
415
- ...(input.maxResults != null && { maxResults: input.maxResults }),
416
- ...(input.nextToken != null && { nextToken: input.nextToken }),
417
- ...(input.stagingAccountID != null && { stagingAccountID: input.stagingAccountID }),
418
- });
467
+ body = JSON.stringify(take(input, {
468
+ maxResults: [],
469
+ nextToken: [],
470
+ stagingAccountID: [],
471
+ }));
419
472
  return new __HttpRequest({
420
473
  protocol,
421
474
  hostname,
@@ -469,9 +522,9 @@ export const se_RetryDataReplicationCommand = async (input, context) => {
469
522
  };
470
523
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/RetryDataReplication";
471
524
  let body;
472
- body = JSON.stringify({
473
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
474
- });
525
+ body = JSON.stringify(take(input, {
526
+ sourceServerID: [],
527
+ }));
475
528
  return new __HttpRequest({
476
529
  protocol,
477
530
  hostname,
@@ -489,9 +542,9 @@ export const se_ReverseReplicationCommand = async (input, context) => {
489
542
  };
490
543
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/ReverseReplication";
491
544
  let body;
492
- body = JSON.stringify({
493
- ...(input.recoveryInstanceID != null && { recoveryInstanceID: input.recoveryInstanceID }),
494
- });
545
+ body = JSON.stringify(take(input, {
546
+ recoveryInstanceID: [],
547
+ }));
495
548
  return new __HttpRequest({
496
549
  protocol,
497
550
  hostname,
@@ -509,12 +562,10 @@ export const se_StartFailbackLaunchCommand = async (input, context) => {
509
562
  };
510
563
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/StartFailbackLaunch";
511
564
  let body;
512
- body = JSON.stringify({
513
- ...(input.recoveryInstanceIDs != null && {
514
- recoveryInstanceIDs: se_StartFailbackRequestRecoveryInstanceIDs(input.recoveryInstanceIDs, context),
515
- }),
516
- ...(input.tags != null && { tags: se_TagsMap(input.tags, context) }),
517
- });
565
+ body = JSON.stringify(take(input, {
566
+ recoveryInstanceIDs: (_) => _json(_),
567
+ tags: (_) => _json(_),
568
+ }));
518
569
  return new __HttpRequest({
519
570
  protocol,
520
571
  hostname,
@@ -532,13 +583,11 @@ export const se_StartRecoveryCommand = async (input, context) => {
532
583
  };
533
584
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/StartRecovery";
534
585
  let body;
535
- body = JSON.stringify({
536
- ...(input.isDrill != null && { isDrill: input.isDrill }),
537
- ...(input.sourceServers != null && {
538
- sourceServers: se_StartRecoveryRequestSourceServers(input.sourceServers, context),
539
- }),
540
- ...(input.tags != null && { tags: se_TagsMap(input.tags, context) }),
541
- });
586
+ body = JSON.stringify(take(input, {
587
+ isDrill: [],
588
+ sourceServers: (_) => _json(_),
589
+ tags: (_) => _json(_),
590
+ }));
542
591
  return new __HttpRequest({
543
592
  protocol,
544
593
  hostname,
@@ -556,9 +605,9 @@ export const se_StartReplicationCommand = async (input, context) => {
556
605
  };
557
606
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/StartReplication";
558
607
  let body;
559
- body = JSON.stringify({
560
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
561
- });
608
+ body = JSON.stringify(take(input, {
609
+ sourceServerID: [],
610
+ }));
562
611
  return new __HttpRequest({
563
612
  protocol,
564
613
  hostname,
@@ -576,9 +625,9 @@ export const se_StopFailbackCommand = async (input, context) => {
576
625
  };
577
626
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/StopFailback";
578
627
  let body;
579
- body = JSON.stringify({
580
- ...(input.recoveryInstanceID != null && { recoveryInstanceID: input.recoveryInstanceID }),
581
- });
628
+ body = JSON.stringify(take(input, {
629
+ recoveryInstanceID: [],
630
+ }));
582
631
  return new __HttpRequest({
583
632
  protocol,
584
633
  hostname,
@@ -596,9 +645,9 @@ export const se_StopReplicationCommand = async (input, context) => {
596
645
  };
597
646
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/StopReplication";
598
647
  let body;
599
- body = JSON.stringify({
600
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
601
- });
648
+ body = JSON.stringify(take(input, {
649
+ sourceServerID: [],
650
+ }));
602
651
  return new __HttpRequest({
603
652
  protocol,
604
653
  hostname,
@@ -617,9 +666,9 @@ export const se_TagResourceCommand = async (input, context) => {
617
666
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/tags/{resourceArn}";
618
667
  resolvedPath = __resolvedPath(resolvedPath, input, "resourceArn", () => input.resourceArn, "{resourceArn}", false);
619
668
  let body;
620
- body = JSON.stringify({
621
- ...(input.tags != null && { tags: se_TagsMap(input.tags, context) }),
622
- });
669
+ body = JSON.stringify(take(input, {
670
+ tags: (_) => _json(_),
671
+ }));
623
672
  return new __HttpRequest({
624
673
  protocol,
625
674
  hostname,
@@ -637,11 +686,9 @@ export const se_TerminateRecoveryInstancesCommand = async (input, context) => {
637
686
  };
638
687
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/TerminateRecoveryInstances";
639
688
  let body;
640
- body = JSON.stringify({
641
- ...(input.recoveryInstanceIDs != null && {
642
- recoveryInstanceIDs: se_RecoveryInstancesForTerminationRequest(input.recoveryInstanceIDs, context),
643
- }),
644
- });
689
+ body = JSON.stringify(take(input, {
690
+ recoveryInstanceIDs: (_) => _json(_),
691
+ }));
645
692
  return new __HttpRequest({
646
693
  protocol,
647
694
  hostname,
@@ -682,12 +729,12 @@ export const se_UpdateFailbackReplicationConfigurationCommand = async (input, co
682
729
  };
683
730
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/UpdateFailbackReplicationConfiguration";
684
731
  let body;
685
- body = JSON.stringify({
686
- ...(input.bandwidthThrottling != null && { bandwidthThrottling: input.bandwidthThrottling }),
687
- ...(input.name != null && { name: input.name }),
688
- ...(input.recoveryInstanceID != null && { recoveryInstanceID: input.recoveryInstanceID }),
689
- ...(input.usePrivateIP != null && { usePrivateIP: input.usePrivateIP }),
690
- });
732
+ body = JSON.stringify(take(input, {
733
+ bandwidthThrottling: [],
734
+ name: [],
735
+ recoveryInstanceID: [],
736
+ usePrivateIP: [],
737
+ }));
691
738
  return new __HttpRequest({
692
739
  protocol,
693
740
  hostname,
@@ -705,17 +752,40 @@ export const se_UpdateLaunchConfigurationCommand = async (input, context) => {
705
752
  };
706
753
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/UpdateLaunchConfiguration";
707
754
  let body;
708
- body = JSON.stringify({
709
- ...(input.copyPrivateIp != null && { copyPrivateIp: input.copyPrivateIp }),
710
- ...(input.copyTags != null && { copyTags: input.copyTags }),
711
- ...(input.launchDisposition != null && { launchDisposition: input.launchDisposition }),
712
- ...(input.licensing != null && { licensing: se_Licensing(input.licensing, context) }),
713
- ...(input.name != null && { name: input.name }),
714
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
715
- ...(input.targetInstanceTypeRightSizingMethod != null && {
716
- targetInstanceTypeRightSizingMethod: input.targetInstanceTypeRightSizingMethod,
717
- }),
755
+ body = JSON.stringify(take(input, {
756
+ copyPrivateIp: [],
757
+ copyTags: [],
758
+ launchDisposition: [],
759
+ licensing: (_) => _json(_),
760
+ name: [],
761
+ sourceServerID: [],
762
+ targetInstanceTypeRightSizingMethod: [],
763
+ }));
764
+ return new __HttpRequest({
765
+ protocol,
766
+ hostname,
767
+ port,
768
+ method: "POST",
769
+ headers,
770
+ path: resolvedPath,
771
+ body,
718
772
  });
773
+ };
774
+ export const se_UpdateLaunchConfigurationTemplateCommand = async (input, context) => {
775
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
776
+ const headers = {
777
+ "content-type": "application/json",
778
+ };
779
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/UpdateLaunchConfigurationTemplate";
780
+ let body;
781
+ body = JSON.stringify(take(input, {
782
+ copyPrivateIp: [],
783
+ copyTags: [],
784
+ launchConfigurationTemplateID: [],
785
+ launchDisposition: [],
786
+ licensing: (_) => _json(_),
787
+ targetInstanceTypeRightSizingMethod: [],
788
+ }));
719
789
  return new __HttpRequest({
720
790
  protocol,
721
791
  hostname,
@@ -733,37 +803,25 @@ export const se_UpdateReplicationConfigurationCommand = async (input, context) =
733
803
  };
734
804
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/UpdateReplicationConfiguration";
735
805
  let body;
736
- body = JSON.stringify({
737
- ...(input.associateDefaultSecurityGroup != null && {
738
- associateDefaultSecurityGroup: input.associateDefaultSecurityGroup,
739
- }),
740
- ...(input.autoReplicateNewDisks != null && { autoReplicateNewDisks: input.autoReplicateNewDisks }),
741
- ...(input.bandwidthThrottling != null && { bandwidthThrottling: input.bandwidthThrottling }),
742
- ...(input.createPublicIP != null && { createPublicIP: input.createPublicIP }),
743
- ...(input.dataPlaneRouting != null && { dataPlaneRouting: input.dataPlaneRouting }),
744
- ...(input.defaultLargeStagingDiskType != null && {
745
- defaultLargeStagingDiskType: input.defaultLargeStagingDiskType,
746
- }),
747
- ...(input.ebsEncryption != null && { ebsEncryption: input.ebsEncryption }),
748
- ...(input.ebsEncryptionKeyArn != null && { ebsEncryptionKeyArn: input.ebsEncryptionKeyArn }),
749
- ...(input.name != null && { name: input.name }),
750
- ...(input.pitPolicy != null && { pitPolicy: se_PITPolicy(input.pitPolicy, context) }),
751
- ...(input.replicatedDisks != null && {
752
- replicatedDisks: se_ReplicationConfigurationReplicatedDisks(input.replicatedDisks, context),
753
- }),
754
- ...(input.replicationServerInstanceType != null && {
755
- replicationServerInstanceType: input.replicationServerInstanceType,
756
- }),
757
- ...(input.replicationServersSecurityGroupsIDs != null && {
758
- replicationServersSecurityGroupsIDs: se_ReplicationServersSecurityGroupsIDs(input.replicationServersSecurityGroupsIDs, context),
759
- }),
760
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
761
- ...(input.stagingAreaSubnetId != null && { stagingAreaSubnetId: input.stagingAreaSubnetId }),
762
- ...(input.stagingAreaTags != null && { stagingAreaTags: se_TagsMap(input.stagingAreaTags, context) }),
763
- ...(input.useDedicatedReplicationServer != null && {
764
- useDedicatedReplicationServer: input.useDedicatedReplicationServer,
765
- }),
766
- });
806
+ body = JSON.stringify(take(input, {
807
+ associateDefaultSecurityGroup: [],
808
+ autoReplicateNewDisks: [],
809
+ bandwidthThrottling: [],
810
+ createPublicIP: [],
811
+ dataPlaneRouting: [],
812
+ defaultLargeStagingDiskType: [],
813
+ ebsEncryption: [],
814
+ ebsEncryptionKeyArn: [],
815
+ name: [],
816
+ pitPolicy: (_) => _json(_),
817
+ replicatedDisks: (_) => _json(_),
818
+ replicationServerInstanceType: [],
819
+ replicationServersSecurityGroupsIDs: (_) => _json(_),
820
+ sourceServerID: [],
821
+ stagingAreaSubnetId: [],
822
+ stagingAreaTags: (_) => _json(_),
823
+ useDedicatedReplicationServer: [],
824
+ }));
767
825
  return new __HttpRequest({
768
826
  protocol,
769
827
  hostname,
@@ -781,36 +839,24 @@ export const se_UpdateReplicationConfigurationTemplateCommand = async (input, co
781
839
  };
782
840
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/UpdateReplicationConfigurationTemplate";
783
841
  let body;
784
- body = JSON.stringify({
785
- ...(input.arn != null && { arn: input.arn }),
786
- ...(input.associateDefaultSecurityGroup != null && {
787
- associateDefaultSecurityGroup: input.associateDefaultSecurityGroup,
788
- }),
789
- ...(input.autoReplicateNewDisks != null && { autoReplicateNewDisks: input.autoReplicateNewDisks }),
790
- ...(input.bandwidthThrottling != null && { bandwidthThrottling: input.bandwidthThrottling }),
791
- ...(input.createPublicIP != null && { createPublicIP: input.createPublicIP }),
792
- ...(input.dataPlaneRouting != null && { dataPlaneRouting: input.dataPlaneRouting }),
793
- ...(input.defaultLargeStagingDiskType != null && {
794
- defaultLargeStagingDiskType: input.defaultLargeStagingDiskType,
795
- }),
796
- ...(input.ebsEncryption != null && { ebsEncryption: input.ebsEncryption }),
797
- ...(input.ebsEncryptionKeyArn != null && { ebsEncryptionKeyArn: input.ebsEncryptionKeyArn }),
798
- ...(input.pitPolicy != null && { pitPolicy: se_PITPolicy(input.pitPolicy, context) }),
799
- ...(input.replicationConfigurationTemplateID != null && {
800
- replicationConfigurationTemplateID: input.replicationConfigurationTemplateID,
801
- }),
802
- ...(input.replicationServerInstanceType != null && {
803
- replicationServerInstanceType: input.replicationServerInstanceType,
804
- }),
805
- ...(input.replicationServersSecurityGroupsIDs != null && {
806
- replicationServersSecurityGroupsIDs: se_ReplicationServersSecurityGroupsIDs(input.replicationServersSecurityGroupsIDs, context),
807
- }),
808
- ...(input.stagingAreaSubnetId != null && { stagingAreaSubnetId: input.stagingAreaSubnetId }),
809
- ...(input.stagingAreaTags != null && { stagingAreaTags: se_TagsMap(input.stagingAreaTags, context) }),
810
- ...(input.useDedicatedReplicationServer != null && {
811
- useDedicatedReplicationServer: input.useDedicatedReplicationServer,
812
- }),
813
- });
842
+ body = JSON.stringify(take(input, {
843
+ arn: [],
844
+ associateDefaultSecurityGroup: [],
845
+ autoReplicateNewDisks: [],
846
+ bandwidthThrottling: [],
847
+ createPublicIP: [],
848
+ dataPlaneRouting: [],
849
+ defaultLargeStagingDiskType: [],
850
+ ebsEncryption: [],
851
+ ebsEncryptionKeyArn: [],
852
+ pitPolicy: (_) => _json(_),
853
+ replicationConfigurationTemplateID: [],
854
+ replicationServerInstanceType: [],
855
+ replicationServersSecurityGroupsIDs: (_) => _json(_),
856
+ stagingAreaSubnetId: [],
857
+ stagingAreaTags: (_) => _json(_),
858
+ useDedicatedReplicationServer: [],
859
+ }));
814
860
  return new __HttpRequest({
815
861
  protocol,
816
862
  hostname,
@@ -829,9 +875,10 @@ export const de_CreateExtendedSourceServerCommand = async (output, context) => {
829
875
  $metadata: deserializeMetadata(output),
830
876
  });
831
877
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
832
- if (data.sourceServer != null) {
833
- contents.sourceServer = de_SourceServer(data.sourceServer, context);
834
- }
878
+ const doc = take(data, {
879
+ sourceServer: _json,
880
+ });
881
+ Object.assign(contents, doc);
835
882
  return contents;
836
883
  };
837
884
  const de_CreateExtendedSourceServerCommandError = async (output, context) => {
@@ -864,73 +911,89 @@ const de_CreateExtendedSourceServerCommandError = async (output, context) => {
864
911
  throw await de_ValidationExceptionRes(parsedOutput, context);
865
912
  default:
866
913
  const parsedBody = parsedOutput.body;
867
- throwDefaultError({
914
+ return throwDefaultError({
868
915
  output,
869
916
  parsedBody,
870
- exceptionCtor: __BaseException,
871
917
  errorCode,
872
918
  });
873
919
  }
874
920
  };
875
- export const de_CreateReplicationConfigurationTemplateCommand = async (output, context) => {
921
+ export const de_CreateLaunchConfigurationTemplateCommand = async (output, context) => {
876
922
  if (output.statusCode !== 201 && output.statusCode >= 300) {
877
- return de_CreateReplicationConfigurationTemplateCommandError(output, context);
923
+ return de_CreateLaunchConfigurationTemplateCommandError(output, context);
878
924
  }
879
925
  const contents = map({
880
926
  $metadata: deserializeMetadata(output),
881
927
  });
882
928
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
883
- if (data.arn != null) {
884
- contents.arn = __expectString(data.arn);
885
- }
886
- if (data.associateDefaultSecurityGroup != null) {
887
- contents.associateDefaultSecurityGroup = __expectBoolean(data.associateDefaultSecurityGroup);
888
- }
889
- if (data.autoReplicateNewDisks != null) {
890
- contents.autoReplicateNewDisks = __expectBoolean(data.autoReplicateNewDisks);
891
- }
892
- if (data.bandwidthThrottling != null) {
893
- contents.bandwidthThrottling = __expectLong(data.bandwidthThrottling);
894
- }
895
- if (data.createPublicIP != null) {
896
- contents.createPublicIP = __expectBoolean(data.createPublicIP);
897
- }
898
- if (data.dataPlaneRouting != null) {
899
- contents.dataPlaneRouting = __expectString(data.dataPlaneRouting);
900
- }
901
- if (data.defaultLargeStagingDiskType != null) {
902
- contents.defaultLargeStagingDiskType = __expectString(data.defaultLargeStagingDiskType);
903
- }
904
- if (data.ebsEncryption != null) {
905
- contents.ebsEncryption = __expectString(data.ebsEncryption);
906
- }
907
- if (data.ebsEncryptionKeyArn != null) {
908
- contents.ebsEncryptionKeyArn = __expectString(data.ebsEncryptionKeyArn);
909
- }
910
- if (data.pitPolicy != null) {
911
- contents.pitPolicy = de_PITPolicy(data.pitPolicy, context);
912
- }
913
- if (data.replicationConfigurationTemplateID != null) {
914
- contents.replicationConfigurationTemplateID = __expectString(data.replicationConfigurationTemplateID);
915
- }
916
- if (data.replicationServerInstanceType != null) {
917
- contents.replicationServerInstanceType = __expectString(data.replicationServerInstanceType);
918
- }
919
- if (data.replicationServersSecurityGroupsIDs != null) {
920
- contents.replicationServersSecurityGroupsIDs = de_ReplicationServersSecurityGroupsIDs(data.replicationServersSecurityGroupsIDs, context);
921
- }
922
- if (data.stagingAreaSubnetId != null) {
923
- contents.stagingAreaSubnetId = __expectString(data.stagingAreaSubnetId);
924
- }
925
- if (data.stagingAreaTags != null) {
926
- contents.stagingAreaTags = de_TagsMap(data.stagingAreaTags, context);
927
- }
928
- if (data.tags != null) {
929
- contents.tags = de_TagsMap(data.tags, context);
929
+ const doc = take(data, {
930
+ launchConfigurationTemplate: _json,
931
+ });
932
+ Object.assign(contents, doc);
933
+ return contents;
934
+ };
935
+ const de_CreateLaunchConfigurationTemplateCommandError = async (output, context) => {
936
+ const parsedOutput = {
937
+ ...output,
938
+ body: await parseErrorBody(output.body, context),
939
+ };
940
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
941
+ switch (errorCode) {
942
+ case "AccessDeniedException":
943
+ case "com.amazonaws.drs#AccessDeniedException":
944
+ throw await de_AccessDeniedExceptionRes(parsedOutput, context);
945
+ case "InternalServerException":
946
+ case "com.amazonaws.drs#InternalServerException":
947
+ throw await de_InternalServerExceptionRes(parsedOutput, context);
948
+ case "ServiceQuotaExceededException":
949
+ case "com.amazonaws.drs#ServiceQuotaExceededException":
950
+ throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context);
951
+ case "ThrottlingException":
952
+ case "com.amazonaws.drs#ThrottlingException":
953
+ throw await de_ThrottlingExceptionRes(parsedOutput, context);
954
+ case "UninitializedAccountException":
955
+ case "com.amazonaws.drs#UninitializedAccountException":
956
+ throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
957
+ case "ValidationException":
958
+ case "com.amazonaws.drs#ValidationException":
959
+ throw await de_ValidationExceptionRes(parsedOutput, context);
960
+ default:
961
+ const parsedBody = parsedOutput.body;
962
+ return throwDefaultError({
963
+ output,
964
+ parsedBody,
965
+ errorCode,
966
+ });
930
967
  }
931
- if (data.useDedicatedReplicationServer != null) {
932
- contents.useDedicatedReplicationServer = __expectBoolean(data.useDedicatedReplicationServer);
968
+ };
969
+ export const de_CreateReplicationConfigurationTemplateCommand = async (output, context) => {
970
+ if (output.statusCode !== 201 && output.statusCode >= 300) {
971
+ return de_CreateReplicationConfigurationTemplateCommandError(output, context);
933
972
  }
973
+ const contents = map({
974
+ $metadata: deserializeMetadata(output),
975
+ });
976
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
977
+ const doc = take(data, {
978
+ arn: __expectString,
979
+ associateDefaultSecurityGroup: __expectBoolean,
980
+ autoReplicateNewDisks: __expectBoolean,
981
+ bandwidthThrottling: __expectLong,
982
+ createPublicIP: __expectBoolean,
983
+ dataPlaneRouting: __expectString,
984
+ defaultLargeStagingDiskType: __expectString,
985
+ ebsEncryption: __expectString,
986
+ ebsEncryptionKeyArn: __expectString,
987
+ pitPolicy: _json,
988
+ replicationConfigurationTemplateID: __expectString,
989
+ replicationServerInstanceType: __expectString,
990
+ replicationServersSecurityGroupsIDs: _json,
991
+ stagingAreaSubnetId: __expectString,
992
+ stagingAreaTags: _json,
993
+ tags: _json,
994
+ useDedicatedReplicationServer: __expectBoolean,
995
+ });
996
+ Object.assign(contents, doc);
934
997
  return contents;
935
998
  };
936
999
  const de_CreateReplicationConfigurationTemplateCommandError = async (output, context) => {
@@ -960,10 +1023,9 @@ const de_CreateReplicationConfigurationTemplateCommandError = async (output, con
960
1023
  throw await de_ValidationExceptionRes(parsedOutput, context);
961
1024
  default:
962
1025
  const parsedBody = parsedOutput.body;
963
- throwDefaultError({
1026
+ return throwDefaultError({
964
1027
  output,
965
1028
  parsedBody,
966
- exceptionCtor: __BaseException,
967
1029
  errorCode,
968
1030
  });
969
1031
  }
@@ -1002,10 +1064,50 @@ const de_DeleteJobCommandError = async (output, context) => {
1002
1064
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1003
1065
  default:
1004
1066
  const parsedBody = parsedOutput.body;
1005
- throwDefaultError({
1067
+ return throwDefaultError({
1068
+ output,
1069
+ parsedBody,
1070
+ errorCode,
1071
+ });
1072
+ }
1073
+ };
1074
+ export const de_DeleteLaunchConfigurationTemplateCommand = async (output, context) => {
1075
+ if (output.statusCode !== 204 && output.statusCode >= 300) {
1076
+ return de_DeleteLaunchConfigurationTemplateCommandError(output, context);
1077
+ }
1078
+ const contents = map({
1079
+ $metadata: deserializeMetadata(output),
1080
+ });
1081
+ await collectBody(output.body, context);
1082
+ return contents;
1083
+ };
1084
+ const de_DeleteLaunchConfigurationTemplateCommandError = async (output, context) => {
1085
+ const parsedOutput = {
1086
+ ...output,
1087
+ body: await parseErrorBody(output.body, context),
1088
+ };
1089
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1090
+ switch (errorCode) {
1091
+ case "ConflictException":
1092
+ case "com.amazonaws.drs#ConflictException":
1093
+ throw await de_ConflictExceptionRes(parsedOutput, context);
1094
+ case "InternalServerException":
1095
+ case "com.amazonaws.drs#InternalServerException":
1096
+ throw await de_InternalServerExceptionRes(parsedOutput, context);
1097
+ case "ResourceNotFoundException":
1098
+ case "com.amazonaws.drs#ResourceNotFoundException":
1099
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
1100
+ case "ThrottlingException":
1101
+ case "com.amazonaws.drs#ThrottlingException":
1102
+ throw await de_ThrottlingExceptionRes(parsedOutput, context);
1103
+ case "UninitializedAccountException":
1104
+ case "com.amazonaws.drs#UninitializedAccountException":
1105
+ throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1106
+ default:
1107
+ const parsedBody = parsedOutput.body;
1108
+ return throwDefaultError({
1006
1109
  output,
1007
1110
  parsedBody,
1008
- exceptionCtor: __BaseException,
1009
1111
  errorCode,
1010
1112
  });
1011
1113
  }
@@ -1044,10 +1146,9 @@ const de_DeleteRecoveryInstanceCommandError = async (output, context) => {
1044
1146
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1045
1147
  default:
1046
1148
  const parsedBody = parsedOutput.body;
1047
- throwDefaultError({
1149
+ return throwDefaultError({
1048
1150
  output,
1049
1151
  parsedBody,
1050
- exceptionCtor: __BaseException,
1051
1152
  errorCode,
1052
1153
  });
1053
1154
  }
@@ -1086,10 +1187,9 @@ const de_DeleteReplicationConfigurationTemplateCommandError = async (output, con
1086
1187
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1087
1188
  default:
1088
1189
  const parsedBody = parsedOutput.body;
1089
- throwDefaultError({
1190
+ return throwDefaultError({
1090
1191
  output,
1091
1192
  parsedBody,
1092
- exceptionCtor: __BaseException,
1093
1193
  errorCode,
1094
1194
  });
1095
1195
  }
@@ -1128,10 +1228,9 @@ const de_DeleteSourceServerCommandError = async (output, context) => {
1128
1228
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1129
1229
  default:
1130
1230
  const parsedBody = parsedOutput.body;
1131
- throwDefaultError({
1231
+ return throwDefaultError({
1132
1232
  output,
1133
1233
  parsedBody,
1134
- exceptionCtor: __BaseException,
1135
1234
  errorCode,
1136
1235
  });
1137
1236
  }
@@ -1144,12 +1243,11 @@ export const de_DescribeJobLogItemsCommand = async (output, context) => {
1144
1243
  $metadata: deserializeMetadata(output),
1145
1244
  });
1146
1245
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1147
- if (data.items != null) {
1148
- contents.items = de_JobLogs(data.items, context);
1149
- }
1150
- if (data.nextToken != null) {
1151
- contents.nextToken = __expectString(data.nextToken);
1152
- }
1246
+ const doc = take(data, {
1247
+ items: _json,
1248
+ nextToken: __expectString,
1249
+ });
1250
+ Object.assign(contents, doc);
1153
1251
  return contents;
1154
1252
  };
1155
1253
  const de_DescribeJobLogItemsCommandError = async (output, context) => {
@@ -1173,10 +1271,9 @@ const de_DescribeJobLogItemsCommandError = async (output, context) => {
1173
1271
  throw await de_ValidationExceptionRes(parsedOutput, context);
1174
1272
  default:
1175
1273
  const parsedBody = parsedOutput.body;
1176
- throwDefaultError({
1274
+ return throwDefaultError({
1177
1275
  output,
1178
1276
  parsedBody,
1179
- exceptionCtor: __BaseException,
1180
1277
  errorCode,
1181
1278
  });
1182
1279
  }
@@ -1189,15 +1286,57 @@ export const de_DescribeJobsCommand = async (output, context) => {
1189
1286
  $metadata: deserializeMetadata(output),
1190
1287
  });
1191
1288
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1192
- if (data.items != null) {
1193
- contents.items = de_JobsList(data.items, context);
1289
+ const doc = take(data, {
1290
+ items: _json,
1291
+ nextToken: __expectString,
1292
+ });
1293
+ Object.assign(contents, doc);
1294
+ return contents;
1295
+ };
1296
+ const de_DescribeJobsCommandError = async (output, context) => {
1297
+ const parsedOutput = {
1298
+ ...output,
1299
+ body: await parseErrorBody(output.body, context),
1300
+ };
1301
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1302
+ switch (errorCode) {
1303
+ case "InternalServerException":
1304
+ case "com.amazonaws.drs#InternalServerException":
1305
+ throw await de_InternalServerExceptionRes(parsedOutput, context);
1306
+ case "ThrottlingException":
1307
+ case "com.amazonaws.drs#ThrottlingException":
1308
+ throw await de_ThrottlingExceptionRes(parsedOutput, context);
1309
+ case "UninitializedAccountException":
1310
+ case "com.amazonaws.drs#UninitializedAccountException":
1311
+ throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1312
+ case "ValidationException":
1313
+ case "com.amazonaws.drs#ValidationException":
1314
+ throw await de_ValidationExceptionRes(parsedOutput, context);
1315
+ default:
1316
+ const parsedBody = parsedOutput.body;
1317
+ return throwDefaultError({
1318
+ output,
1319
+ parsedBody,
1320
+ errorCode,
1321
+ });
1194
1322
  }
1195
- if (data.nextToken != null) {
1196
- contents.nextToken = __expectString(data.nextToken);
1323
+ };
1324
+ export const de_DescribeLaunchConfigurationTemplatesCommand = async (output, context) => {
1325
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1326
+ return de_DescribeLaunchConfigurationTemplatesCommandError(output, context);
1197
1327
  }
1328
+ const contents = map({
1329
+ $metadata: deserializeMetadata(output),
1330
+ });
1331
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1332
+ const doc = take(data, {
1333
+ items: _json,
1334
+ nextToken: __expectString,
1335
+ });
1336
+ Object.assign(contents, doc);
1198
1337
  return contents;
1199
1338
  };
1200
- const de_DescribeJobsCommandError = async (output, context) => {
1339
+ const de_DescribeLaunchConfigurationTemplatesCommandError = async (output, context) => {
1201
1340
  const parsedOutput = {
1202
1341
  ...output,
1203
1342
  body: await parseErrorBody(output.body, context),
@@ -1207,6 +1346,9 @@ const de_DescribeJobsCommandError = async (output, context) => {
1207
1346
  case "InternalServerException":
1208
1347
  case "com.amazonaws.drs#InternalServerException":
1209
1348
  throw await de_InternalServerExceptionRes(parsedOutput, context);
1349
+ case "ResourceNotFoundException":
1350
+ case "com.amazonaws.drs#ResourceNotFoundException":
1351
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
1210
1352
  case "ThrottlingException":
1211
1353
  case "com.amazonaws.drs#ThrottlingException":
1212
1354
  throw await de_ThrottlingExceptionRes(parsedOutput, context);
@@ -1218,10 +1360,9 @@ const de_DescribeJobsCommandError = async (output, context) => {
1218
1360
  throw await de_ValidationExceptionRes(parsedOutput, context);
1219
1361
  default:
1220
1362
  const parsedBody = parsedOutput.body;
1221
- throwDefaultError({
1363
+ return throwDefaultError({
1222
1364
  output,
1223
1365
  parsedBody,
1224
- exceptionCtor: __BaseException,
1225
1366
  errorCode,
1226
1367
  });
1227
1368
  }
@@ -1234,12 +1375,11 @@ export const de_DescribeRecoveryInstancesCommand = async (output, context) => {
1234
1375
  $metadata: deserializeMetadata(output),
1235
1376
  });
1236
1377
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1237
- if (data.items != null) {
1238
- contents.items = de_DescribeRecoveryInstancesItems(data.items, context);
1239
- }
1240
- if (data.nextToken != null) {
1241
- contents.nextToken = __expectString(data.nextToken);
1242
- }
1378
+ const doc = take(data, {
1379
+ items: _json,
1380
+ nextToken: __expectString,
1381
+ });
1382
+ Object.assign(contents, doc);
1243
1383
  return contents;
1244
1384
  };
1245
1385
  const de_DescribeRecoveryInstancesCommandError = async (output, context) => {
@@ -1263,10 +1403,9 @@ const de_DescribeRecoveryInstancesCommandError = async (output, context) => {
1263
1403
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1264
1404
  default:
1265
1405
  const parsedBody = parsedOutput.body;
1266
- throwDefaultError({
1406
+ return throwDefaultError({
1267
1407
  output,
1268
1408
  parsedBody,
1269
- exceptionCtor: __BaseException,
1270
1409
  errorCode,
1271
1410
  });
1272
1411
  }
@@ -1279,12 +1418,11 @@ export const de_DescribeRecoverySnapshotsCommand = async (output, context) => {
1279
1418
  $metadata: deserializeMetadata(output),
1280
1419
  });
1281
1420
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1282
- if (data.items != null) {
1283
- contents.items = de_RecoverySnapshotsList(data.items, context);
1284
- }
1285
- if (data.nextToken != null) {
1286
- contents.nextToken = __expectString(data.nextToken);
1287
- }
1421
+ const doc = take(data, {
1422
+ items: _json,
1423
+ nextToken: __expectString,
1424
+ });
1425
+ Object.assign(contents, doc);
1288
1426
  return contents;
1289
1427
  };
1290
1428
  const de_DescribeRecoverySnapshotsCommandError = async (output, context) => {
@@ -1311,10 +1449,9 @@ const de_DescribeRecoverySnapshotsCommandError = async (output, context) => {
1311
1449
  throw await de_ValidationExceptionRes(parsedOutput, context);
1312
1450
  default:
1313
1451
  const parsedBody = parsedOutput.body;
1314
- throwDefaultError({
1452
+ return throwDefaultError({
1315
1453
  output,
1316
1454
  parsedBody,
1317
- exceptionCtor: __BaseException,
1318
1455
  errorCode,
1319
1456
  });
1320
1457
  }
@@ -1327,12 +1464,11 @@ export const de_DescribeReplicationConfigurationTemplatesCommand = async (output
1327
1464
  $metadata: deserializeMetadata(output),
1328
1465
  });
1329
1466
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1330
- if (data.items != null) {
1331
- contents.items = de_ReplicationConfigurationTemplates(data.items, context);
1332
- }
1333
- if (data.nextToken != null) {
1334
- contents.nextToken = __expectString(data.nextToken);
1335
- }
1467
+ const doc = take(data, {
1468
+ items: _json,
1469
+ nextToken: __expectString,
1470
+ });
1471
+ Object.assign(contents, doc);
1336
1472
  return contents;
1337
1473
  };
1338
1474
  const de_DescribeReplicationConfigurationTemplatesCommandError = async (output, context) => {
@@ -1359,10 +1495,9 @@ const de_DescribeReplicationConfigurationTemplatesCommandError = async (output,
1359
1495
  throw await de_ValidationExceptionRes(parsedOutput, context);
1360
1496
  default:
1361
1497
  const parsedBody = parsedOutput.body;
1362
- throwDefaultError({
1498
+ return throwDefaultError({
1363
1499
  output,
1364
1500
  parsedBody,
1365
- exceptionCtor: __BaseException,
1366
1501
  errorCode,
1367
1502
  });
1368
1503
  }
@@ -1375,12 +1510,11 @@ export const de_DescribeSourceServersCommand = async (output, context) => {
1375
1510
  $metadata: deserializeMetadata(output),
1376
1511
  });
1377
1512
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1378
- if (data.items != null) {
1379
- contents.items = de_SourceServersList(data.items, context);
1380
- }
1381
- if (data.nextToken != null) {
1382
- contents.nextToken = __expectString(data.nextToken);
1383
- }
1513
+ const doc = take(data, {
1514
+ items: _json,
1515
+ nextToken: __expectString,
1516
+ });
1517
+ Object.assign(contents, doc);
1384
1518
  return contents;
1385
1519
  };
1386
1520
  const de_DescribeSourceServersCommandError = async (output, context) => {
@@ -1404,10 +1538,9 @@ const de_DescribeSourceServersCommandError = async (output, context) => {
1404
1538
  throw await de_ValidationExceptionRes(parsedOutput, context);
1405
1539
  default:
1406
1540
  const parsedBody = parsedOutput.body;
1407
- throwDefaultError({
1541
+ return throwDefaultError({
1408
1542
  output,
1409
1543
  parsedBody,
1410
- exceptionCtor: __BaseException,
1411
1544
  errorCode,
1412
1545
  });
1413
1546
  }
@@ -1449,10 +1582,9 @@ const de_DisconnectRecoveryInstanceCommandError = async (output, context) => {
1449
1582
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1450
1583
  default:
1451
1584
  const parsedBody = parsedOutput.body;
1452
- throwDefaultError({
1585
+ return throwDefaultError({
1453
1586
  output,
1454
1587
  parsedBody,
1455
- exceptionCtor: __BaseException,
1456
1588
  errorCode,
1457
1589
  });
1458
1590
  }
@@ -1465,42 +1597,21 @@ export const de_DisconnectSourceServerCommand = async (output, context) => {
1465
1597
  $metadata: deserializeMetadata(output),
1466
1598
  });
1467
1599
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1468
- if (data.arn != null) {
1469
- contents.arn = __expectString(data.arn);
1470
- }
1471
- if (data.dataReplicationInfo != null) {
1472
- contents.dataReplicationInfo = de_DataReplicationInfo(data.dataReplicationInfo, context);
1473
- }
1474
- if (data.lastLaunchResult != null) {
1475
- contents.lastLaunchResult = __expectString(data.lastLaunchResult);
1476
- }
1477
- if (data.lifeCycle != null) {
1478
- contents.lifeCycle = de_LifeCycle(data.lifeCycle, context);
1479
- }
1480
- if (data.recoveryInstanceId != null) {
1481
- contents.recoveryInstanceId = __expectString(data.recoveryInstanceId);
1482
- }
1483
- if (data.replicationDirection != null) {
1484
- contents.replicationDirection = __expectString(data.replicationDirection);
1485
- }
1486
- if (data.reversedDirectionSourceServerArn != null) {
1487
- contents.reversedDirectionSourceServerArn = __expectString(data.reversedDirectionSourceServerArn);
1488
- }
1489
- if (data.sourceCloudProperties != null) {
1490
- contents.sourceCloudProperties = de_SourceCloudProperties(data.sourceCloudProperties, context);
1491
- }
1492
- if (data.sourceProperties != null) {
1493
- contents.sourceProperties = de_SourceProperties(data.sourceProperties, context);
1494
- }
1495
- if (data.sourceServerID != null) {
1496
- contents.sourceServerID = __expectString(data.sourceServerID);
1497
- }
1498
- if (data.stagingArea != null) {
1499
- contents.stagingArea = de_StagingArea(data.stagingArea, context);
1500
- }
1501
- if (data.tags != null) {
1502
- contents.tags = de_TagsMap(data.tags, context);
1503
- }
1600
+ const doc = take(data, {
1601
+ arn: __expectString,
1602
+ dataReplicationInfo: _json,
1603
+ lastLaunchResult: __expectString,
1604
+ lifeCycle: _json,
1605
+ recoveryInstanceId: __expectString,
1606
+ replicationDirection: __expectString,
1607
+ reversedDirectionSourceServerArn: __expectString,
1608
+ sourceCloudProperties: _json,
1609
+ sourceProperties: _json,
1610
+ sourceServerID: __expectString,
1611
+ stagingArea: _json,
1612
+ tags: _json,
1613
+ });
1614
+ Object.assign(contents, doc);
1504
1615
  return contents;
1505
1616
  };
1506
1617
  const de_DisconnectSourceServerCommandError = async (output, context) => {
@@ -1527,10 +1638,9 @@ const de_DisconnectSourceServerCommandError = async (output, context) => {
1527
1638
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1528
1639
  default:
1529
1640
  const parsedBody = parsedOutput.body;
1530
- throwDefaultError({
1641
+ return throwDefaultError({
1531
1642
  output,
1532
1643
  parsedBody,
1533
- exceptionCtor: __BaseException,
1534
1644
  errorCode,
1535
1645
  });
1536
1646
  }
@@ -1543,18 +1653,13 @@ export const de_GetFailbackReplicationConfigurationCommand = async (output, cont
1543
1653
  $metadata: deserializeMetadata(output),
1544
1654
  });
1545
1655
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1546
- if (data.bandwidthThrottling != null) {
1547
- contents.bandwidthThrottling = __expectLong(data.bandwidthThrottling);
1548
- }
1549
- if (data.name != null) {
1550
- contents.name = __expectString(data.name);
1551
- }
1552
- if (data.recoveryInstanceID != null) {
1553
- contents.recoveryInstanceID = __expectString(data.recoveryInstanceID);
1554
- }
1555
- if (data.usePrivateIP != null) {
1556
- contents.usePrivateIP = __expectBoolean(data.usePrivateIP);
1557
- }
1656
+ const doc = take(data, {
1657
+ bandwidthThrottling: __expectLong,
1658
+ name: __expectString,
1659
+ recoveryInstanceID: __expectString,
1660
+ usePrivateIP: __expectBoolean,
1661
+ });
1662
+ Object.assign(contents, doc);
1558
1663
  return contents;
1559
1664
  };
1560
1665
  const de_GetFailbackReplicationConfigurationCommandError = async (output, context) => {
@@ -1578,10 +1683,9 @@ const de_GetFailbackReplicationConfigurationCommandError = async (output, contex
1578
1683
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1579
1684
  default:
1580
1685
  const parsedBody = parsedOutput.body;
1581
- throwDefaultError({
1686
+ return throwDefaultError({
1582
1687
  output,
1583
1688
  parsedBody,
1584
- exceptionCtor: __BaseException,
1585
1689
  errorCode,
1586
1690
  });
1587
1691
  }
@@ -1594,30 +1698,17 @@ export const de_GetLaunchConfigurationCommand = async (output, context) => {
1594
1698
  $metadata: deserializeMetadata(output),
1595
1699
  });
1596
1700
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1597
- if (data.copyPrivateIp != null) {
1598
- contents.copyPrivateIp = __expectBoolean(data.copyPrivateIp);
1599
- }
1600
- if (data.copyTags != null) {
1601
- contents.copyTags = __expectBoolean(data.copyTags);
1602
- }
1603
- if (data.ec2LaunchTemplateID != null) {
1604
- contents.ec2LaunchTemplateID = __expectString(data.ec2LaunchTemplateID);
1605
- }
1606
- if (data.launchDisposition != null) {
1607
- contents.launchDisposition = __expectString(data.launchDisposition);
1608
- }
1609
- if (data.licensing != null) {
1610
- contents.licensing = de_Licensing(data.licensing, context);
1611
- }
1612
- if (data.name != null) {
1613
- contents.name = __expectString(data.name);
1614
- }
1615
- if (data.sourceServerID != null) {
1616
- contents.sourceServerID = __expectString(data.sourceServerID);
1617
- }
1618
- if (data.targetInstanceTypeRightSizingMethod != null) {
1619
- contents.targetInstanceTypeRightSizingMethod = __expectString(data.targetInstanceTypeRightSizingMethod);
1620
- }
1701
+ const doc = take(data, {
1702
+ copyPrivateIp: __expectBoolean,
1703
+ copyTags: __expectBoolean,
1704
+ ec2LaunchTemplateID: __expectString,
1705
+ launchDisposition: __expectString,
1706
+ licensing: _json,
1707
+ name: __expectString,
1708
+ sourceServerID: __expectString,
1709
+ targetInstanceTypeRightSizingMethod: __expectString,
1710
+ });
1711
+ Object.assign(contents, doc);
1621
1712
  return contents;
1622
1713
  };
1623
1714
  const de_GetLaunchConfigurationCommandError = async (output, context) => {
@@ -1641,10 +1732,9 @@ const de_GetLaunchConfigurationCommandError = async (output, context) => {
1641
1732
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1642
1733
  default:
1643
1734
  const parsedBody = parsedOutput.body;
1644
- throwDefaultError({
1735
+ return throwDefaultError({
1645
1736
  output,
1646
1737
  parsedBody,
1647
- exceptionCtor: __BaseException,
1648
1738
  errorCode,
1649
1739
  });
1650
1740
  }
@@ -1657,57 +1747,26 @@ export const de_GetReplicationConfigurationCommand = async (output, context) =>
1657
1747
  $metadata: deserializeMetadata(output),
1658
1748
  });
1659
1749
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1660
- if (data.associateDefaultSecurityGroup != null) {
1661
- contents.associateDefaultSecurityGroup = __expectBoolean(data.associateDefaultSecurityGroup);
1662
- }
1663
- if (data.autoReplicateNewDisks != null) {
1664
- contents.autoReplicateNewDisks = __expectBoolean(data.autoReplicateNewDisks);
1665
- }
1666
- if (data.bandwidthThrottling != null) {
1667
- contents.bandwidthThrottling = __expectLong(data.bandwidthThrottling);
1668
- }
1669
- if (data.createPublicIP != null) {
1670
- contents.createPublicIP = __expectBoolean(data.createPublicIP);
1671
- }
1672
- if (data.dataPlaneRouting != null) {
1673
- contents.dataPlaneRouting = __expectString(data.dataPlaneRouting);
1674
- }
1675
- if (data.defaultLargeStagingDiskType != null) {
1676
- contents.defaultLargeStagingDiskType = __expectString(data.defaultLargeStagingDiskType);
1677
- }
1678
- if (data.ebsEncryption != null) {
1679
- contents.ebsEncryption = __expectString(data.ebsEncryption);
1680
- }
1681
- if (data.ebsEncryptionKeyArn != null) {
1682
- contents.ebsEncryptionKeyArn = __expectString(data.ebsEncryptionKeyArn);
1683
- }
1684
- if (data.name != null) {
1685
- contents.name = __expectString(data.name);
1686
- }
1687
- if (data.pitPolicy != null) {
1688
- contents.pitPolicy = de_PITPolicy(data.pitPolicy, context);
1689
- }
1690
- if (data.replicatedDisks != null) {
1691
- contents.replicatedDisks = de_ReplicationConfigurationReplicatedDisks(data.replicatedDisks, context);
1692
- }
1693
- if (data.replicationServerInstanceType != null) {
1694
- contents.replicationServerInstanceType = __expectString(data.replicationServerInstanceType);
1695
- }
1696
- if (data.replicationServersSecurityGroupsIDs != null) {
1697
- contents.replicationServersSecurityGroupsIDs = de_ReplicationServersSecurityGroupsIDs(data.replicationServersSecurityGroupsIDs, context);
1698
- }
1699
- if (data.sourceServerID != null) {
1700
- contents.sourceServerID = __expectString(data.sourceServerID);
1701
- }
1702
- if (data.stagingAreaSubnetId != null) {
1703
- contents.stagingAreaSubnetId = __expectString(data.stagingAreaSubnetId);
1704
- }
1705
- if (data.stagingAreaTags != null) {
1706
- contents.stagingAreaTags = de_TagsMap(data.stagingAreaTags, context);
1707
- }
1708
- if (data.useDedicatedReplicationServer != null) {
1709
- contents.useDedicatedReplicationServer = __expectBoolean(data.useDedicatedReplicationServer);
1710
- }
1750
+ const doc = take(data, {
1751
+ associateDefaultSecurityGroup: __expectBoolean,
1752
+ autoReplicateNewDisks: __expectBoolean,
1753
+ bandwidthThrottling: __expectLong,
1754
+ createPublicIP: __expectBoolean,
1755
+ dataPlaneRouting: __expectString,
1756
+ defaultLargeStagingDiskType: __expectString,
1757
+ ebsEncryption: __expectString,
1758
+ ebsEncryptionKeyArn: __expectString,
1759
+ name: __expectString,
1760
+ pitPolicy: _json,
1761
+ replicatedDisks: _json,
1762
+ replicationServerInstanceType: __expectString,
1763
+ replicationServersSecurityGroupsIDs: _json,
1764
+ sourceServerID: __expectString,
1765
+ stagingAreaSubnetId: __expectString,
1766
+ stagingAreaTags: _json,
1767
+ useDedicatedReplicationServer: __expectBoolean,
1768
+ });
1769
+ Object.assign(contents, doc);
1711
1770
  return contents;
1712
1771
  };
1713
1772
  const de_GetReplicationConfigurationCommandError = async (output, context) => {
@@ -1734,10 +1793,9 @@ const de_GetReplicationConfigurationCommandError = async (output, context) => {
1734
1793
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
1735
1794
  default:
1736
1795
  const parsedBody = parsedOutput.body;
1737
- throwDefaultError({
1796
+ return throwDefaultError({
1738
1797
  output,
1739
1798
  parsedBody,
1740
- exceptionCtor: __BaseException,
1741
1799
  errorCode,
1742
1800
  });
1743
1801
  }
@@ -1773,10 +1831,9 @@ const de_InitializeServiceCommandError = async (output, context) => {
1773
1831
  throw await de_ValidationExceptionRes(parsedOutput, context);
1774
1832
  default:
1775
1833
  const parsedBody = parsedOutput.body;
1776
- throwDefaultError({
1834
+ return throwDefaultError({
1777
1835
  output,
1778
1836
  parsedBody,
1779
- exceptionCtor: __BaseException,
1780
1837
  errorCode,
1781
1838
  });
1782
1839
  }
@@ -1789,12 +1846,11 @@ export const de_ListExtensibleSourceServersCommand = async (output, context) =>
1789
1846
  $metadata: deserializeMetadata(output),
1790
1847
  });
1791
1848
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1792
- if (data.items != null) {
1793
- contents.items = de_StagingSourceServersList(data.items, context);
1794
- }
1795
- if (data.nextToken != null) {
1796
- contents.nextToken = __expectString(data.nextToken);
1797
- }
1849
+ const doc = take(data, {
1850
+ items: _json,
1851
+ nextToken: __expectString,
1852
+ });
1853
+ Object.assign(contents, doc);
1798
1854
  return contents;
1799
1855
  };
1800
1856
  const de_ListExtensibleSourceServersCommandError = async (output, context) => {
@@ -1821,10 +1877,9 @@ const de_ListExtensibleSourceServersCommandError = async (output, context) => {
1821
1877
  throw await de_ValidationExceptionRes(parsedOutput, context);
1822
1878
  default:
1823
1879
  const parsedBody = parsedOutput.body;
1824
- throwDefaultError({
1880
+ return throwDefaultError({
1825
1881
  output,
1826
1882
  parsedBody,
1827
- exceptionCtor: __BaseException,
1828
1883
  errorCode,
1829
1884
  });
1830
1885
  }
@@ -1837,12 +1892,11 @@ export const de_ListStagingAccountsCommand = async (output, context) => {
1837
1892
  $metadata: deserializeMetadata(output),
1838
1893
  });
1839
1894
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1840
- if (data.accounts != null) {
1841
- contents.accounts = de_Accounts(data.accounts, context);
1842
- }
1843
- if (data.nextToken != null) {
1844
- contents.nextToken = __expectString(data.nextToken);
1845
- }
1895
+ const doc = take(data, {
1896
+ accounts: _json,
1897
+ nextToken: __expectString,
1898
+ });
1899
+ Object.assign(contents, doc);
1846
1900
  return contents;
1847
1901
  };
1848
1902
  const de_ListStagingAccountsCommandError = async (output, context) => {
@@ -1869,10 +1923,9 @@ const de_ListStagingAccountsCommandError = async (output, context) => {
1869
1923
  throw await de_ValidationExceptionRes(parsedOutput, context);
1870
1924
  default:
1871
1925
  const parsedBody = parsedOutput.body;
1872
- throwDefaultError({
1926
+ return throwDefaultError({
1873
1927
  output,
1874
1928
  parsedBody,
1875
- exceptionCtor: __BaseException,
1876
1929
  errorCode,
1877
1930
  });
1878
1931
  }
@@ -1885,9 +1938,10 @@ export const de_ListTagsForResourceCommand = async (output, context) => {
1885
1938
  $metadata: deserializeMetadata(output),
1886
1939
  });
1887
1940
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1888
- if (data.tags != null) {
1889
- contents.tags = de_TagsMap(data.tags, context);
1890
- }
1941
+ const doc = take(data, {
1942
+ tags: _json,
1943
+ });
1944
+ Object.assign(contents, doc);
1891
1945
  return contents;
1892
1946
  };
1893
1947
  const de_ListTagsForResourceCommandError = async (output, context) => {
@@ -1914,10 +1968,9 @@ const de_ListTagsForResourceCommandError = async (output, context) => {
1914
1968
  throw await de_ValidationExceptionRes(parsedOutput, context);
1915
1969
  default:
1916
1970
  const parsedBody = parsedOutput.body;
1917
- throwDefaultError({
1971
+ return throwDefaultError({
1918
1972
  output,
1919
1973
  parsedBody,
1920
- exceptionCtor: __BaseException,
1921
1974
  errorCode,
1922
1975
  });
1923
1976
  }
@@ -1930,42 +1983,21 @@ export const de_RetryDataReplicationCommand = async (output, context) => {
1930
1983
  $metadata: deserializeMetadata(output),
1931
1984
  });
1932
1985
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1933
- if (data.arn != null) {
1934
- contents.arn = __expectString(data.arn);
1935
- }
1936
- if (data.dataReplicationInfo != null) {
1937
- contents.dataReplicationInfo = de_DataReplicationInfo(data.dataReplicationInfo, context);
1938
- }
1939
- if (data.lastLaunchResult != null) {
1940
- contents.lastLaunchResult = __expectString(data.lastLaunchResult);
1941
- }
1942
- if (data.lifeCycle != null) {
1943
- contents.lifeCycle = de_LifeCycle(data.lifeCycle, context);
1944
- }
1945
- if (data.recoveryInstanceId != null) {
1946
- contents.recoveryInstanceId = __expectString(data.recoveryInstanceId);
1947
- }
1948
- if (data.replicationDirection != null) {
1949
- contents.replicationDirection = __expectString(data.replicationDirection);
1950
- }
1951
- if (data.reversedDirectionSourceServerArn != null) {
1952
- contents.reversedDirectionSourceServerArn = __expectString(data.reversedDirectionSourceServerArn);
1953
- }
1954
- if (data.sourceCloudProperties != null) {
1955
- contents.sourceCloudProperties = de_SourceCloudProperties(data.sourceCloudProperties, context);
1956
- }
1957
- if (data.sourceProperties != null) {
1958
- contents.sourceProperties = de_SourceProperties(data.sourceProperties, context);
1959
- }
1960
- if (data.sourceServerID != null) {
1961
- contents.sourceServerID = __expectString(data.sourceServerID);
1962
- }
1963
- if (data.stagingArea != null) {
1964
- contents.stagingArea = de_StagingArea(data.stagingArea, context);
1965
- }
1966
- if (data.tags != null) {
1967
- contents.tags = de_TagsMap(data.tags, context);
1968
- }
1986
+ const doc = take(data, {
1987
+ arn: __expectString,
1988
+ dataReplicationInfo: _json,
1989
+ lastLaunchResult: __expectString,
1990
+ lifeCycle: _json,
1991
+ recoveryInstanceId: __expectString,
1992
+ replicationDirection: __expectString,
1993
+ reversedDirectionSourceServerArn: __expectString,
1994
+ sourceCloudProperties: _json,
1995
+ sourceProperties: _json,
1996
+ sourceServerID: __expectString,
1997
+ stagingArea: _json,
1998
+ tags: _json,
1999
+ });
2000
+ Object.assign(contents, doc);
1969
2001
  return contents;
1970
2002
  };
1971
2003
  const de_RetryDataReplicationCommandError = async (output, context) => {
@@ -1992,10 +2024,9 @@ const de_RetryDataReplicationCommandError = async (output, context) => {
1992
2024
  throw await de_ValidationExceptionRes(parsedOutput, context);
1993
2025
  default:
1994
2026
  const parsedBody = parsedOutput.body;
1995
- throwDefaultError({
2027
+ return throwDefaultError({
1996
2028
  output,
1997
2029
  parsedBody,
1998
- exceptionCtor: __BaseException,
1999
2030
  errorCode,
2000
2031
  });
2001
2032
  }
@@ -2008,9 +2039,10 @@ export const de_ReverseReplicationCommand = async (output, context) => {
2008
2039
  $metadata: deserializeMetadata(output),
2009
2040
  });
2010
2041
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2011
- if (data.reversedDirectionSourceServerArn != null) {
2012
- contents.reversedDirectionSourceServerArn = __expectString(data.reversedDirectionSourceServerArn);
2013
- }
2042
+ const doc = take(data, {
2043
+ reversedDirectionSourceServerArn: __expectString,
2044
+ });
2045
+ Object.assign(contents, doc);
2014
2046
  return contents;
2015
2047
  };
2016
2048
  const de_ReverseReplicationCommandError = async (output, context) => {
@@ -2043,10 +2075,9 @@ const de_ReverseReplicationCommandError = async (output, context) => {
2043
2075
  throw await de_ValidationExceptionRes(parsedOutput, context);
2044
2076
  default:
2045
2077
  const parsedBody = parsedOutput.body;
2046
- throwDefaultError({
2078
+ return throwDefaultError({
2047
2079
  output,
2048
2080
  parsedBody,
2049
- exceptionCtor: __BaseException,
2050
2081
  errorCode,
2051
2082
  });
2052
2083
  }
@@ -2059,9 +2090,10 @@ export const de_StartFailbackLaunchCommand = async (output, context) => {
2059
2090
  $metadata: deserializeMetadata(output),
2060
2091
  });
2061
2092
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2062
- if (data.job != null) {
2063
- contents.job = de_Job(data.job, context);
2064
- }
2093
+ const doc = take(data, {
2094
+ job: _json,
2095
+ });
2096
+ Object.assign(contents, doc);
2065
2097
  return contents;
2066
2098
  };
2067
2099
  const de_StartFailbackLaunchCommandError = async (output, context) => {
@@ -2091,10 +2123,9 @@ const de_StartFailbackLaunchCommandError = async (output, context) => {
2091
2123
  throw await de_ValidationExceptionRes(parsedOutput, context);
2092
2124
  default:
2093
2125
  const parsedBody = parsedOutput.body;
2094
- throwDefaultError({
2126
+ return throwDefaultError({
2095
2127
  output,
2096
2128
  parsedBody,
2097
- exceptionCtor: __BaseException,
2098
2129
  errorCode,
2099
2130
  });
2100
2131
  }
@@ -2107,9 +2138,10 @@ export const de_StartRecoveryCommand = async (output, context) => {
2107
2138
  $metadata: deserializeMetadata(output),
2108
2139
  });
2109
2140
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2110
- if (data.job != null) {
2111
- contents.job = de_Job(data.job, context);
2112
- }
2141
+ const doc = take(data, {
2142
+ job: _json,
2143
+ });
2144
+ Object.assign(contents, doc);
2113
2145
  return contents;
2114
2146
  };
2115
2147
  const de_StartRecoveryCommandError = async (output, context) => {
@@ -2136,10 +2168,9 @@ const de_StartRecoveryCommandError = async (output, context) => {
2136
2168
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
2137
2169
  default:
2138
2170
  const parsedBody = parsedOutput.body;
2139
- throwDefaultError({
2171
+ return throwDefaultError({
2140
2172
  output,
2141
2173
  parsedBody,
2142
- exceptionCtor: __BaseException,
2143
2174
  errorCode,
2144
2175
  });
2145
2176
  }
@@ -2152,9 +2183,10 @@ export const de_StartReplicationCommand = async (output, context) => {
2152
2183
  $metadata: deserializeMetadata(output),
2153
2184
  });
2154
2185
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2155
- if (data.sourceServer != null) {
2156
- contents.sourceServer = de_SourceServer(data.sourceServer, context);
2157
- }
2186
+ const doc = take(data, {
2187
+ sourceServer: _json,
2188
+ });
2189
+ Object.assign(contents, doc);
2158
2190
  return contents;
2159
2191
  };
2160
2192
  const de_StartReplicationCommandError = async (output, context) => {
@@ -2181,10 +2213,9 @@ const de_StartReplicationCommandError = async (output, context) => {
2181
2213
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
2182
2214
  default:
2183
2215
  const parsedBody = parsedOutput.body;
2184
- throwDefaultError({
2216
+ return throwDefaultError({
2185
2217
  output,
2186
2218
  parsedBody,
2187
- exceptionCtor: __BaseException,
2188
2219
  errorCode,
2189
2220
  });
2190
2221
  }
@@ -2220,10 +2251,9 @@ const de_StopFailbackCommandError = async (output, context) => {
2220
2251
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
2221
2252
  default:
2222
2253
  const parsedBody = parsedOutput.body;
2223
- throwDefaultError({
2254
+ return throwDefaultError({
2224
2255
  output,
2225
2256
  parsedBody,
2226
- exceptionCtor: __BaseException,
2227
2257
  errorCode,
2228
2258
  });
2229
2259
  }
@@ -2236,9 +2266,10 @@ export const de_StopReplicationCommand = async (output, context) => {
2236
2266
  $metadata: deserializeMetadata(output),
2237
2267
  });
2238
2268
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2239
- if (data.sourceServer != null) {
2240
- contents.sourceServer = de_SourceServer(data.sourceServer, context);
2241
- }
2269
+ const doc = take(data, {
2270
+ sourceServer: _json,
2271
+ });
2272
+ Object.assign(contents, doc);
2242
2273
  return contents;
2243
2274
  };
2244
2275
  const de_StopReplicationCommandError = async (output, context) => {
@@ -2265,10 +2296,9 @@ const de_StopReplicationCommandError = async (output, context) => {
2265
2296
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
2266
2297
  default:
2267
2298
  const parsedBody = parsedOutput.body;
2268
- throwDefaultError({
2299
+ return throwDefaultError({
2269
2300
  output,
2270
2301
  parsedBody,
2271
- exceptionCtor: __BaseException,
2272
2302
  errorCode,
2273
2303
  });
2274
2304
  }
@@ -2307,10 +2337,9 @@ const de_TagResourceCommandError = async (output, context) => {
2307
2337
  throw await de_ValidationExceptionRes(parsedOutput, context);
2308
2338
  default:
2309
2339
  const parsedBody = parsedOutput.body;
2310
- throwDefaultError({
2340
+ return throwDefaultError({
2311
2341
  output,
2312
2342
  parsedBody,
2313
- exceptionCtor: __BaseException,
2314
2343
  errorCode,
2315
2344
  });
2316
2345
  }
@@ -2323,9 +2352,10 @@ export const de_TerminateRecoveryInstancesCommand = async (output, context) => {
2323
2352
  $metadata: deserializeMetadata(output),
2324
2353
  });
2325
2354
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2326
- if (data.job != null) {
2327
- contents.job = de_Job(data.job, context);
2328
- }
2355
+ const doc = take(data, {
2356
+ job: _json,
2357
+ });
2358
+ Object.assign(contents, doc);
2329
2359
  return contents;
2330
2360
  };
2331
2361
  const de_TerminateRecoveryInstancesCommandError = async (output, context) => {
@@ -2352,10 +2382,9 @@ const de_TerminateRecoveryInstancesCommandError = async (output, context) => {
2352
2382
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
2353
2383
  default:
2354
2384
  const parsedBody = parsedOutput.body;
2355
- throwDefaultError({
2385
+ return throwDefaultError({
2356
2386
  output,
2357
2387
  parsedBody,
2358
- exceptionCtor: __BaseException,
2359
2388
  errorCode,
2360
2389
  });
2361
2390
  }
@@ -2394,10 +2423,9 @@ const de_UntagResourceCommandError = async (output, context) => {
2394
2423
  throw await de_ValidationExceptionRes(parsedOutput, context);
2395
2424
  default:
2396
2425
  const parsedBody = parsedOutput.body;
2397
- throwDefaultError({
2426
+ return throwDefaultError({
2398
2427
  output,
2399
2428
  parsedBody,
2400
- exceptionCtor: __BaseException,
2401
2429
  errorCode,
2402
2430
  });
2403
2431
  }
@@ -2436,10 +2464,9 @@ const de_UpdateFailbackReplicationConfigurationCommandError = async (output, con
2436
2464
  throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
2437
2465
  default:
2438
2466
  const parsedBody = parsedOutput.body;
2439
- throwDefaultError({
2467
+ return throwDefaultError({
2440
2468
  output,
2441
2469
  parsedBody,
2442
- exceptionCtor: __BaseException,
2443
2470
  errorCode,
2444
2471
  });
2445
2472
  }
@@ -2452,30 +2479,17 @@ export const de_UpdateLaunchConfigurationCommand = async (output, context) => {
2452
2479
  $metadata: deserializeMetadata(output),
2453
2480
  });
2454
2481
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2455
- if (data.copyPrivateIp != null) {
2456
- contents.copyPrivateIp = __expectBoolean(data.copyPrivateIp);
2457
- }
2458
- if (data.copyTags != null) {
2459
- contents.copyTags = __expectBoolean(data.copyTags);
2460
- }
2461
- if (data.ec2LaunchTemplateID != null) {
2462
- contents.ec2LaunchTemplateID = __expectString(data.ec2LaunchTemplateID);
2463
- }
2464
- if (data.launchDisposition != null) {
2465
- contents.launchDisposition = __expectString(data.launchDisposition);
2466
- }
2467
- if (data.licensing != null) {
2468
- contents.licensing = de_Licensing(data.licensing, context);
2469
- }
2470
- if (data.name != null) {
2471
- contents.name = __expectString(data.name);
2472
- }
2473
- if (data.sourceServerID != null) {
2474
- contents.sourceServerID = __expectString(data.sourceServerID);
2475
- }
2476
- if (data.targetInstanceTypeRightSizingMethod != null) {
2477
- contents.targetInstanceTypeRightSizingMethod = __expectString(data.targetInstanceTypeRightSizingMethod);
2478
- }
2482
+ const doc = take(data, {
2483
+ copyPrivateIp: __expectBoolean,
2484
+ copyTags: __expectBoolean,
2485
+ ec2LaunchTemplateID: __expectString,
2486
+ launchDisposition: __expectString,
2487
+ licensing: _json,
2488
+ name: __expectString,
2489
+ sourceServerID: __expectString,
2490
+ targetInstanceTypeRightSizingMethod: __expectString,
2491
+ });
2492
+ Object.assign(contents, doc);
2479
2493
  return contents;
2480
2494
  };
2481
2495
  const de_UpdateLaunchConfigurationCommandError = async (output, context) => {
@@ -2505,73 +2519,89 @@ const de_UpdateLaunchConfigurationCommandError = async (output, context) => {
2505
2519
  throw await de_ValidationExceptionRes(parsedOutput, context);
2506
2520
  default:
2507
2521
  const parsedBody = parsedOutput.body;
2508
- throwDefaultError({
2522
+ return throwDefaultError({
2509
2523
  output,
2510
2524
  parsedBody,
2511
- exceptionCtor: __BaseException,
2512
2525
  errorCode,
2513
2526
  });
2514
2527
  }
2515
2528
  };
2516
- export const de_UpdateReplicationConfigurationCommand = async (output, context) => {
2529
+ export const de_UpdateLaunchConfigurationTemplateCommand = async (output, context) => {
2517
2530
  if (output.statusCode !== 200 && output.statusCode >= 300) {
2518
- return de_UpdateReplicationConfigurationCommandError(output, context);
2531
+ return de_UpdateLaunchConfigurationTemplateCommandError(output, context);
2519
2532
  }
2520
2533
  const contents = map({
2521
2534
  $metadata: deserializeMetadata(output),
2522
2535
  });
2523
2536
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2524
- if (data.associateDefaultSecurityGroup != null) {
2525
- contents.associateDefaultSecurityGroup = __expectBoolean(data.associateDefaultSecurityGroup);
2526
- }
2527
- if (data.autoReplicateNewDisks != null) {
2528
- contents.autoReplicateNewDisks = __expectBoolean(data.autoReplicateNewDisks);
2529
- }
2530
- if (data.bandwidthThrottling != null) {
2531
- contents.bandwidthThrottling = __expectLong(data.bandwidthThrottling);
2532
- }
2533
- if (data.createPublicIP != null) {
2534
- contents.createPublicIP = __expectBoolean(data.createPublicIP);
2535
- }
2536
- if (data.dataPlaneRouting != null) {
2537
- contents.dataPlaneRouting = __expectString(data.dataPlaneRouting);
2538
- }
2539
- if (data.defaultLargeStagingDiskType != null) {
2540
- contents.defaultLargeStagingDiskType = __expectString(data.defaultLargeStagingDiskType);
2541
- }
2542
- if (data.ebsEncryption != null) {
2543
- contents.ebsEncryption = __expectString(data.ebsEncryption);
2544
- }
2545
- if (data.ebsEncryptionKeyArn != null) {
2546
- contents.ebsEncryptionKeyArn = __expectString(data.ebsEncryptionKeyArn);
2547
- }
2548
- if (data.name != null) {
2549
- contents.name = __expectString(data.name);
2550
- }
2551
- if (data.pitPolicy != null) {
2552
- contents.pitPolicy = de_PITPolicy(data.pitPolicy, context);
2553
- }
2554
- if (data.replicatedDisks != null) {
2555
- contents.replicatedDisks = de_ReplicationConfigurationReplicatedDisks(data.replicatedDisks, context);
2556
- }
2557
- if (data.replicationServerInstanceType != null) {
2558
- contents.replicationServerInstanceType = __expectString(data.replicationServerInstanceType);
2559
- }
2560
- if (data.replicationServersSecurityGroupsIDs != null) {
2561
- contents.replicationServersSecurityGroupsIDs = de_ReplicationServersSecurityGroupsIDs(data.replicationServersSecurityGroupsIDs, context);
2562
- }
2563
- if (data.sourceServerID != null) {
2564
- contents.sourceServerID = __expectString(data.sourceServerID);
2565
- }
2566
- if (data.stagingAreaSubnetId != null) {
2567
- contents.stagingAreaSubnetId = __expectString(data.stagingAreaSubnetId);
2568
- }
2569
- if (data.stagingAreaTags != null) {
2570
- contents.stagingAreaTags = de_TagsMap(data.stagingAreaTags, context);
2537
+ const doc = take(data, {
2538
+ launchConfigurationTemplate: _json,
2539
+ });
2540
+ Object.assign(contents, doc);
2541
+ return contents;
2542
+ };
2543
+ const de_UpdateLaunchConfigurationTemplateCommandError = async (output, context) => {
2544
+ const parsedOutput = {
2545
+ ...output,
2546
+ body: await parseErrorBody(output.body, context),
2547
+ };
2548
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
2549
+ switch (errorCode) {
2550
+ case "AccessDeniedException":
2551
+ case "com.amazonaws.drs#AccessDeniedException":
2552
+ throw await de_AccessDeniedExceptionRes(parsedOutput, context);
2553
+ case "InternalServerException":
2554
+ case "com.amazonaws.drs#InternalServerException":
2555
+ throw await de_InternalServerExceptionRes(parsedOutput, context);
2556
+ case "ResourceNotFoundException":
2557
+ case "com.amazonaws.drs#ResourceNotFoundException":
2558
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
2559
+ case "ThrottlingException":
2560
+ case "com.amazonaws.drs#ThrottlingException":
2561
+ throw await de_ThrottlingExceptionRes(parsedOutput, context);
2562
+ case "UninitializedAccountException":
2563
+ case "com.amazonaws.drs#UninitializedAccountException":
2564
+ throw await de_UninitializedAccountExceptionRes(parsedOutput, context);
2565
+ case "ValidationException":
2566
+ case "com.amazonaws.drs#ValidationException":
2567
+ throw await de_ValidationExceptionRes(parsedOutput, context);
2568
+ default:
2569
+ const parsedBody = parsedOutput.body;
2570
+ return throwDefaultError({
2571
+ output,
2572
+ parsedBody,
2573
+ errorCode,
2574
+ });
2571
2575
  }
2572
- if (data.useDedicatedReplicationServer != null) {
2573
- contents.useDedicatedReplicationServer = __expectBoolean(data.useDedicatedReplicationServer);
2576
+ };
2577
+ export const de_UpdateReplicationConfigurationCommand = async (output, context) => {
2578
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
2579
+ return de_UpdateReplicationConfigurationCommandError(output, context);
2574
2580
  }
2581
+ const contents = map({
2582
+ $metadata: deserializeMetadata(output),
2583
+ });
2584
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2585
+ const doc = take(data, {
2586
+ associateDefaultSecurityGroup: __expectBoolean,
2587
+ autoReplicateNewDisks: __expectBoolean,
2588
+ bandwidthThrottling: __expectLong,
2589
+ createPublicIP: __expectBoolean,
2590
+ dataPlaneRouting: __expectString,
2591
+ defaultLargeStagingDiskType: __expectString,
2592
+ ebsEncryption: __expectString,
2593
+ ebsEncryptionKeyArn: __expectString,
2594
+ name: __expectString,
2595
+ pitPolicy: _json,
2596
+ replicatedDisks: _json,
2597
+ replicationServerInstanceType: __expectString,
2598
+ replicationServersSecurityGroupsIDs: _json,
2599
+ sourceServerID: __expectString,
2600
+ stagingAreaSubnetId: __expectString,
2601
+ stagingAreaTags: _json,
2602
+ useDedicatedReplicationServer: __expectBoolean,
2603
+ });
2604
+ Object.assign(contents, doc);
2575
2605
  return contents;
2576
2606
  };
2577
2607
  const de_UpdateReplicationConfigurationCommandError = async (output, context) => {
@@ -2604,10 +2634,9 @@ const de_UpdateReplicationConfigurationCommandError = async (output, context) =>
2604
2634
  throw await de_ValidationExceptionRes(parsedOutput, context);
2605
2635
  default:
2606
2636
  const parsedBody = parsedOutput.body;
2607
- throwDefaultError({
2637
+ return throwDefaultError({
2608
2638
  output,
2609
2639
  parsedBody,
2610
- exceptionCtor: __BaseException,
2611
2640
  errorCode,
2612
2641
  });
2613
2642
  }
@@ -2620,57 +2649,26 @@ export const de_UpdateReplicationConfigurationTemplateCommand = async (output, c
2620
2649
  $metadata: deserializeMetadata(output),
2621
2650
  });
2622
2651
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2623
- if (data.arn != null) {
2624
- contents.arn = __expectString(data.arn);
2625
- }
2626
- if (data.associateDefaultSecurityGroup != null) {
2627
- contents.associateDefaultSecurityGroup = __expectBoolean(data.associateDefaultSecurityGroup);
2628
- }
2629
- if (data.autoReplicateNewDisks != null) {
2630
- contents.autoReplicateNewDisks = __expectBoolean(data.autoReplicateNewDisks);
2631
- }
2632
- if (data.bandwidthThrottling != null) {
2633
- contents.bandwidthThrottling = __expectLong(data.bandwidthThrottling);
2634
- }
2635
- if (data.createPublicIP != null) {
2636
- contents.createPublicIP = __expectBoolean(data.createPublicIP);
2637
- }
2638
- if (data.dataPlaneRouting != null) {
2639
- contents.dataPlaneRouting = __expectString(data.dataPlaneRouting);
2640
- }
2641
- if (data.defaultLargeStagingDiskType != null) {
2642
- contents.defaultLargeStagingDiskType = __expectString(data.defaultLargeStagingDiskType);
2643
- }
2644
- if (data.ebsEncryption != null) {
2645
- contents.ebsEncryption = __expectString(data.ebsEncryption);
2646
- }
2647
- if (data.ebsEncryptionKeyArn != null) {
2648
- contents.ebsEncryptionKeyArn = __expectString(data.ebsEncryptionKeyArn);
2649
- }
2650
- if (data.pitPolicy != null) {
2651
- contents.pitPolicy = de_PITPolicy(data.pitPolicy, context);
2652
- }
2653
- if (data.replicationConfigurationTemplateID != null) {
2654
- contents.replicationConfigurationTemplateID = __expectString(data.replicationConfigurationTemplateID);
2655
- }
2656
- if (data.replicationServerInstanceType != null) {
2657
- contents.replicationServerInstanceType = __expectString(data.replicationServerInstanceType);
2658
- }
2659
- if (data.replicationServersSecurityGroupsIDs != null) {
2660
- contents.replicationServersSecurityGroupsIDs = de_ReplicationServersSecurityGroupsIDs(data.replicationServersSecurityGroupsIDs, context);
2661
- }
2662
- if (data.stagingAreaSubnetId != null) {
2663
- contents.stagingAreaSubnetId = __expectString(data.stagingAreaSubnetId);
2664
- }
2665
- if (data.stagingAreaTags != null) {
2666
- contents.stagingAreaTags = de_TagsMap(data.stagingAreaTags, context);
2667
- }
2668
- if (data.tags != null) {
2669
- contents.tags = de_TagsMap(data.tags, context);
2670
- }
2671
- if (data.useDedicatedReplicationServer != null) {
2672
- contents.useDedicatedReplicationServer = __expectBoolean(data.useDedicatedReplicationServer);
2673
- }
2652
+ const doc = take(data, {
2653
+ arn: __expectString,
2654
+ associateDefaultSecurityGroup: __expectBoolean,
2655
+ autoReplicateNewDisks: __expectBoolean,
2656
+ bandwidthThrottling: __expectLong,
2657
+ createPublicIP: __expectBoolean,
2658
+ dataPlaneRouting: __expectString,
2659
+ defaultLargeStagingDiskType: __expectString,
2660
+ ebsEncryption: __expectString,
2661
+ ebsEncryptionKeyArn: __expectString,
2662
+ pitPolicy: _json,
2663
+ replicationConfigurationTemplateID: __expectString,
2664
+ replicationServerInstanceType: __expectString,
2665
+ replicationServersSecurityGroupsIDs: _json,
2666
+ stagingAreaSubnetId: __expectString,
2667
+ stagingAreaTags: _json,
2668
+ tags: _json,
2669
+ useDedicatedReplicationServer: __expectBoolean,
2670
+ });
2671
+ Object.assign(contents, doc);
2674
2672
  return contents;
2675
2673
  };
2676
2674
  const de_UpdateReplicationConfigurationTemplateCommandError = async (output, context) => {
@@ -2700,24 +2698,22 @@ const de_UpdateReplicationConfigurationTemplateCommandError = async (output, con
2700
2698
  throw await de_ValidationExceptionRes(parsedOutput, context);
2701
2699
  default:
2702
2700
  const parsedBody = parsedOutput.body;
2703
- throwDefaultError({
2701
+ return throwDefaultError({
2704
2702
  output,
2705
2703
  parsedBody,
2706
- exceptionCtor: __BaseException,
2707
2704
  errorCode,
2708
2705
  });
2709
2706
  }
2710
2707
  };
2711
- const map = __map;
2708
+ const throwDefaultError = withBaseException(__BaseException);
2712
2709
  const de_AccessDeniedExceptionRes = async (parsedOutput, context) => {
2713
2710
  const contents = map({});
2714
2711
  const data = parsedOutput.body;
2715
- if (data.code != null) {
2716
- contents.code = __expectString(data.code);
2717
- }
2718
- if (data.message != null) {
2719
- contents.message = __expectString(data.message);
2720
- }
2712
+ const doc = take(data, {
2713
+ code: __expectString,
2714
+ message: __expectString,
2715
+ });
2716
+ Object.assign(contents, doc);
2721
2717
  const exception = new AccessDeniedException({
2722
2718
  $metadata: deserializeMetadata(parsedOutput),
2723
2719
  ...contents,
@@ -2727,18 +2723,13 @@ const de_AccessDeniedExceptionRes = async (parsedOutput, context) => {
2727
2723
  const de_ConflictExceptionRes = async (parsedOutput, context) => {
2728
2724
  const contents = map({});
2729
2725
  const data = parsedOutput.body;
2730
- if (data.code != null) {
2731
- contents.code = __expectString(data.code);
2732
- }
2733
- if (data.message != null) {
2734
- contents.message = __expectString(data.message);
2735
- }
2736
- if (data.resourceId != null) {
2737
- contents.resourceId = __expectString(data.resourceId);
2738
- }
2739
- if (data.resourceType != null) {
2740
- contents.resourceType = __expectString(data.resourceType);
2741
- }
2726
+ const doc = take(data, {
2727
+ code: __expectString,
2728
+ message: __expectString,
2729
+ resourceId: __expectString,
2730
+ resourceType: __expectString,
2731
+ });
2732
+ Object.assign(contents, doc);
2742
2733
  const exception = new ConflictException({
2743
2734
  $metadata: deserializeMetadata(parsedOutput),
2744
2735
  ...contents,
@@ -2753,9 +2744,10 @@ const de_InternalServerExceptionRes = async (parsedOutput, context) => {
2753
2744
  ],
2754
2745
  });
2755
2746
  const data = parsedOutput.body;
2756
- if (data.message != null) {
2757
- contents.message = __expectString(data.message);
2758
- }
2747
+ const doc = take(data, {
2748
+ message: __expectString,
2749
+ });
2750
+ Object.assign(contents, doc);
2759
2751
  const exception = new InternalServerException({
2760
2752
  $metadata: deserializeMetadata(parsedOutput),
2761
2753
  ...contents,
@@ -2765,18 +2757,13 @@ const de_InternalServerExceptionRes = async (parsedOutput, context) => {
2765
2757
  const de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => {
2766
2758
  const contents = map({});
2767
2759
  const data = parsedOutput.body;
2768
- if (data.code != null) {
2769
- contents.code = __expectString(data.code);
2770
- }
2771
- if (data.message != null) {
2772
- contents.message = __expectString(data.message);
2773
- }
2774
- if (data.resourceId != null) {
2775
- contents.resourceId = __expectString(data.resourceId);
2776
- }
2777
- if (data.resourceType != null) {
2778
- contents.resourceType = __expectString(data.resourceType);
2779
- }
2760
+ const doc = take(data, {
2761
+ code: __expectString,
2762
+ message: __expectString,
2763
+ resourceId: __expectString,
2764
+ resourceType: __expectString,
2765
+ });
2766
+ Object.assign(contents, doc);
2780
2767
  const exception = new ResourceNotFoundException({
2781
2768
  $metadata: deserializeMetadata(parsedOutput),
2782
2769
  ...contents,
@@ -2786,24 +2773,15 @@ const de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => {
2786
2773
  const de_ServiceQuotaExceededExceptionRes = async (parsedOutput, context) => {
2787
2774
  const contents = map({});
2788
2775
  const data = parsedOutput.body;
2789
- if (data.code != null) {
2790
- contents.code = __expectString(data.code);
2791
- }
2792
- if (data.message != null) {
2793
- contents.message = __expectString(data.message);
2794
- }
2795
- if (data.quotaCode != null) {
2796
- contents.quotaCode = __expectString(data.quotaCode);
2797
- }
2798
- if (data.resourceId != null) {
2799
- contents.resourceId = __expectString(data.resourceId);
2800
- }
2801
- if (data.resourceType != null) {
2802
- contents.resourceType = __expectString(data.resourceType);
2803
- }
2804
- if (data.serviceCode != null) {
2805
- contents.serviceCode = __expectString(data.serviceCode);
2806
- }
2776
+ const doc = take(data, {
2777
+ code: __expectString,
2778
+ message: __expectString,
2779
+ quotaCode: __expectString,
2780
+ resourceId: __expectString,
2781
+ resourceType: __expectString,
2782
+ serviceCode: __expectString,
2783
+ });
2784
+ Object.assign(contents, doc);
2807
2785
  const exception = new ServiceQuotaExceededException({
2808
2786
  $metadata: deserializeMetadata(parsedOutput),
2809
2787
  ...contents,
@@ -2815,15 +2793,12 @@ const de_ThrottlingExceptionRes = async (parsedOutput, context) => {
2815
2793
  retryAfterSeconds: [, parsedOutput.headers["retry-after"]],
2816
2794
  });
2817
2795
  const data = parsedOutput.body;
2818
- if (data.message != null) {
2819
- contents.message = __expectString(data.message);
2820
- }
2821
- if (data.quotaCode != null) {
2822
- contents.quotaCode = __expectString(data.quotaCode);
2823
- }
2824
- if (data.serviceCode != null) {
2825
- contents.serviceCode = __expectString(data.serviceCode);
2826
- }
2796
+ const doc = take(data, {
2797
+ message: __expectString,
2798
+ quotaCode: __expectString,
2799
+ serviceCode: __expectString,
2800
+ });
2801
+ Object.assign(contents, doc);
2827
2802
  const exception = new ThrottlingException({
2828
2803
  $metadata: deserializeMetadata(parsedOutput),
2829
2804
  ...contents,
@@ -2833,12 +2808,11 @@ const de_ThrottlingExceptionRes = async (parsedOutput, context) => {
2833
2808
  const de_UninitializedAccountExceptionRes = async (parsedOutput, context) => {
2834
2809
  const contents = map({});
2835
2810
  const data = parsedOutput.body;
2836
- if (data.code != null) {
2837
- contents.code = __expectString(data.code);
2838
- }
2839
- if (data.message != null) {
2840
- contents.message = __expectString(data.message);
2841
- }
2811
+ const doc = take(data, {
2812
+ code: __expectString,
2813
+ message: __expectString,
2814
+ });
2815
+ Object.assign(contents, doc);
2842
2816
  const exception = new UninitializedAccountException({
2843
2817
  $metadata: deserializeMetadata(parsedOutput),
2844
2818
  ...contents,
@@ -2848,827 +2822,19 @@ const de_UninitializedAccountExceptionRes = async (parsedOutput, context) => {
2848
2822
  const de_ValidationExceptionRes = async (parsedOutput, context) => {
2849
2823
  const contents = map({});
2850
2824
  const data = parsedOutput.body;
2851
- if (data.code != null) {
2852
- contents.code = __expectString(data.code);
2853
- }
2854
- if (data.fieldList != null) {
2855
- contents.fieldList = de_ValidationExceptionFieldList(data.fieldList, context);
2856
- }
2857
- if (data.message != null) {
2858
- contents.message = __expectString(data.message);
2859
- }
2860
- if (data.reason != null) {
2861
- contents.reason = __expectString(data.reason);
2862
- }
2825
+ const doc = take(data, {
2826
+ code: __expectString,
2827
+ fieldList: _json,
2828
+ message: __expectString,
2829
+ reason: __expectString,
2830
+ });
2831
+ Object.assign(contents, doc);
2863
2832
  const exception = new ValidationException({
2864
2833
  $metadata: deserializeMetadata(parsedOutput),
2865
2834
  ...contents,
2866
2835
  });
2867
2836
  return __decorateServiceException(exception, parsedOutput.body);
2868
2837
  };
2869
- const se_AccountIDs = (input, context) => {
2870
- return input
2871
- .filter((e) => e != null)
2872
- .map((entry) => {
2873
- return entry;
2874
- });
2875
- };
2876
- const se_DescribeJobsRequestFilters = (input, context) => {
2877
- return {
2878
- ...(input.fromDate != null && { fromDate: input.fromDate }),
2879
- ...(input.jobIDs != null && { jobIDs: se_DescribeJobsRequestFiltersJobIDs(input.jobIDs, context) }),
2880
- ...(input.toDate != null && { toDate: input.toDate }),
2881
- };
2882
- };
2883
- const se_DescribeJobsRequestFiltersJobIDs = (input, context) => {
2884
- return input
2885
- .filter((e) => e != null)
2886
- .map((entry) => {
2887
- return entry;
2888
- });
2889
- };
2890
- const se_DescribeRecoveryInstancesRequestFilters = (input, context) => {
2891
- return {
2892
- ...(input.recoveryInstanceIDs != null && {
2893
- recoveryInstanceIDs: se_RecoveryInstanceIDs(input.recoveryInstanceIDs, context),
2894
- }),
2895
- ...(input.sourceServerIDs != null && { sourceServerIDs: se_SourceServerIDs(input.sourceServerIDs, context) }),
2896
- };
2897
- };
2898
- const se_DescribeRecoverySnapshotsRequestFilters = (input, context) => {
2899
- return {
2900
- ...(input.fromDateTime != null && { fromDateTime: input.fromDateTime }),
2901
- ...(input.toDateTime != null && { toDateTime: input.toDateTime }),
2902
- };
2903
- };
2904
- const se_DescribeSourceServersRequestFilters = (input, context) => {
2905
- return {
2906
- ...(input.hardwareId != null && { hardwareId: input.hardwareId }),
2907
- ...(input.sourceServerIDs != null && {
2908
- sourceServerIDs: se_DescribeSourceServersRequestFiltersIDs(input.sourceServerIDs, context),
2909
- }),
2910
- ...(input.stagingAccountIDs != null && { stagingAccountIDs: se_AccountIDs(input.stagingAccountIDs, context) }),
2911
- };
2912
- };
2913
- const se_DescribeSourceServersRequestFiltersIDs = (input, context) => {
2914
- return input
2915
- .filter((e) => e != null)
2916
- .map((entry) => {
2917
- return entry;
2918
- });
2919
- };
2920
- const se_Licensing = (input, context) => {
2921
- return {
2922
- ...(input.osByol != null && { osByol: input.osByol }),
2923
- };
2924
- };
2925
- const se_PITPolicy = (input, context) => {
2926
- return input
2927
- .filter((e) => e != null)
2928
- .map((entry) => {
2929
- return se_PITPolicyRule(entry, context);
2930
- });
2931
- };
2932
- const se_PITPolicyRule = (input, context) => {
2933
- return {
2934
- ...(input.enabled != null && { enabled: input.enabled }),
2935
- ...(input.interval != null && { interval: input.interval }),
2936
- ...(input.retentionDuration != null && { retentionDuration: input.retentionDuration }),
2937
- ...(input.ruleID != null && { ruleID: input.ruleID }),
2938
- ...(input.units != null && { units: input.units }),
2939
- };
2940
- };
2941
- const se_RecoveryInstanceIDs = (input, context) => {
2942
- return input
2943
- .filter((e) => e != null)
2944
- .map((entry) => {
2945
- return entry;
2946
- });
2947
- };
2948
- const se_RecoveryInstancesForTerminationRequest = (input, context) => {
2949
- return input
2950
- .filter((e) => e != null)
2951
- .map((entry) => {
2952
- return entry;
2953
- });
2954
- };
2955
- const se_ReplicationConfigurationReplicatedDisk = (input, context) => {
2956
- return {
2957
- ...(input.deviceName != null && { deviceName: input.deviceName }),
2958
- ...(input.iops != null && { iops: input.iops }),
2959
- ...(input.isBootDisk != null && { isBootDisk: input.isBootDisk }),
2960
- ...(input.optimizedStagingDiskType != null && { optimizedStagingDiskType: input.optimizedStagingDiskType }),
2961
- ...(input.stagingDiskType != null && { stagingDiskType: input.stagingDiskType }),
2962
- ...(input.throughput != null && { throughput: input.throughput }),
2963
- };
2964
- };
2965
- const se_ReplicationConfigurationReplicatedDisks = (input, context) => {
2966
- return input
2967
- .filter((e) => e != null)
2968
- .map((entry) => {
2969
- return se_ReplicationConfigurationReplicatedDisk(entry, context);
2970
- });
2971
- };
2972
- const se_ReplicationConfigurationTemplateIDs = (input, context) => {
2973
- return input
2974
- .filter((e) => e != null)
2975
- .map((entry) => {
2976
- return entry;
2977
- });
2978
- };
2979
- const se_ReplicationServersSecurityGroupsIDs = (input, context) => {
2980
- return input
2981
- .filter((e) => e != null)
2982
- .map((entry) => {
2983
- return entry;
2984
- });
2985
- };
2986
- const se_SourceServerIDs = (input, context) => {
2987
- return input
2988
- .filter((e) => e != null)
2989
- .map((entry) => {
2990
- return entry;
2991
- });
2992
- };
2993
- const se_StartFailbackRequestRecoveryInstanceIDs = (input, context) => {
2994
- return input
2995
- .filter((e) => e != null)
2996
- .map((entry) => {
2997
- return entry;
2998
- });
2999
- };
3000
- const se_StartRecoveryRequestSourceServer = (input, context) => {
3001
- return {
3002
- ...(input.recoverySnapshotID != null && { recoverySnapshotID: input.recoverySnapshotID }),
3003
- ...(input.sourceServerID != null && { sourceServerID: input.sourceServerID }),
3004
- };
3005
- };
3006
- const se_StartRecoveryRequestSourceServers = (input, context) => {
3007
- return input
3008
- .filter((e) => e != null)
3009
- .map((entry) => {
3010
- return se_StartRecoveryRequestSourceServer(entry, context);
3011
- });
3012
- };
3013
- const se_TagsMap = (input, context) => {
3014
- return Object.entries(input).reduce((acc, [key, value]) => {
3015
- if (value === null) {
3016
- return acc;
3017
- }
3018
- acc[key] = value;
3019
- return acc;
3020
- }, {});
3021
- };
3022
- const de_Account = (output, context) => {
3023
- return {
3024
- accountID: __expectString(output.accountID),
3025
- };
3026
- };
3027
- const de_Accounts = (output, context) => {
3028
- const retVal = (output || [])
3029
- .filter((e) => e != null)
3030
- .map((entry) => {
3031
- if (entry === null) {
3032
- return null;
3033
- }
3034
- return de_Account(entry, context);
3035
- });
3036
- return retVal;
3037
- };
3038
- const de_ConversionMap = (output, context) => {
3039
- return Object.entries(output).reduce((acc, [key, value]) => {
3040
- if (value === null) {
3041
- return acc;
3042
- }
3043
- acc[key] = __expectString(value);
3044
- return acc;
3045
- }, {});
3046
- };
3047
- const de_ConversionProperties = (output, context) => {
3048
- return {
3049
- dataTimestamp: __expectString(output.dataTimestamp),
3050
- forceUefi: __expectBoolean(output.forceUefi),
3051
- rootVolumeName: __expectString(output.rootVolumeName),
3052
- volumeToConversionMap: output.volumeToConversionMap != null
3053
- ? de_VolumeToConversionMap(output.volumeToConversionMap, context)
3054
- : undefined,
3055
- volumeToVolumeSize: output.volumeToVolumeSize != null ? de_VolumeToSizeMap(output.volumeToVolumeSize, context) : undefined,
3056
- };
3057
- };
3058
- const de_CPU = (output, context) => {
3059
- return {
3060
- cores: __expectLong(output.cores),
3061
- modelName: __expectString(output.modelName),
3062
- };
3063
- };
3064
- const de_Cpus = (output, context) => {
3065
- const retVal = (output || [])
3066
- .filter((e) => e != null)
3067
- .map((entry) => {
3068
- if (entry === null) {
3069
- return null;
3070
- }
3071
- return de_CPU(entry, context);
3072
- });
3073
- return retVal;
3074
- };
3075
- const de_DataReplicationError = (output, context) => {
3076
- return {
3077
- error: __expectString(output.error),
3078
- rawError: __expectString(output.rawError),
3079
- };
3080
- };
3081
- const de_DataReplicationInfo = (output, context) => {
3082
- return {
3083
- dataReplicationError: output.dataReplicationError != null ? de_DataReplicationError(output.dataReplicationError, context) : undefined,
3084
- dataReplicationInitiation: output.dataReplicationInitiation != null
3085
- ? de_DataReplicationInitiation(output.dataReplicationInitiation, context)
3086
- : undefined,
3087
- dataReplicationState: __expectString(output.dataReplicationState),
3088
- etaDateTime: __expectString(output.etaDateTime),
3089
- lagDuration: __expectString(output.lagDuration),
3090
- replicatedDisks: output.replicatedDisks != null
3091
- ? de_DataReplicationInfoReplicatedDisks(output.replicatedDisks, context)
3092
- : undefined,
3093
- stagingAvailabilityZone: __expectString(output.stagingAvailabilityZone),
3094
- };
3095
- };
3096
- const de_DataReplicationInfoReplicatedDisk = (output, context) => {
3097
- return {
3098
- backloggedStorageBytes: __expectLong(output.backloggedStorageBytes),
3099
- deviceName: __expectString(output.deviceName),
3100
- replicatedStorageBytes: __expectLong(output.replicatedStorageBytes),
3101
- rescannedStorageBytes: __expectLong(output.rescannedStorageBytes),
3102
- totalStorageBytes: __expectLong(output.totalStorageBytes),
3103
- };
3104
- };
3105
- const de_DataReplicationInfoReplicatedDisks = (output, context) => {
3106
- const retVal = (output || [])
3107
- .filter((e) => e != null)
3108
- .map((entry) => {
3109
- if (entry === null) {
3110
- return null;
3111
- }
3112
- return de_DataReplicationInfoReplicatedDisk(entry, context);
3113
- });
3114
- return retVal;
3115
- };
3116
- const de_DataReplicationInitiation = (output, context) => {
3117
- return {
3118
- nextAttemptDateTime: __expectString(output.nextAttemptDateTime),
3119
- startDateTime: __expectString(output.startDateTime),
3120
- steps: output.steps != null ? de_DataReplicationInitiationSteps(output.steps, context) : undefined,
3121
- };
3122
- };
3123
- const de_DataReplicationInitiationStep = (output, context) => {
3124
- return {
3125
- name: __expectString(output.name),
3126
- status: __expectString(output.status),
3127
- };
3128
- };
3129
- const de_DataReplicationInitiationSteps = (output, context) => {
3130
- const retVal = (output || [])
3131
- .filter((e) => e != null)
3132
- .map((entry) => {
3133
- if (entry === null) {
3134
- return null;
3135
- }
3136
- return de_DataReplicationInitiationStep(entry, context);
3137
- });
3138
- return retVal;
3139
- };
3140
- const de_DescribeRecoveryInstancesItems = (output, context) => {
3141
- const retVal = (output || [])
3142
- .filter((e) => e != null)
3143
- .map((entry) => {
3144
- if (entry === null) {
3145
- return null;
3146
- }
3147
- return de_RecoveryInstance(entry, context);
3148
- });
3149
- return retVal;
3150
- };
3151
- const de_Disk = (output, context) => {
3152
- return {
3153
- bytes: __expectLong(output.bytes),
3154
- deviceName: __expectString(output.deviceName),
3155
- };
3156
- };
3157
- const de_Disks = (output, context) => {
3158
- const retVal = (output || [])
3159
- .filter((e) => e != null)
3160
- .map((entry) => {
3161
- if (entry === null) {
3162
- return null;
3163
- }
3164
- return de_Disk(entry, context);
3165
- });
3166
- return retVal;
3167
- };
3168
- const de_EbsSnapshotsList = (output, context) => {
3169
- const retVal = (output || [])
3170
- .filter((e) => e != null)
3171
- .map((entry) => {
3172
- if (entry === null) {
3173
- return null;
3174
- }
3175
- return __expectString(entry);
3176
- });
3177
- return retVal;
3178
- };
3179
- const de_IdentificationHints = (output, context) => {
3180
- return {
3181
- awsInstanceID: __expectString(output.awsInstanceID),
3182
- fqdn: __expectString(output.fqdn),
3183
- hostname: __expectString(output.hostname),
3184
- vmWareUuid: __expectString(output.vmWareUuid),
3185
- };
3186
- };
3187
- const de_IPsList = (output, context) => {
3188
- const retVal = (output || [])
3189
- .filter((e) => e != null)
3190
- .map((entry) => {
3191
- if (entry === null) {
3192
- return null;
3193
- }
3194
- return __expectString(entry);
3195
- });
3196
- return retVal;
3197
- };
3198
- const de_Job = (output, context) => {
3199
- return {
3200
- arn: __expectString(output.arn),
3201
- creationDateTime: __expectString(output.creationDateTime),
3202
- endDateTime: __expectString(output.endDateTime),
3203
- initiatedBy: __expectString(output.initiatedBy),
3204
- jobID: __expectString(output.jobID),
3205
- participatingServers: output.participatingServers != null ? de_ParticipatingServers(output.participatingServers, context) : undefined,
3206
- status: __expectString(output.status),
3207
- tags: output.tags != null ? de_TagsMap(output.tags, context) : undefined,
3208
- type: __expectString(output.type),
3209
- };
3210
- };
3211
- const de_JobLog = (output, context) => {
3212
- return {
3213
- event: __expectString(output.event),
3214
- eventData: output.eventData != null ? de_JobLogEventData(output.eventData, context) : undefined,
3215
- logDateTime: __expectString(output.logDateTime),
3216
- };
3217
- };
3218
- const de_JobLogEventData = (output, context) => {
3219
- return {
3220
- conversionProperties: output.conversionProperties != null ? de_ConversionProperties(output.conversionProperties, context) : undefined,
3221
- conversionServerID: __expectString(output.conversionServerID),
3222
- rawError: __expectString(output.rawError),
3223
- sourceServerID: __expectString(output.sourceServerID),
3224
- targetInstanceID: __expectString(output.targetInstanceID),
3225
- };
3226
- };
3227
- const de_JobLogs = (output, context) => {
3228
- const retVal = (output || [])
3229
- .filter((e) => e != null)
3230
- .map((entry) => {
3231
- if (entry === null) {
3232
- return null;
3233
- }
3234
- return de_JobLog(entry, context);
3235
- });
3236
- return retVal;
3237
- };
3238
- const de_JobsList = (output, context) => {
3239
- const retVal = (output || [])
3240
- .filter((e) => e != null)
3241
- .map((entry) => {
3242
- if (entry === null) {
3243
- return null;
3244
- }
3245
- return de_Job(entry, context);
3246
- });
3247
- return retVal;
3248
- };
3249
- const de_Licensing = (output, context) => {
3250
- return {
3251
- osByol: __expectBoolean(output.osByol),
3252
- };
3253
- };
3254
- const de_LifeCycle = (output, context) => {
3255
- return {
3256
- addedToServiceDateTime: __expectString(output.addedToServiceDateTime),
3257
- elapsedReplicationDuration: __expectString(output.elapsedReplicationDuration),
3258
- firstByteDateTime: __expectString(output.firstByteDateTime),
3259
- lastLaunch: output.lastLaunch != null ? de_LifeCycleLastLaunch(output.lastLaunch, context) : undefined,
3260
- lastSeenByServiceDateTime: __expectString(output.lastSeenByServiceDateTime),
3261
- };
3262
- };
3263
- const de_LifeCycleLastLaunch = (output, context) => {
3264
- return {
3265
- initiated: output.initiated != null ? de_LifeCycleLastLaunchInitiated(output.initiated, context) : undefined,
3266
- status: __expectString(output.status),
3267
- };
3268
- };
3269
- const de_LifeCycleLastLaunchInitiated = (output, context) => {
3270
- return {
3271
- apiCallDateTime: __expectString(output.apiCallDateTime),
3272
- jobID: __expectString(output.jobID),
3273
- type: __expectString(output.type),
3274
- };
3275
- };
3276
- const de_NetworkInterface = (output, context) => {
3277
- return {
3278
- ips: output.ips != null ? de_IPsList(output.ips, context) : undefined,
3279
- isPrimary: __expectBoolean(output.isPrimary),
3280
- macAddress: __expectString(output.macAddress),
3281
- };
3282
- };
3283
- const de_NetworkInterfaces = (output, context) => {
3284
- const retVal = (output || [])
3285
- .filter((e) => e != null)
3286
- .map((entry) => {
3287
- if (entry === null) {
3288
- return null;
3289
- }
3290
- return de_NetworkInterface(entry, context);
3291
- });
3292
- return retVal;
3293
- };
3294
- const de_OS = (output, context) => {
3295
- return {
3296
- fullString: __expectString(output.fullString),
3297
- };
3298
- };
3299
- const de_ParticipatingServer = (output, context) => {
3300
- return {
3301
- launchStatus: __expectString(output.launchStatus),
3302
- recoveryInstanceID: __expectString(output.recoveryInstanceID),
3303
- sourceServerID: __expectString(output.sourceServerID),
3304
- };
3305
- };
3306
- const de_ParticipatingServers = (output, context) => {
3307
- const retVal = (output || [])
3308
- .filter((e) => e != null)
3309
- .map((entry) => {
3310
- if (entry === null) {
3311
- return null;
3312
- }
3313
- return de_ParticipatingServer(entry, context);
3314
- });
3315
- return retVal;
3316
- };
3317
- const de_PITPolicy = (output, context) => {
3318
- const retVal = (output || [])
3319
- .filter((e) => e != null)
3320
- .map((entry) => {
3321
- if (entry === null) {
3322
- return null;
3323
- }
3324
- return de_PITPolicyRule(entry, context);
3325
- });
3326
- return retVal;
3327
- };
3328
- const de_PITPolicyRule = (output, context) => {
3329
- return {
3330
- enabled: __expectBoolean(output.enabled),
3331
- interval: __expectInt32(output.interval),
3332
- retentionDuration: __expectInt32(output.retentionDuration),
3333
- ruleID: __expectLong(output.ruleID),
3334
- units: __expectString(output.units),
3335
- };
3336
- };
3337
- const de_RecoveryInstance = (output, context) => {
3338
- return {
3339
- arn: __expectString(output.arn),
3340
- dataReplicationInfo: output.dataReplicationInfo != null
3341
- ? de_RecoveryInstanceDataReplicationInfo(output.dataReplicationInfo, context)
3342
- : undefined,
3343
- ec2InstanceID: __expectString(output.ec2InstanceID),
3344
- ec2InstanceState: __expectString(output.ec2InstanceState),
3345
- failback: output.failback != null ? de_RecoveryInstanceFailback(output.failback, context) : undefined,
3346
- isDrill: __expectBoolean(output.isDrill),
3347
- jobID: __expectString(output.jobID),
3348
- originAvailabilityZone: __expectString(output.originAvailabilityZone),
3349
- originEnvironment: __expectString(output.originEnvironment),
3350
- pointInTimeSnapshotDateTime: __expectString(output.pointInTimeSnapshotDateTime),
3351
- recoveryInstanceID: __expectString(output.recoveryInstanceID),
3352
- recoveryInstanceProperties: output.recoveryInstanceProperties != null
3353
- ? de_RecoveryInstanceProperties(output.recoveryInstanceProperties, context)
3354
- : undefined,
3355
- sourceServerID: __expectString(output.sourceServerID),
3356
- tags: output.tags != null ? de_TagsMap(output.tags, context) : undefined,
3357
- };
3358
- };
3359
- const de_RecoveryInstanceDataReplicationError = (output, context) => {
3360
- return {
3361
- error: __expectString(output.error),
3362
- rawError: __expectString(output.rawError),
3363
- };
3364
- };
3365
- const de_RecoveryInstanceDataReplicationInfo = (output, context) => {
3366
- return {
3367
- dataReplicationError: output.dataReplicationError != null
3368
- ? de_RecoveryInstanceDataReplicationError(output.dataReplicationError, context)
3369
- : undefined,
3370
- dataReplicationInitiation: output.dataReplicationInitiation != null
3371
- ? de_RecoveryInstanceDataReplicationInitiation(output.dataReplicationInitiation, context)
3372
- : undefined,
3373
- dataReplicationState: __expectString(output.dataReplicationState),
3374
- etaDateTime: __expectString(output.etaDateTime),
3375
- lagDuration: __expectString(output.lagDuration),
3376
- replicatedDisks: output.replicatedDisks != null
3377
- ? de_RecoveryInstanceDataReplicationInfoReplicatedDisks(output.replicatedDisks, context)
3378
- : undefined,
3379
- stagingAvailabilityZone: __expectString(output.stagingAvailabilityZone),
3380
- };
3381
- };
3382
- const de_RecoveryInstanceDataReplicationInfoReplicatedDisk = (output, context) => {
3383
- return {
3384
- backloggedStorageBytes: __expectLong(output.backloggedStorageBytes),
3385
- deviceName: __expectString(output.deviceName),
3386
- replicatedStorageBytes: __expectLong(output.replicatedStorageBytes),
3387
- rescannedStorageBytes: __expectLong(output.rescannedStorageBytes),
3388
- totalStorageBytes: __expectLong(output.totalStorageBytes),
3389
- };
3390
- };
3391
- const de_RecoveryInstanceDataReplicationInfoReplicatedDisks = (output, context) => {
3392
- const retVal = (output || [])
3393
- .filter((e) => e != null)
3394
- .map((entry) => {
3395
- if (entry === null) {
3396
- return null;
3397
- }
3398
- return de_RecoveryInstanceDataReplicationInfoReplicatedDisk(entry, context);
3399
- });
3400
- return retVal;
3401
- };
3402
- const de_RecoveryInstanceDataReplicationInitiation = (output, context) => {
3403
- return {
3404
- startDateTime: __expectString(output.startDateTime),
3405
- steps: output.steps != null ? de_RecoveryInstanceDataReplicationInitiationSteps(output.steps, context) : undefined,
3406
- };
3407
- };
3408
- const de_RecoveryInstanceDataReplicationInitiationStep = (output, context) => {
3409
- return {
3410
- name: __expectString(output.name),
3411
- status: __expectString(output.status),
3412
- };
3413
- };
3414
- const de_RecoveryInstanceDataReplicationInitiationSteps = (output, context) => {
3415
- const retVal = (output || [])
3416
- .filter((e) => e != null)
3417
- .map((entry) => {
3418
- if (entry === null) {
3419
- return null;
3420
- }
3421
- return de_RecoveryInstanceDataReplicationInitiationStep(entry, context);
3422
- });
3423
- return retVal;
3424
- };
3425
- const de_RecoveryInstanceDisk = (output, context) => {
3426
- return {
3427
- bytes: __expectLong(output.bytes),
3428
- ebsVolumeID: __expectString(output.ebsVolumeID),
3429
- internalDeviceName: __expectString(output.internalDeviceName),
3430
- };
3431
- };
3432
- const de_RecoveryInstanceDisks = (output, context) => {
3433
- const retVal = (output || [])
3434
- .filter((e) => e != null)
3435
- .map((entry) => {
3436
- if (entry === null) {
3437
- return null;
3438
- }
3439
- return de_RecoveryInstanceDisk(entry, context);
3440
- });
3441
- return retVal;
3442
- };
3443
- const de_RecoveryInstanceFailback = (output, context) => {
3444
- return {
3445
- agentLastSeenByServiceDateTime: __expectString(output.agentLastSeenByServiceDateTime),
3446
- elapsedReplicationDuration: __expectString(output.elapsedReplicationDuration),
3447
- failbackClientID: __expectString(output.failbackClientID),
3448
- failbackClientLastSeenByServiceDateTime: __expectString(output.failbackClientLastSeenByServiceDateTime),
3449
- failbackInitiationTime: __expectString(output.failbackInitiationTime),
3450
- failbackJobID: __expectString(output.failbackJobID),
3451
- failbackLaunchType: __expectString(output.failbackLaunchType),
3452
- failbackToOriginalServer: __expectBoolean(output.failbackToOriginalServer),
3453
- firstByteDateTime: __expectString(output.firstByteDateTime),
3454
- state: __expectString(output.state),
3455
- };
3456
- };
3457
- const de_RecoveryInstanceProperties = (output, context) => {
3458
- return {
3459
- cpus: output.cpus != null ? de_Cpus(output.cpus, context) : undefined,
3460
- disks: output.disks != null ? de_RecoveryInstanceDisks(output.disks, context) : undefined,
3461
- identificationHints: output.identificationHints != null ? de_IdentificationHints(output.identificationHints, context) : undefined,
3462
- lastUpdatedDateTime: __expectString(output.lastUpdatedDateTime),
3463
- networkInterfaces: output.networkInterfaces != null ? de_NetworkInterfaces(output.networkInterfaces, context) : undefined,
3464
- os: output.os != null ? de_OS(output.os, context) : undefined,
3465
- ramBytes: __expectLong(output.ramBytes),
3466
- };
3467
- };
3468
- const de_RecoverySnapshot = (output, context) => {
3469
- return {
3470
- ebsSnapshots: output.ebsSnapshots != null ? de_EbsSnapshotsList(output.ebsSnapshots, context) : undefined,
3471
- expectedTimestamp: __expectString(output.expectedTimestamp),
3472
- snapshotID: __expectString(output.snapshotID),
3473
- sourceServerID: __expectString(output.sourceServerID),
3474
- timestamp: __expectString(output.timestamp),
3475
- };
3476
- };
3477
- const de_RecoverySnapshotsList = (output, context) => {
3478
- const retVal = (output || [])
3479
- .filter((e) => e != null)
3480
- .map((entry) => {
3481
- if (entry === null) {
3482
- return null;
3483
- }
3484
- return de_RecoverySnapshot(entry, context);
3485
- });
3486
- return retVal;
3487
- };
3488
- const de_ReplicationConfigurationReplicatedDisk = (output, context) => {
3489
- return {
3490
- deviceName: __expectString(output.deviceName),
3491
- iops: __expectLong(output.iops),
3492
- isBootDisk: __expectBoolean(output.isBootDisk),
3493
- optimizedStagingDiskType: __expectString(output.optimizedStagingDiskType),
3494
- stagingDiskType: __expectString(output.stagingDiskType),
3495
- throughput: __expectLong(output.throughput),
3496
- };
3497
- };
3498
- const de_ReplicationConfigurationReplicatedDisks = (output, context) => {
3499
- const retVal = (output || [])
3500
- .filter((e) => e != null)
3501
- .map((entry) => {
3502
- if (entry === null) {
3503
- return null;
3504
- }
3505
- return de_ReplicationConfigurationReplicatedDisk(entry, context);
3506
- });
3507
- return retVal;
3508
- };
3509
- const de_ReplicationConfigurationTemplate = (output, context) => {
3510
- return {
3511
- arn: __expectString(output.arn),
3512
- associateDefaultSecurityGroup: __expectBoolean(output.associateDefaultSecurityGroup),
3513
- autoReplicateNewDisks: __expectBoolean(output.autoReplicateNewDisks),
3514
- bandwidthThrottling: __expectLong(output.bandwidthThrottling),
3515
- createPublicIP: __expectBoolean(output.createPublicIP),
3516
- dataPlaneRouting: __expectString(output.dataPlaneRouting),
3517
- defaultLargeStagingDiskType: __expectString(output.defaultLargeStagingDiskType),
3518
- ebsEncryption: __expectString(output.ebsEncryption),
3519
- ebsEncryptionKeyArn: __expectString(output.ebsEncryptionKeyArn),
3520
- pitPolicy: output.pitPolicy != null ? de_PITPolicy(output.pitPolicy, context) : undefined,
3521
- replicationConfigurationTemplateID: __expectString(output.replicationConfigurationTemplateID),
3522
- replicationServerInstanceType: __expectString(output.replicationServerInstanceType),
3523
- replicationServersSecurityGroupsIDs: output.replicationServersSecurityGroupsIDs != null
3524
- ? de_ReplicationServersSecurityGroupsIDs(output.replicationServersSecurityGroupsIDs, context)
3525
- : undefined,
3526
- stagingAreaSubnetId: __expectString(output.stagingAreaSubnetId),
3527
- stagingAreaTags: output.stagingAreaTags != null ? de_TagsMap(output.stagingAreaTags, context) : undefined,
3528
- tags: output.tags != null ? de_TagsMap(output.tags, context) : undefined,
3529
- useDedicatedReplicationServer: __expectBoolean(output.useDedicatedReplicationServer),
3530
- };
3531
- };
3532
- const de_ReplicationConfigurationTemplates = (output, context) => {
3533
- const retVal = (output || [])
3534
- .filter((e) => e != null)
3535
- .map((entry) => {
3536
- if (entry === null) {
3537
- return null;
3538
- }
3539
- return de_ReplicationConfigurationTemplate(entry, context);
3540
- });
3541
- return retVal;
3542
- };
3543
- const de_ReplicationServersSecurityGroupsIDs = (output, context) => {
3544
- const retVal = (output || [])
3545
- .filter((e) => e != null)
3546
- .map((entry) => {
3547
- if (entry === null) {
3548
- return null;
3549
- }
3550
- return __expectString(entry);
3551
- });
3552
- return retVal;
3553
- };
3554
- const de_SourceCloudProperties = (output, context) => {
3555
- return {
3556
- originAccountID: __expectString(output.originAccountID),
3557
- originAvailabilityZone: __expectString(output.originAvailabilityZone),
3558
- originRegion: __expectString(output.originRegion),
3559
- };
3560
- };
3561
- const de_SourceProperties = (output, context) => {
3562
- return {
3563
- cpus: output.cpus != null ? de_Cpus(output.cpus, context) : undefined,
3564
- disks: output.disks != null ? de_Disks(output.disks, context) : undefined,
3565
- identificationHints: output.identificationHints != null ? de_IdentificationHints(output.identificationHints, context) : undefined,
3566
- lastUpdatedDateTime: __expectString(output.lastUpdatedDateTime),
3567
- networkInterfaces: output.networkInterfaces != null ? de_NetworkInterfaces(output.networkInterfaces, context) : undefined,
3568
- os: output.os != null ? de_OS(output.os, context) : undefined,
3569
- ramBytes: __expectLong(output.ramBytes),
3570
- recommendedInstanceType: __expectString(output.recommendedInstanceType),
3571
- };
3572
- };
3573
- const de_SourceServer = (output, context) => {
3574
- return {
3575
- arn: __expectString(output.arn),
3576
- dataReplicationInfo: output.dataReplicationInfo != null ? de_DataReplicationInfo(output.dataReplicationInfo, context) : undefined,
3577
- lastLaunchResult: __expectString(output.lastLaunchResult),
3578
- lifeCycle: output.lifeCycle != null ? de_LifeCycle(output.lifeCycle, context) : undefined,
3579
- recoveryInstanceId: __expectString(output.recoveryInstanceId),
3580
- replicationDirection: __expectString(output.replicationDirection),
3581
- reversedDirectionSourceServerArn: __expectString(output.reversedDirectionSourceServerArn),
3582
- sourceCloudProperties: output.sourceCloudProperties != null
3583
- ? de_SourceCloudProperties(output.sourceCloudProperties, context)
3584
- : undefined,
3585
- sourceProperties: output.sourceProperties != null ? de_SourceProperties(output.sourceProperties, context) : undefined,
3586
- sourceServerID: __expectString(output.sourceServerID),
3587
- stagingArea: output.stagingArea != null ? de_StagingArea(output.stagingArea, context) : undefined,
3588
- tags: output.tags != null ? de_TagsMap(output.tags, context) : undefined,
3589
- };
3590
- };
3591
- const de_SourceServersList = (output, context) => {
3592
- const retVal = (output || [])
3593
- .filter((e) => e != null)
3594
- .map((entry) => {
3595
- if (entry === null) {
3596
- return null;
3597
- }
3598
- return de_SourceServer(entry, context);
3599
- });
3600
- return retVal;
3601
- };
3602
- const de_StagingArea = (output, context) => {
3603
- return {
3604
- errorMessage: __expectString(output.errorMessage),
3605
- stagingAccountID: __expectString(output.stagingAccountID),
3606
- stagingSourceServerArn: __expectString(output.stagingSourceServerArn),
3607
- status: __expectString(output.status),
3608
- };
3609
- };
3610
- const de_StagingSourceServer = (output, context) => {
3611
- return {
3612
- arn: __expectString(output.arn),
3613
- hostname: __expectString(output.hostname),
3614
- tags: output.tags != null ? de_TagsMap(output.tags, context) : undefined,
3615
- };
3616
- };
3617
- const de_StagingSourceServersList = (output, context) => {
3618
- const retVal = (output || [])
3619
- .filter((e) => e != null)
3620
- .map((entry) => {
3621
- if (entry === null) {
3622
- return null;
3623
- }
3624
- return de_StagingSourceServer(entry, context);
3625
- });
3626
- return retVal;
3627
- };
3628
- const de_TagsMap = (output, context) => {
3629
- return Object.entries(output).reduce((acc, [key, value]) => {
3630
- if (value === null) {
3631
- return acc;
3632
- }
3633
- acc[key] = __expectString(value);
3634
- return acc;
3635
- }, {});
3636
- };
3637
- const de_ValidationExceptionField = (output, context) => {
3638
- return {
3639
- message: __expectString(output.message),
3640
- name: __expectString(output.name),
3641
- };
3642
- };
3643
- const de_ValidationExceptionFieldList = (output, context) => {
3644
- const retVal = (output || [])
3645
- .filter((e) => e != null)
3646
- .map((entry) => {
3647
- if (entry === null) {
3648
- return null;
3649
- }
3650
- return de_ValidationExceptionField(entry, context);
3651
- });
3652
- return retVal;
3653
- };
3654
- const de_VolumeToConversionMap = (output, context) => {
3655
- return Object.entries(output).reduce((acc, [key, value]) => {
3656
- if (value === null) {
3657
- return acc;
3658
- }
3659
- acc[key] = de_ConversionMap(value, context);
3660
- return acc;
3661
- }, {});
3662
- };
3663
- const de_VolumeToSizeMap = (output, context) => {
3664
- return Object.entries(output).reduce((acc, [key, value]) => {
3665
- if (value === null) {
3666
- return acc;
3667
- }
3668
- acc[key] = __expectLong(value);
3669
- return acc;
3670
- }, {});
3671
- };
3672
2838
  const deserializeMetadata = (output) => ({
3673
2839
  httpStatusCode: output.statusCode,
3674
2840
  requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],