@aws-sdk/client-efs 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.
@@ -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, expectNumber as __expectNumber, expectObject as __expectObject, expectString as __expectString, limitedParseDouble as __limitedParseDouble, map as __map, parseEpochTimestamp as __parseEpochTimestamp, resolvedPath as __resolvedPath, serializeFloat as __serializeFloat, throwDefaultError, } from "@aws-sdk/smithy-client";
2
+ import { _json, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, expectString as __expectString, limitedParseDouble as __limitedParseDouble, map, parseEpochTimestamp as __parseEpochTimestamp, resolvedPath as __resolvedPath, serializeFloat as __serializeFloat, take, withBaseException, } from "@aws-sdk/smithy-client";
3
3
  import { v4 as generateIdempotencyToken } from "uuid";
4
4
  import { EFSServiceException as __BaseException } from "../models/EFSServiceException";
5
5
  import { AccessPointAlreadyExists, AccessPointLimitExceeded, AccessPointNotFound, AvailabilityZonesMismatch, BadRequest, DependencyTimeout, FileSystemAlreadyExists, FileSystemInUse, FileSystemLimitExceeded, FileSystemNotFound, IncorrectFileSystemLifeCycleState, IncorrectMountTargetState, InsufficientThroughputCapacity, InternalServerError, InvalidPolicyException, IpAddressInUse, MountTargetConflict, MountTargetNotFound, NetworkInterfaceLimitExceeded, NoFreeAddressesInSubnet, PolicyNotFound, ReplicationNotFound, SecurityGroupLimitExceeded, SecurityGroupNotFound, SubnetNotFound, ThrottlingException, ThroughputLimitExceeded, TooManyRequests, UnsupportedAvailabilityZone, ValidationException, } from "../models/models_0";
@@ -10,13 +10,13 @@ export const se_CreateAccessPointCommand = async (input, context) => {
10
10
  };
11
11
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/access-points";
12
12
  let body;
13
- body = JSON.stringify({
14
- ClientToken: input.ClientToken ?? generateIdempotencyToken(),
15
- ...(input.FileSystemId != null && { FileSystemId: input.FileSystemId }),
16
- ...(input.PosixUser != null && { PosixUser: se_PosixUser(input.PosixUser, context) }),
17
- ...(input.RootDirectory != null && { RootDirectory: se_RootDirectory(input.RootDirectory, context) }),
18
- ...(input.Tags != null && { Tags: se_Tags(input.Tags, context) }),
19
- });
13
+ body = JSON.stringify(take(input, {
14
+ ClientToken: (_) => _ ?? generateIdempotencyToken(),
15
+ FileSystemId: [],
16
+ PosixUser: (_) => _json(_),
17
+ RootDirectory: (_) => _json(_),
18
+ Tags: (_) => _json(_),
19
+ }));
20
20
  return new __HttpRequest({
21
21
  protocol,
22
22
  hostname,
@@ -34,19 +34,17 @@ export const se_CreateFileSystemCommand = async (input, context) => {
34
34
  };
35
35
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/file-systems";
36
36
  let body;
37
- body = JSON.stringify({
38
- ...(input.AvailabilityZoneName != null && { AvailabilityZoneName: input.AvailabilityZoneName }),
39
- ...(input.Backup != null && { Backup: input.Backup }),
40
- CreationToken: input.CreationToken ?? generateIdempotencyToken(),
41
- ...(input.Encrypted != null && { Encrypted: input.Encrypted }),
42
- ...(input.KmsKeyId != null && { KmsKeyId: input.KmsKeyId }),
43
- ...(input.PerformanceMode != null && { PerformanceMode: input.PerformanceMode }),
44
- ...(input.ProvisionedThroughputInMibps != null && {
45
- ProvisionedThroughputInMibps: __serializeFloat(input.ProvisionedThroughputInMibps),
46
- }),
47
- ...(input.Tags != null && { Tags: se_Tags(input.Tags, context) }),
48
- ...(input.ThroughputMode != null && { ThroughputMode: input.ThroughputMode }),
49
- });
37
+ body = JSON.stringify(take(input, {
38
+ AvailabilityZoneName: [],
39
+ Backup: [],
40
+ CreationToken: (_) => _ ?? generateIdempotencyToken(),
41
+ Encrypted: [],
42
+ KmsKeyId: [],
43
+ PerformanceMode: [],
44
+ ProvisionedThroughputInMibps: (_) => __serializeFloat(_),
45
+ Tags: (_) => _json(_),
46
+ ThroughputMode: [],
47
+ }));
50
48
  return new __HttpRequest({
51
49
  protocol,
52
50
  hostname,
@@ -64,12 +62,12 @@ export const se_CreateMountTargetCommand = async (input, context) => {
64
62
  };
65
63
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/mount-targets";
66
64
  let body;
67
- body = JSON.stringify({
68
- ...(input.FileSystemId != null && { FileSystemId: input.FileSystemId }),
69
- ...(input.IpAddress != null && { IpAddress: input.IpAddress }),
70
- ...(input.SecurityGroups != null && { SecurityGroups: se_SecurityGroups(input.SecurityGroups, context) }),
71
- ...(input.SubnetId != null && { SubnetId: input.SubnetId }),
72
- });
65
+ body = JSON.stringify(take(input, {
66
+ FileSystemId: [],
67
+ IpAddress: [],
68
+ SecurityGroups: (_) => _json(_),
69
+ SubnetId: [],
70
+ }));
73
71
  return new __HttpRequest({
74
72
  protocol,
75
73
  hostname,
@@ -89,9 +87,9 @@ export const se_CreateReplicationConfigurationCommand = async (input, context) =
89
87
  "/2015-02-01/file-systems/{SourceFileSystemId}/replication-configuration";
90
88
  resolvedPath = __resolvedPath(resolvedPath, input, "SourceFileSystemId", () => input.SourceFileSystemId, "{SourceFileSystemId}", false);
91
89
  let body;
92
- body = JSON.stringify({
93
- ...(input.Destinations != null && { Destinations: se_DestinationsToCreate(input.Destinations, context) }),
94
- });
90
+ body = JSON.stringify(take(input, {
91
+ Destinations: (_) => _json(_),
92
+ }));
95
93
  return new __HttpRequest({
96
94
  protocol,
97
95
  hostname,
@@ -110,9 +108,9 @@ export const se_CreateTagsCommand = async (input, context) => {
110
108
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/create-tags/{FileSystemId}";
111
109
  resolvedPath = __resolvedPath(resolvedPath, input, "FileSystemId", () => input.FileSystemId, "{FileSystemId}", false);
112
110
  let body;
113
- body = JSON.stringify({
114
- ...(input.Tags != null && { Tags: se_Tags(input.Tags, context) }),
115
- });
111
+ body = JSON.stringify(take(input, {
112
+ Tags: (_) => _json(_),
113
+ }));
116
114
  return new __HttpRequest({
117
115
  protocol,
118
116
  hostname,
@@ -213,9 +211,9 @@ export const se_DeleteTagsCommand = async (input, context) => {
213
211
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/delete-tags/{FileSystemId}";
214
212
  resolvedPath = __resolvedPath(resolvedPath, input, "FileSystemId", () => input.FileSystemId, "{FileSystemId}", false);
215
213
  let body;
216
- body = JSON.stringify({
217
- ...(input.TagKeys != null && { TagKeys: se_TagKeys(input.TagKeys, context) }),
218
- });
214
+ body = JSON.stringify(take(input, {
215
+ TagKeys: (_) => _json(_),
216
+ }));
219
217
  return new __HttpRequest({
220
218
  protocol,
221
219
  hostname,
@@ -255,10 +253,10 @@ export const se_DescribeAccountPreferencesCommand = async (input, context) => {
255
253
  };
256
254
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/account-preferences";
257
255
  let body;
258
- body = JSON.stringify({
259
- ...(input.MaxResults != null && { MaxResults: input.MaxResults }),
260
- ...(input.NextToken != null && { NextToken: input.NextToken }),
261
- });
256
+ body = JSON.stringify(take(input, {
257
+ MaxResults: [],
258
+ NextToken: [],
259
+ }));
262
260
  return new __HttpRequest({
263
261
  protocol,
264
262
  hostname,
@@ -455,9 +453,9 @@ export const se_ModifyMountTargetSecurityGroupsCommand = async (input, context)
455
453
  "/2015-02-01/mount-targets/{MountTargetId}/security-groups";
456
454
  resolvedPath = __resolvedPath(resolvedPath, input, "MountTargetId", () => input.MountTargetId, "{MountTargetId}", false);
457
455
  let body;
458
- body = JSON.stringify({
459
- ...(input.SecurityGroups != null && { SecurityGroups: se_SecurityGroups(input.SecurityGroups, context) }),
460
- });
456
+ body = JSON.stringify(take(input, {
457
+ SecurityGroups: (_) => _json(_),
458
+ }));
461
459
  return new __HttpRequest({
462
460
  protocol,
463
461
  hostname,
@@ -475,9 +473,9 @@ export const se_PutAccountPreferencesCommand = async (input, context) => {
475
473
  };
476
474
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/account-preferences";
477
475
  let body;
478
- body = JSON.stringify({
479
- ...(input.ResourceIdType != null && { ResourceIdType: input.ResourceIdType }),
480
- });
476
+ body = JSON.stringify(take(input, {
477
+ ResourceIdType: [],
478
+ }));
481
479
  return new __HttpRequest({
482
480
  protocol,
483
481
  hostname,
@@ -497,9 +495,9 @@ export const se_PutBackupPolicyCommand = async (input, context) => {
497
495
  "/2015-02-01/file-systems/{FileSystemId}/backup-policy";
498
496
  resolvedPath = __resolvedPath(resolvedPath, input, "FileSystemId", () => input.FileSystemId, "{FileSystemId}", false);
499
497
  let body;
500
- body = JSON.stringify({
501
- ...(input.BackupPolicy != null && { BackupPolicy: se_BackupPolicy(input.BackupPolicy, context) }),
502
- });
498
+ body = JSON.stringify(take(input, {
499
+ BackupPolicy: (_) => _json(_),
500
+ }));
503
501
  return new __HttpRequest({
504
502
  protocol,
505
503
  hostname,
@@ -519,12 +517,10 @@ export const se_PutFileSystemPolicyCommand = async (input, context) => {
519
517
  "/2015-02-01/file-systems/{FileSystemId}/policy";
520
518
  resolvedPath = __resolvedPath(resolvedPath, input, "FileSystemId", () => input.FileSystemId, "{FileSystemId}", false);
521
519
  let body;
522
- body = JSON.stringify({
523
- ...(input.BypassPolicyLockoutSafetyCheck != null && {
524
- BypassPolicyLockoutSafetyCheck: input.BypassPolicyLockoutSafetyCheck,
525
- }),
526
- ...(input.Policy != null && { Policy: input.Policy }),
527
- });
520
+ body = JSON.stringify(take(input, {
521
+ BypassPolicyLockoutSafetyCheck: [],
522
+ Policy: [],
523
+ }));
528
524
  return new __HttpRequest({
529
525
  protocol,
530
526
  hostname,
@@ -544,11 +540,9 @@ export const se_PutLifecycleConfigurationCommand = async (input, context) => {
544
540
  "/2015-02-01/file-systems/{FileSystemId}/lifecycle-configuration";
545
541
  resolvedPath = __resolvedPath(resolvedPath, input, "FileSystemId", () => input.FileSystemId, "{FileSystemId}", false);
546
542
  let body;
547
- body = JSON.stringify({
548
- ...(input.LifecyclePolicies != null && {
549
- LifecyclePolicies: se_LifecyclePolicies(input.LifecyclePolicies, context),
550
- }),
551
- });
543
+ body = JSON.stringify(take(input, {
544
+ LifecyclePolicies: (_) => _json(_),
545
+ }));
552
546
  return new __HttpRequest({
553
547
  protocol,
554
548
  hostname,
@@ -567,9 +561,9 @@ export const se_TagResourceCommand = async (input, context) => {
567
561
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/resource-tags/{ResourceId}";
568
562
  resolvedPath = __resolvedPath(resolvedPath, input, "ResourceId", () => input.ResourceId, "{ResourceId}", false);
569
563
  let body;
570
- body = JSON.stringify({
571
- ...(input.Tags != null && { Tags: se_Tags(input.Tags, context) }),
572
- });
564
+ body = JSON.stringify(take(input, {
565
+ Tags: (_) => _json(_),
566
+ }));
573
567
  return new __HttpRequest({
574
568
  protocol,
575
569
  hostname,
@@ -611,12 +605,10 @@ export const se_UpdateFileSystemCommand = async (input, context) => {
611
605
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-02-01/file-systems/{FileSystemId}";
612
606
  resolvedPath = __resolvedPath(resolvedPath, input, "FileSystemId", () => input.FileSystemId, "{FileSystemId}", false);
613
607
  let body;
614
- body = JSON.stringify({
615
- ...(input.ProvisionedThroughputInMibps != null && {
616
- ProvisionedThroughputInMibps: __serializeFloat(input.ProvisionedThroughputInMibps),
617
- }),
618
- ...(input.ThroughputMode != null && { ThroughputMode: input.ThroughputMode }),
619
- });
608
+ body = JSON.stringify(take(input, {
609
+ ProvisionedThroughputInMibps: (_) => __serializeFloat(_),
610
+ ThroughputMode: [],
611
+ }));
620
612
  return new __HttpRequest({
621
613
  protocol,
622
614
  hostname,
@@ -635,36 +627,19 @@ export const de_CreateAccessPointCommand = async (output, context) => {
635
627
  $metadata: deserializeMetadata(output),
636
628
  });
637
629
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
638
- if (data.AccessPointArn != null) {
639
- contents.AccessPointArn = __expectString(data.AccessPointArn);
640
- }
641
- if (data.AccessPointId != null) {
642
- contents.AccessPointId = __expectString(data.AccessPointId);
643
- }
644
- if (data.ClientToken != null) {
645
- contents.ClientToken = __expectString(data.ClientToken);
646
- }
647
- if (data.FileSystemId != null) {
648
- contents.FileSystemId = __expectString(data.FileSystemId);
649
- }
650
- if (data.LifeCycleState != null) {
651
- contents.LifeCycleState = __expectString(data.LifeCycleState);
652
- }
653
- if (data.Name != null) {
654
- contents.Name = __expectString(data.Name);
655
- }
656
- if (data.OwnerId != null) {
657
- contents.OwnerId = __expectString(data.OwnerId);
658
- }
659
- if (data.PosixUser != null) {
660
- contents.PosixUser = de_PosixUser(data.PosixUser, context);
661
- }
662
- if (data.RootDirectory != null) {
663
- contents.RootDirectory = de_RootDirectory(data.RootDirectory, context);
664
- }
665
- if (data.Tags != null) {
666
- contents.Tags = de_Tags(data.Tags, context);
667
- }
630
+ const doc = take(data, {
631
+ AccessPointArn: __expectString,
632
+ AccessPointId: __expectString,
633
+ ClientToken: __expectString,
634
+ FileSystemId: __expectString,
635
+ LifeCycleState: __expectString,
636
+ Name: __expectString,
637
+ OwnerId: __expectString,
638
+ PosixUser: _json,
639
+ RootDirectory: _json,
640
+ Tags: _json,
641
+ });
642
+ Object.assign(contents, doc);
668
643
  return contents;
669
644
  };
670
645
  const de_CreateAccessPointCommandError = async (output, context) => {
@@ -697,10 +672,9 @@ const de_CreateAccessPointCommandError = async (output, context) => {
697
672
  throw await de_ThrottlingExceptionRes(parsedOutput, context);
698
673
  default:
699
674
  const parsedBody = parsedOutput.body;
700
- throwDefaultError({
675
+ return throwDefaultError({
701
676
  output,
702
677
  parsedBody,
703
- exceptionCtor: __BaseException,
704
678
  errorCode,
705
679
  });
706
680
  }
@@ -713,57 +687,26 @@ export const de_CreateFileSystemCommand = async (output, context) => {
713
687
  $metadata: deserializeMetadata(output),
714
688
  });
715
689
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
716
- if (data.AvailabilityZoneId != null) {
717
- contents.AvailabilityZoneId = __expectString(data.AvailabilityZoneId);
718
- }
719
- if (data.AvailabilityZoneName != null) {
720
- contents.AvailabilityZoneName = __expectString(data.AvailabilityZoneName);
721
- }
722
- if (data.CreationTime != null) {
723
- contents.CreationTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationTime)));
724
- }
725
- if (data.CreationToken != null) {
726
- contents.CreationToken = __expectString(data.CreationToken);
727
- }
728
- if (data.Encrypted != null) {
729
- contents.Encrypted = __expectBoolean(data.Encrypted);
730
- }
731
- if (data.FileSystemArn != null) {
732
- contents.FileSystemArn = __expectString(data.FileSystemArn);
733
- }
734
- if (data.FileSystemId != null) {
735
- contents.FileSystemId = __expectString(data.FileSystemId);
736
- }
737
- if (data.KmsKeyId != null) {
738
- contents.KmsKeyId = __expectString(data.KmsKeyId);
739
- }
740
- if (data.LifeCycleState != null) {
741
- contents.LifeCycleState = __expectString(data.LifeCycleState);
742
- }
743
- if (data.Name != null) {
744
- contents.Name = __expectString(data.Name);
745
- }
746
- if (data.NumberOfMountTargets != null) {
747
- contents.NumberOfMountTargets = __expectInt32(data.NumberOfMountTargets);
748
- }
749
- if (data.OwnerId != null) {
750
- contents.OwnerId = __expectString(data.OwnerId);
751
- }
752
- if (data.PerformanceMode != null) {
753
- contents.PerformanceMode = __expectString(data.PerformanceMode);
754
- }
755
- if (data.ProvisionedThroughputInMibps != null) {
756
- contents.ProvisionedThroughputInMibps = __limitedParseDouble(data.ProvisionedThroughputInMibps);
757
- }
758
- if (data.SizeInBytes != null) {
759
- contents.SizeInBytes = de_FileSystemSize(data.SizeInBytes, context);
760
- }
761
- if (data.Tags != null) {
762
- contents.Tags = de_Tags(data.Tags, context);
763
- }
764
- if (data.ThroughputMode != null) {
765
- contents.ThroughputMode = __expectString(data.ThroughputMode);
766
- }
690
+ const doc = take(data, {
691
+ AvailabilityZoneId: __expectString,
692
+ AvailabilityZoneName: __expectString,
693
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
694
+ CreationToken: __expectString,
695
+ Encrypted: __expectBoolean,
696
+ FileSystemArn: __expectString,
697
+ FileSystemId: __expectString,
698
+ KmsKeyId: __expectString,
699
+ LifeCycleState: __expectString,
700
+ Name: __expectString,
701
+ NumberOfMountTargets: __expectInt32,
702
+ OwnerId: __expectString,
703
+ PerformanceMode: __expectString,
704
+ ProvisionedThroughputInMibps: __limitedParseDouble,
705
+ SizeInBytes: (_) => de_FileSystemSize(_, context),
706
+ Tags: _json,
707
+ ThroughputMode: __expectString,
708
+ });
709
+ Object.assign(contents, doc);
767
710
  return contents;
768
711
  };
769
712
  const de_CreateFileSystemCommandError = async (output, context) => {
@@ -796,10 +739,9 @@ const de_CreateFileSystemCommandError = async (output, context) => {
796
739
  throw await de_UnsupportedAvailabilityZoneRes(parsedOutput, context);
797
740
  default:
798
741
  const parsedBody = parsedOutput.body;
799
- throwDefaultError({
742
+ return throwDefaultError({
800
743
  output,
801
744
  parsedBody,
802
- exceptionCtor: __BaseException,
803
745
  errorCode,
804
746
  });
805
747
  }
@@ -812,36 +754,19 @@ export const de_CreateMountTargetCommand = async (output, context) => {
812
754
  $metadata: deserializeMetadata(output),
813
755
  });
814
756
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
815
- if (data.AvailabilityZoneId != null) {
816
- contents.AvailabilityZoneId = __expectString(data.AvailabilityZoneId);
817
- }
818
- if (data.AvailabilityZoneName != null) {
819
- contents.AvailabilityZoneName = __expectString(data.AvailabilityZoneName);
820
- }
821
- if (data.FileSystemId != null) {
822
- contents.FileSystemId = __expectString(data.FileSystemId);
823
- }
824
- if (data.IpAddress != null) {
825
- contents.IpAddress = __expectString(data.IpAddress);
826
- }
827
- if (data.LifeCycleState != null) {
828
- contents.LifeCycleState = __expectString(data.LifeCycleState);
829
- }
830
- if (data.MountTargetId != null) {
831
- contents.MountTargetId = __expectString(data.MountTargetId);
832
- }
833
- if (data.NetworkInterfaceId != null) {
834
- contents.NetworkInterfaceId = __expectString(data.NetworkInterfaceId);
835
- }
836
- if (data.OwnerId != null) {
837
- contents.OwnerId = __expectString(data.OwnerId);
838
- }
839
- if (data.SubnetId != null) {
840
- contents.SubnetId = __expectString(data.SubnetId);
841
- }
842
- if (data.VpcId != null) {
843
- contents.VpcId = __expectString(data.VpcId);
844
- }
757
+ const doc = take(data, {
758
+ AvailabilityZoneId: __expectString,
759
+ AvailabilityZoneName: __expectString,
760
+ FileSystemId: __expectString,
761
+ IpAddress: __expectString,
762
+ LifeCycleState: __expectString,
763
+ MountTargetId: __expectString,
764
+ NetworkInterfaceId: __expectString,
765
+ OwnerId: __expectString,
766
+ SubnetId: __expectString,
767
+ VpcId: __expectString,
768
+ });
769
+ Object.assign(contents, doc);
845
770
  return contents;
846
771
  };
847
772
  const de_CreateMountTargetCommandError = async (output, context) => {
@@ -892,10 +817,9 @@ const de_CreateMountTargetCommandError = async (output, context) => {
892
817
  throw await de_UnsupportedAvailabilityZoneRes(parsedOutput, context);
893
818
  default:
894
819
  const parsedBody = parsedOutput.body;
895
- throwDefaultError({
820
+ return throwDefaultError({
896
821
  output,
897
822
  parsedBody,
898
- exceptionCtor: __BaseException,
899
823
  errorCode,
900
824
  });
901
825
  }
@@ -908,24 +832,15 @@ export const de_CreateReplicationConfigurationCommand = async (output, context)
908
832
  $metadata: deserializeMetadata(output),
909
833
  });
910
834
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
911
- if (data.CreationTime != null) {
912
- contents.CreationTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationTime)));
913
- }
914
- if (data.Destinations != null) {
915
- contents.Destinations = de_Destinations(data.Destinations, context);
916
- }
917
- if (data.OriginalSourceFileSystemArn != null) {
918
- contents.OriginalSourceFileSystemArn = __expectString(data.OriginalSourceFileSystemArn);
919
- }
920
- if (data.SourceFileSystemArn != null) {
921
- contents.SourceFileSystemArn = __expectString(data.SourceFileSystemArn);
922
- }
923
- if (data.SourceFileSystemId != null) {
924
- contents.SourceFileSystemId = __expectString(data.SourceFileSystemId);
925
- }
926
- if (data.SourceFileSystemRegion != null) {
927
- contents.SourceFileSystemRegion = __expectString(data.SourceFileSystemRegion);
928
- }
835
+ const doc = take(data, {
836
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
837
+ Destinations: (_) => de_Destinations(_, context),
838
+ OriginalSourceFileSystemArn: __expectString,
839
+ SourceFileSystemArn: __expectString,
840
+ SourceFileSystemId: __expectString,
841
+ SourceFileSystemRegion: __expectString,
842
+ });
843
+ Object.assign(contents, doc);
929
844
  return contents;
930
845
  };
931
846
  const de_CreateReplicationConfigurationCommandError = async (output, context) => {
@@ -967,10 +882,9 @@ const de_CreateReplicationConfigurationCommandError = async (output, context) =>
967
882
  throw await de_ValidationExceptionRes(parsedOutput, context);
968
883
  default:
969
884
  const parsedBody = parsedOutput.body;
970
- throwDefaultError({
885
+ return throwDefaultError({
971
886
  output,
972
887
  parsedBody,
973
- exceptionCtor: __BaseException,
974
888
  errorCode,
975
889
  });
976
890
  }
@@ -1003,10 +917,9 @@ const de_CreateTagsCommandError = async (output, context) => {
1003
917
  throw await de_InternalServerErrorRes(parsedOutput, context);
1004
918
  default:
1005
919
  const parsedBody = parsedOutput.body;
1006
- throwDefaultError({
920
+ return throwDefaultError({
1007
921
  output,
1008
922
  parsedBody,
1009
- exceptionCtor: __BaseException,
1010
923
  errorCode,
1011
924
  });
1012
925
  }
@@ -1039,10 +952,9 @@ const de_DeleteAccessPointCommandError = async (output, context) => {
1039
952
  throw await de_InternalServerErrorRes(parsedOutput, context);
1040
953
  default:
1041
954
  const parsedBody = parsedOutput.body;
1042
- throwDefaultError({
955
+ return throwDefaultError({
1043
956
  output,
1044
957
  parsedBody,
1045
- exceptionCtor: __BaseException,
1046
958
  errorCode,
1047
959
  });
1048
960
  }
@@ -1078,10 +990,9 @@ const de_DeleteFileSystemCommandError = async (output, context) => {
1078
990
  throw await de_InternalServerErrorRes(parsedOutput, context);
1079
991
  default:
1080
992
  const parsedBody = parsedOutput.body;
1081
- throwDefaultError({
993
+ return throwDefaultError({
1082
994
  output,
1083
995
  parsedBody,
1084
- exceptionCtor: __BaseException,
1085
996
  errorCode,
1086
997
  });
1087
998
  }
@@ -1117,10 +1028,9 @@ const de_DeleteFileSystemPolicyCommandError = async (output, context) => {
1117
1028
  throw await de_InternalServerErrorRes(parsedOutput, context);
1118
1029
  default:
1119
1030
  const parsedBody = parsedOutput.body;
1120
- throwDefaultError({
1031
+ return throwDefaultError({
1121
1032
  output,
1122
1033
  parsedBody,
1123
- exceptionCtor: __BaseException,
1124
1034
  errorCode,
1125
1035
  });
1126
1036
  }
@@ -1156,10 +1066,9 @@ const de_DeleteMountTargetCommandError = async (output, context) => {
1156
1066
  throw await de_MountTargetNotFoundRes(parsedOutput, context);
1157
1067
  default:
1158
1068
  const parsedBody = parsedOutput.body;
1159
- throwDefaultError({
1069
+ return throwDefaultError({
1160
1070
  output,
1161
1071
  parsedBody,
1162
- exceptionCtor: __BaseException,
1163
1072
  errorCode,
1164
1073
  });
1165
1074
  }
@@ -1195,10 +1104,9 @@ const de_DeleteReplicationConfigurationCommandError = async (output, context) =>
1195
1104
  throw await de_ReplicationNotFoundRes(parsedOutput, context);
1196
1105
  default:
1197
1106
  const parsedBody = parsedOutput.body;
1198
- throwDefaultError({
1107
+ return throwDefaultError({
1199
1108
  output,
1200
1109
  parsedBody,
1201
- exceptionCtor: __BaseException,
1202
1110
  errorCode,
1203
1111
  });
1204
1112
  }
@@ -1231,10 +1139,9 @@ const de_DeleteTagsCommandError = async (output, context) => {
1231
1139
  throw await de_InternalServerErrorRes(parsedOutput, context);
1232
1140
  default:
1233
1141
  const parsedBody = parsedOutput.body;
1234
- throwDefaultError({
1142
+ return throwDefaultError({
1235
1143
  output,
1236
1144
  parsedBody,
1237
- exceptionCtor: __BaseException,
1238
1145
  errorCode,
1239
1146
  });
1240
1147
  }
@@ -1247,12 +1154,11 @@ export const de_DescribeAccessPointsCommand = async (output, context) => {
1247
1154
  $metadata: deserializeMetadata(output),
1248
1155
  });
1249
1156
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1250
- if (data.AccessPoints != null) {
1251
- contents.AccessPoints = de_AccessPointDescriptions(data.AccessPoints, context);
1252
- }
1253
- if (data.NextToken != null) {
1254
- contents.NextToken = __expectString(data.NextToken);
1255
- }
1157
+ const doc = take(data, {
1158
+ AccessPoints: _json,
1159
+ NextToken: __expectString,
1160
+ });
1161
+ Object.assign(contents, doc);
1256
1162
  return contents;
1257
1163
  };
1258
1164
  const de_DescribeAccessPointsCommandError = async (output, context) => {
@@ -1276,10 +1182,9 @@ const de_DescribeAccessPointsCommandError = async (output, context) => {
1276
1182
  throw await de_InternalServerErrorRes(parsedOutput, context);
1277
1183
  default:
1278
1184
  const parsedBody = parsedOutput.body;
1279
- throwDefaultError({
1185
+ return throwDefaultError({
1280
1186
  output,
1281
1187
  parsedBody,
1282
- exceptionCtor: __BaseException,
1283
1188
  errorCode,
1284
1189
  });
1285
1190
  }
@@ -1292,12 +1197,11 @@ export const de_DescribeAccountPreferencesCommand = async (output, context) => {
1292
1197
  $metadata: deserializeMetadata(output),
1293
1198
  });
1294
1199
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1295
- if (data.NextToken != null) {
1296
- contents.NextToken = __expectString(data.NextToken);
1297
- }
1298
- if (data.ResourceIdPreference != null) {
1299
- contents.ResourceIdPreference = de_ResourceIdPreference(data.ResourceIdPreference, context);
1300
- }
1200
+ const doc = take(data, {
1201
+ NextToken: __expectString,
1202
+ ResourceIdPreference: _json,
1203
+ });
1204
+ Object.assign(contents, doc);
1301
1205
  return contents;
1302
1206
  };
1303
1207
  const de_DescribeAccountPreferencesCommandError = async (output, context) => {
@@ -1312,10 +1216,9 @@ const de_DescribeAccountPreferencesCommandError = async (output, context) => {
1312
1216
  throw await de_InternalServerErrorRes(parsedOutput, context);
1313
1217
  default:
1314
1218
  const parsedBody = parsedOutput.body;
1315
- throwDefaultError({
1219
+ return throwDefaultError({
1316
1220
  output,
1317
1221
  parsedBody,
1318
- exceptionCtor: __BaseException,
1319
1222
  errorCode,
1320
1223
  });
1321
1224
  }
@@ -1328,9 +1231,10 @@ export const de_DescribeBackupPolicyCommand = async (output, context) => {
1328
1231
  $metadata: deserializeMetadata(output),
1329
1232
  });
1330
1233
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1331
- if (data.BackupPolicy != null) {
1332
- contents.BackupPolicy = de_BackupPolicy(data.BackupPolicy, context);
1333
- }
1234
+ const doc = take(data, {
1235
+ BackupPolicy: _json,
1236
+ });
1237
+ Object.assign(contents, doc);
1334
1238
  return contents;
1335
1239
  };
1336
1240
  const de_DescribeBackupPolicyCommandError = async (output, context) => {
@@ -1357,10 +1261,9 @@ const de_DescribeBackupPolicyCommandError = async (output, context) => {
1357
1261
  throw await de_ValidationExceptionRes(parsedOutput, context);
1358
1262
  default:
1359
1263
  const parsedBody = parsedOutput.body;
1360
- throwDefaultError({
1264
+ return throwDefaultError({
1361
1265
  output,
1362
1266
  parsedBody,
1363
- exceptionCtor: __BaseException,
1364
1267
  errorCode,
1365
1268
  });
1366
1269
  }
@@ -1373,12 +1276,11 @@ export const de_DescribeFileSystemPolicyCommand = async (output, context) => {
1373
1276
  $metadata: deserializeMetadata(output),
1374
1277
  });
1375
1278
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1376
- if (data.FileSystemId != null) {
1377
- contents.FileSystemId = __expectString(data.FileSystemId);
1378
- }
1379
- if (data.Policy != null) {
1380
- contents.Policy = __expectString(data.Policy);
1381
- }
1279
+ const doc = take(data, {
1280
+ FileSystemId: __expectString,
1281
+ Policy: __expectString,
1282
+ });
1283
+ Object.assign(contents, doc);
1382
1284
  return contents;
1383
1285
  };
1384
1286
  const de_DescribeFileSystemPolicyCommandError = async (output, context) => {
@@ -1402,10 +1304,9 @@ const de_DescribeFileSystemPolicyCommandError = async (output, context) => {
1402
1304
  throw await de_PolicyNotFoundRes(parsedOutput, context);
1403
1305
  default:
1404
1306
  const parsedBody = parsedOutput.body;
1405
- throwDefaultError({
1307
+ return throwDefaultError({
1406
1308
  output,
1407
1309
  parsedBody,
1408
- exceptionCtor: __BaseException,
1409
1310
  errorCode,
1410
1311
  });
1411
1312
  }
@@ -1418,15 +1319,12 @@ export const de_DescribeFileSystemsCommand = async (output, context) => {
1418
1319
  $metadata: deserializeMetadata(output),
1419
1320
  });
1420
1321
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1421
- if (data.FileSystems != null) {
1422
- contents.FileSystems = de_FileSystemDescriptions(data.FileSystems, context);
1423
- }
1424
- if (data.Marker != null) {
1425
- contents.Marker = __expectString(data.Marker);
1426
- }
1427
- if (data.NextMarker != null) {
1428
- contents.NextMarker = __expectString(data.NextMarker);
1429
- }
1322
+ const doc = take(data, {
1323
+ FileSystems: (_) => de_FileSystemDescriptions(_, context),
1324
+ Marker: __expectString,
1325
+ NextMarker: __expectString,
1326
+ });
1327
+ Object.assign(contents, doc);
1430
1328
  return contents;
1431
1329
  };
1432
1330
  const de_DescribeFileSystemsCommandError = async (output, context) => {
@@ -1447,10 +1345,9 @@ const de_DescribeFileSystemsCommandError = async (output, context) => {
1447
1345
  throw await de_InternalServerErrorRes(parsedOutput, context);
1448
1346
  default:
1449
1347
  const parsedBody = parsedOutput.body;
1450
- throwDefaultError({
1348
+ return throwDefaultError({
1451
1349
  output,
1452
1350
  parsedBody,
1453
- exceptionCtor: __BaseException,
1454
1351
  errorCode,
1455
1352
  });
1456
1353
  }
@@ -1463,9 +1360,10 @@ export const de_DescribeLifecycleConfigurationCommand = async (output, context)
1463
1360
  $metadata: deserializeMetadata(output),
1464
1361
  });
1465
1362
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1466
- if (data.LifecyclePolicies != null) {
1467
- contents.LifecyclePolicies = de_LifecyclePolicies(data.LifecyclePolicies, context);
1468
- }
1363
+ const doc = take(data, {
1364
+ LifecyclePolicies: _json,
1365
+ });
1366
+ Object.assign(contents, doc);
1469
1367
  return contents;
1470
1368
  };
1471
1369
  const de_DescribeLifecycleConfigurationCommandError = async (output, context) => {
@@ -1486,10 +1384,9 @@ const de_DescribeLifecycleConfigurationCommandError = async (output, context) =>
1486
1384
  throw await de_InternalServerErrorRes(parsedOutput, context);
1487
1385
  default:
1488
1386
  const parsedBody = parsedOutput.body;
1489
- throwDefaultError({
1387
+ return throwDefaultError({
1490
1388
  output,
1491
1389
  parsedBody,
1492
- exceptionCtor: __BaseException,
1493
1390
  errorCode,
1494
1391
  });
1495
1392
  }
@@ -1502,15 +1399,12 @@ export const de_DescribeMountTargetsCommand = async (output, context) => {
1502
1399
  $metadata: deserializeMetadata(output),
1503
1400
  });
1504
1401
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1505
- if (data.Marker != null) {
1506
- contents.Marker = __expectString(data.Marker);
1507
- }
1508
- if (data.MountTargets != null) {
1509
- contents.MountTargets = de_MountTargetDescriptions(data.MountTargets, context);
1510
- }
1511
- if (data.NextMarker != null) {
1512
- contents.NextMarker = __expectString(data.NextMarker);
1513
- }
1402
+ const doc = take(data, {
1403
+ Marker: __expectString,
1404
+ MountTargets: _json,
1405
+ NextMarker: __expectString,
1406
+ });
1407
+ Object.assign(contents, doc);
1514
1408
  return contents;
1515
1409
  };
1516
1410
  const de_DescribeMountTargetsCommandError = async (output, context) => {
@@ -1537,10 +1431,9 @@ const de_DescribeMountTargetsCommandError = async (output, context) => {
1537
1431
  throw await de_MountTargetNotFoundRes(parsedOutput, context);
1538
1432
  default:
1539
1433
  const parsedBody = parsedOutput.body;
1540
- throwDefaultError({
1434
+ return throwDefaultError({
1541
1435
  output,
1542
1436
  parsedBody,
1543
- exceptionCtor: __BaseException,
1544
1437
  errorCode,
1545
1438
  });
1546
1439
  }
@@ -1553,9 +1446,10 @@ export const de_DescribeMountTargetSecurityGroupsCommand = async (output, contex
1553
1446
  $metadata: deserializeMetadata(output),
1554
1447
  });
1555
1448
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1556
- if (data.SecurityGroups != null) {
1557
- contents.SecurityGroups = de_SecurityGroups(data.SecurityGroups, context);
1558
- }
1449
+ const doc = take(data, {
1450
+ SecurityGroups: _json,
1451
+ });
1452
+ Object.assign(contents, doc);
1559
1453
  return contents;
1560
1454
  };
1561
1455
  const de_DescribeMountTargetSecurityGroupsCommandError = async (output, context) => {
@@ -1579,10 +1473,9 @@ const de_DescribeMountTargetSecurityGroupsCommandError = async (output, context)
1579
1473
  throw await de_MountTargetNotFoundRes(parsedOutput, context);
1580
1474
  default:
1581
1475
  const parsedBody = parsedOutput.body;
1582
- throwDefaultError({
1476
+ return throwDefaultError({
1583
1477
  output,
1584
1478
  parsedBody,
1585
- exceptionCtor: __BaseException,
1586
1479
  errorCode,
1587
1480
  });
1588
1481
  }
@@ -1595,12 +1488,11 @@ export const de_DescribeReplicationConfigurationsCommand = async (output, contex
1595
1488
  $metadata: deserializeMetadata(output),
1596
1489
  });
1597
1490
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1598
- if (data.NextToken != null) {
1599
- contents.NextToken = __expectString(data.NextToken);
1600
- }
1601
- if (data.Replications != null) {
1602
- contents.Replications = de_ReplicationConfigurationDescriptions(data.Replications, context);
1603
- }
1491
+ const doc = take(data, {
1492
+ NextToken: __expectString,
1493
+ Replications: (_) => de_ReplicationConfigurationDescriptions(_, context),
1494
+ });
1495
+ Object.assign(contents, doc);
1604
1496
  return contents;
1605
1497
  };
1606
1498
  const de_DescribeReplicationConfigurationsCommandError = async (output, context) => {
@@ -1627,10 +1519,9 @@ const de_DescribeReplicationConfigurationsCommandError = async (output, context)
1627
1519
  throw await de_ValidationExceptionRes(parsedOutput, context);
1628
1520
  default:
1629
1521
  const parsedBody = parsedOutput.body;
1630
- throwDefaultError({
1522
+ return throwDefaultError({
1631
1523
  output,
1632
1524
  parsedBody,
1633
- exceptionCtor: __BaseException,
1634
1525
  errorCode,
1635
1526
  });
1636
1527
  }
@@ -1643,15 +1534,12 @@ export const de_DescribeTagsCommand = async (output, context) => {
1643
1534
  $metadata: deserializeMetadata(output),
1644
1535
  });
1645
1536
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1646
- if (data.Marker != null) {
1647
- contents.Marker = __expectString(data.Marker);
1648
- }
1649
- if (data.NextMarker != null) {
1650
- contents.NextMarker = __expectString(data.NextMarker);
1651
- }
1652
- if (data.Tags != null) {
1653
- contents.Tags = de_Tags(data.Tags, context);
1654
- }
1537
+ const doc = take(data, {
1538
+ Marker: __expectString,
1539
+ NextMarker: __expectString,
1540
+ Tags: _json,
1541
+ });
1542
+ Object.assign(contents, doc);
1655
1543
  return contents;
1656
1544
  };
1657
1545
  const de_DescribeTagsCommandError = async (output, context) => {
@@ -1672,10 +1560,9 @@ const de_DescribeTagsCommandError = async (output, context) => {
1672
1560
  throw await de_InternalServerErrorRes(parsedOutput, context);
1673
1561
  default:
1674
1562
  const parsedBody = parsedOutput.body;
1675
- throwDefaultError({
1563
+ return throwDefaultError({
1676
1564
  output,
1677
1565
  parsedBody,
1678
- exceptionCtor: __BaseException,
1679
1566
  errorCode,
1680
1567
  });
1681
1568
  }
@@ -1688,12 +1575,11 @@ export const de_ListTagsForResourceCommand = async (output, context) => {
1688
1575
  $metadata: deserializeMetadata(output),
1689
1576
  });
1690
1577
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1691
- if (data.NextToken != null) {
1692
- contents.NextToken = __expectString(data.NextToken);
1693
- }
1694
- if (data.Tags != null) {
1695
- contents.Tags = de_Tags(data.Tags, context);
1696
- }
1578
+ const doc = take(data, {
1579
+ NextToken: __expectString,
1580
+ Tags: _json,
1581
+ });
1582
+ Object.assign(contents, doc);
1697
1583
  return contents;
1698
1584
  };
1699
1585
  const de_ListTagsForResourceCommandError = async (output, context) => {
@@ -1717,10 +1603,9 @@ const de_ListTagsForResourceCommandError = async (output, context) => {
1717
1603
  throw await de_InternalServerErrorRes(parsedOutput, context);
1718
1604
  default:
1719
1605
  const parsedBody = parsedOutput.body;
1720
- throwDefaultError({
1606
+ return throwDefaultError({
1721
1607
  output,
1722
1608
  parsedBody,
1723
- exceptionCtor: __BaseException,
1724
1609
  errorCode,
1725
1610
  });
1726
1611
  }
@@ -1762,10 +1647,9 @@ const de_ModifyMountTargetSecurityGroupsCommandError = async (output, context) =
1762
1647
  throw await de_SecurityGroupNotFoundRes(parsedOutput, context);
1763
1648
  default:
1764
1649
  const parsedBody = parsedOutput.body;
1765
- throwDefaultError({
1650
+ return throwDefaultError({
1766
1651
  output,
1767
1652
  parsedBody,
1768
- exceptionCtor: __BaseException,
1769
1653
  errorCode,
1770
1654
  });
1771
1655
  }
@@ -1778,9 +1662,10 @@ export const de_PutAccountPreferencesCommand = async (output, context) => {
1778
1662
  $metadata: deserializeMetadata(output),
1779
1663
  });
1780
1664
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1781
- if (data.ResourceIdPreference != null) {
1782
- contents.ResourceIdPreference = de_ResourceIdPreference(data.ResourceIdPreference, context);
1783
- }
1665
+ const doc = take(data, {
1666
+ ResourceIdPreference: _json,
1667
+ });
1668
+ Object.assign(contents, doc);
1784
1669
  return contents;
1785
1670
  };
1786
1671
  const de_PutAccountPreferencesCommandError = async (output, context) => {
@@ -1798,10 +1683,9 @@ const de_PutAccountPreferencesCommandError = async (output, context) => {
1798
1683
  throw await de_InternalServerErrorRes(parsedOutput, context);
1799
1684
  default:
1800
1685
  const parsedBody = parsedOutput.body;
1801
- throwDefaultError({
1686
+ return throwDefaultError({
1802
1687
  output,
1803
1688
  parsedBody,
1804
- exceptionCtor: __BaseException,
1805
1689
  errorCode,
1806
1690
  });
1807
1691
  }
@@ -1814,9 +1698,10 @@ export const de_PutBackupPolicyCommand = async (output, context) => {
1814
1698
  $metadata: deserializeMetadata(output),
1815
1699
  });
1816
1700
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1817
- if (data.BackupPolicy != null) {
1818
- contents.BackupPolicy = de_BackupPolicy(data.BackupPolicy, context);
1819
- }
1701
+ const doc = take(data, {
1702
+ BackupPolicy: _json,
1703
+ });
1704
+ Object.assign(contents, doc);
1820
1705
  return contents;
1821
1706
  };
1822
1707
  const de_PutBackupPolicyCommandError = async (output, context) => {
@@ -1843,10 +1728,9 @@ const de_PutBackupPolicyCommandError = async (output, context) => {
1843
1728
  throw await de_ValidationExceptionRes(parsedOutput, context);
1844
1729
  default:
1845
1730
  const parsedBody = parsedOutput.body;
1846
- throwDefaultError({
1731
+ return throwDefaultError({
1847
1732
  output,
1848
1733
  parsedBody,
1849
- exceptionCtor: __BaseException,
1850
1734
  errorCode,
1851
1735
  });
1852
1736
  }
@@ -1859,12 +1743,11 @@ export const de_PutFileSystemPolicyCommand = async (output, context) => {
1859
1743
  $metadata: deserializeMetadata(output),
1860
1744
  });
1861
1745
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1862
- if (data.FileSystemId != null) {
1863
- contents.FileSystemId = __expectString(data.FileSystemId);
1864
- }
1865
- if (data.Policy != null) {
1866
- contents.Policy = __expectString(data.Policy);
1867
- }
1746
+ const doc = take(data, {
1747
+ FileSystemId: __expectString,
1748
+ Policy: __expectString,
1749
+ });
1750
+ Object.assign(contents, doc);
1868
1751
  return contents;
1869
1752
  };
1870
1753
  const de_PutFileSystemPolicyCommandError = async (output, context) => {
@@ -1891,10 +1774,9 @@ const de_PutFileSystemPolicyCommandError = async (output, context) => {
1891
1774
  throw await de_InvalidPolicyExceptionRes(parsedOutput, context);
1892
1775
  default:
1893
1776
  const parsedBody = parsedOutput.body;
1894
- throwDefaultError({
1777
+ return throwDefaultError({
1895
1778
  output,
1896
1779
  parsedBody,
1897
- exceptionCtor: __BaseException,
1898
1780
  errorCode,
1899
1781
  });
1900
1782
  }
@@ -1907,9 +1789,10 @@ export const de_PutLifecycleConfigurationCommand = async (output, context) => {
1907
1789
  $metadata: deserializeMetadata(output),
1908
1790
  });
1909
1791
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1910
- if (data.LifecyclePolicies != null) {
1911
- contents.LifecyclePolicies = de_LifecyclePolicies(data.LifecyclePolicies, context);
1912
- }
1792
+ const doc = take(data, {
1793
+ LifecyclePolicies: _json,
1794
+ });
1795
+ Object.assign(contents, doc);
1913
1796
  return contents;
1914
1797
  };
1915
1798
  const de_PutLifecycleConfigurationCommandError = async (output, context) => {
@@ -1933,10 +1816,9 @@ const de_PutLifecycleConfigurationCommandError = async (output, context) => {
1933
1816
  throw await de_InternalServerErrorRes(parsedOutput, context);
1934
1817
  default:
1935
1818
  const parsedBody = parsedOutput.body;
1936
- throwDefaultError({
1819
+ return throwDefaultError({
1937
1820
  output,
1938
1821
  parsedBody,
1939
- exceptionCtor: __BaseException,
1940
1822
  errorCode,
1941
1823
  });
1942
1824
  }
@@ -1972,10 +1854,9 @@ const de_TagResourceCommandError = async (output, context) => {
1972
1854
  throw await de_InternalServerErrorRes(parsedOutput, context);
1973
1855
  default:
1974
1856
  const parsedBody = parsedOutput.body;
1975
- throwDefaultError({
1857
+ return throwDefaultError({
1976
1858
  output,
1977
1859
  parsedBody,
1978
- exceptionCtor: __BaseException,
1979
1860
  errorCode,
1980
1861
  });
1981
1862
  }
@@ -2011,10 +1892,9 @@ const de_UntagResourceCommandError = async (output, context) => {
2011
1892
  throw await de_InternalServerErrorRes(parsedOutput, context);
2012
1893
  default:
2013
1894
  const parsedBody = parsedOutput.body;
2014
- throwDefaultError({
1895
+ return throwDefaultError({
2015
1896
  output,
2016
1897
  parsedBody,
2017
- exceptionCtor: __BaseException,
2018
1898
  errorCode,
2019
1899
  });
2020
1900
  }
@@ -2027,57 +1907,26 @@ export const de_UpdateFileSystemCommand = async (output, context) => {
2027
1907
  $metadata: deserializeMetadata(output),
2028
1908
  });
2029
1909
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2030
- if (data.AvailabilityZoneId != null) {
2031
- contents.AvailabilityZoneId = __expectString(data.AvailabilityZoneId);
2032
- }
2033
- if (data.AvailabilityZoneName != null) {
2034
- contents.AvailabilityZoneName = __expectString(data.AvailabilityZoneName);
2035
- }
2036
- if (data.CreationTime != null) {
2037
- contents.CreationTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationTime)));
2038
- }
2039
- if (data.CreationToken != null) {
2040
- contents.CreationToken = __expectString(data.CreationToken);
2041
- }
2042
- if (data.Encrypted != null) {
2043
- contents.Encrypted = __expectBoolean(data.Encrypted);
2044
- }
2045
- if (data.FileSystemArn != null) {
2046
- contents.FileSystemArn = __expectString(data.FileSystemArn);
2047
- }
2048
- if (data.FileSystemId != null) {
2049
- contents.FileSystemId = __expectString(data.FileSystemId);
2050
- }
2051
- if (data.KmsKeyId != null) {
2052
- contents.KmsKeyId = __expectString(data.KmsKeyId);
2053
- }
2054
- if (data.LifeCycleState != null) {
2055
- contents.LifeCycleState = __expectString(data.LifeCycleState);
2056
- }
2057
- if (data.Name != null) {
2058
- contents.Name = __expectString(data.Name);
2059
- }
2060
- if (data.NumberOfMountTargets != null) {
2061
- contents.NumberOfMountTargets = __expectInt32(data.NumberOfMountTargets);
2062
- }
2063
- if (data.OwnerId != null) {
2064
- contents.OwnerId = __expectString(data.OwnerId);
2065
- }
2066
- if (data.PerformanceMode != null) {
2067
- contents.PerformanceMode = __expectString(data.PerformanceMode);
2068
- }
2069
- if (data.ProvisionedThroughputInMibps != null) {
2070
- contents.ProvisionedThroughputInMibps = __limitedParseDouble(data.ProvisionedThroughputInMibps);
2071
- }
2072
- if (data.SizeInBytes != null) {
2073
- contents.SizeInBytes = de_FileSystemSize(data.SizeInBytes, context);
2074
- }
2075
- if (data.Tags != null) {
2076
- contents.Tags = de_Tags(data.Tags, context);
2077
- }
2078
- if (data.ThroughputMode != null) {
2079
- contents.ThroughputMode = __expectString(data.ThroughputMode);
2080
- }
1910
+ const doc = take(data, {
1911
+ AvailabilityZoneId: __expectString,
1912
+ AvailabilityZoneName: __expectString,
1913
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1914
+ CreationToken: __expectString,
1915
+ Encrypted: __expectBoolean,
1916
+ FileSystemArn: __expectString,
1917
+ FileSystemId: __expectString,
1918
+ KmsKeyId: __expectString,
1919
+ LifeCycleState: __expectString,
1920
+ Name: __expectString,
1921
+ NumberOfMountTargets: __expectInt32,
1922
+ OwnerId: __expectString,
1923
+ PerformanceMode: __expectString,
1924
+ ProvisionedThroughputInMibps: __limitedParseDouble,
1925
+ SizeInBytes: (_) => de_FileSystemSize(_, context),
1926
+ Tags: _json,
1927
+ ThroughputMode: __expectString,
1928
+ });
1929
+ Object.assign(contents, doc);
2081
1930
  return contents;
2082
1931
  };
2083
1932
  const de_UpdateFileSystemCommandError = async (output, context) => {
@@ -2110,27 +1959,23 @@ const de_UpdateFileSystemCommandError = async (output, context) => {
2110
1959
  throw await de_TooManyRequestsRes(parsedOutput, context);
2111
1960
  default:
2112
1961
  const parsedBody = parsedOutput.body;
2113
- throwDefaultError({
1962
+ return throwDefaultError({
2114
1963
  output,
2115
1964
  parsedBody,
2116
- exceptionCtor: __BaseException,
2117
1965
  errorCode,
2118
1966
  });
2119
1967
  }
2120
1968
  };
2121
- const map = __map;
1969
+ const throwDefaultError = withBaseException(__BaseException);
2122
1970
  const de_AccessPointAlreadyExistsRes = async (parsedOutput, context) => {
2123
1971
  const contents = map({});
2124
1972
  const data = parsedOutput.body;
2125
- if (data.AccessPointId != null) {
2126
- contents.AccessPointId = __expectString(data.AccessPointId);
2127
- }
2128
- if (data.ErrorCode != null) {
2129
- contents.ErrorCode = __expectString(data.ErrorCode);
2130
- }
2131
- if (data.Message != null) {
2132
- contents.Message = __expectString(data.Message);
2133
- }
1973
+ const doc = take(data, {
1974
+ AccessPointId: __expectString,
1975
+ ErrorCode: __expectString,
1976
+ Message: __expectString,
1977
+ });
1978
+ Object.assign(contents, doc);
2134
1979
  const exception = new AccessPointAlreadyExists({
2135
1980
  $metadata: deserializeMetadata(parsedOutput),
2136
1981
  ...contents,
@@ -2140,12 +1985,11 @@ const de_AccessPointAlreadyExistsRes = async (parsedOutput, context) => {
2140
1985
  const de_AccessPointLimitExceededRes = async (parsedOutput, context) => {
2141
1986
  const contents = map({});
2142
1987
  const data = parsedOutput.body;
2143
- if (data.ErrorCode != null) {
2144
- contents.ErrorCode = __expectString(data.ErrorCode);
2145
- }
2146
- if (data.Message != null) {
2147
- contents.Message = __expectString(data.Message);
2148
- }
1988
+ const doc = take(data, {
1989
+ ErrorCode: __expectString,
1990
+ Message: __expectString,
1991
+ });
1992
+ Object.assign(contents, doc);
2149
1993
  const exception = new AccessPointLimitExceeded({
2150
1994
  $metadata: deserializeMetadata(parsedOutput),
2151
1995
  ...contents,
@@ -2155,12 +1999,11 @@ const de_AccessPointLimitExceededRes = async (parsedOutput, context) => {
2155
1999
  const de_AccessPointNotFoundRes = async (parsedOutput, context) => {
2156
2000
  const contents = map({});
2157
2001
  const data = parsedOutput.body;
2158
- if (data.ErrorCode != null) {
2159
- contents.ErrorCode = __expectString(data.ErrorCode);
2160
- }
2161
- if (data.Message != null) {
2162
- contents.Message = __expectString(data.Message);
2163
- }
2002
+ const doc = take(data, {
2003
+ ErrorCode: __expectString,
2004
+ Message: __expectString,
2005
+ });
2006
+ Object.assign(contents, doc);
2164
2007
  const exception = new AccessPointNotFound({
2165
2008
  $metadata: deserializeMetadata(parsedOutput),
2166
2009
  ...contents,
@@ -2170,12 +2013,11 @@ const de_AccessPointNotFoundRes = async (parsedOutput, context) => {
2170
2013
  const de_AvailabilityZonesMismatchRes = async (parsedOutput, context) => {
2171
2014
  const contents = map({});
2172
2015
  const data = parsedOutput.body;
2173
- if (data.ErrorCode != null) {
2174
- contents.ErrorCode = __expectString(data.ErrorCode);
2175
- }
2176
- if (data.Message != null) {
2177
- contents.Message = __expectString(data.Message);
2178
- }
2016
+ const doc = take(data, {
2017
+ ErrorCode: __expectString,
2018
+ Message: __expectString,
2019
+ });
2020
+ Object.assign(contents, doc);
2179
2021
  const exception = new AvailabilityZonesMismatch({
2180
2022
  $metadata: deserializeMetadata(parsedOutput),
2181
2023
  ...contents,
@@ -2185,12 +2027,11 @@ const de_AvailabilityZonesMismatchRes = async (parsedOutput, context) => {
2185
2027
  const de_BadRequestRes = async (parsedOutput, context) => {
2186
2028
  const contents = map({});
2187
2029
  const data = parsedOutput.body;
2188
- if (data.ErrorCode != null) {
2189
- contents.ErrorCode = __expectString(data.ErrorCode);
2190
- }
2191
- if (data.Message != null) {
2192
- contents.Message = __expectString(data.Message);
2193
- }
2030
+ const doc = take(data, {
2031
+ ErrorCode: __expectString,
2032
+ Message: __expectString,
2033
+ });
2034
+ Object.assign(contents, doc);
2194
2035
  const exception = new BadRequest({
2195
2036
  $metadata: deserializeMetadata(parsedOutput),
2196
2037
  ...contents,
@@ -2200,12 +2041,11 @@ const de_BadRequestRes = async (parsedOutput, context) => {
2200
2041
  const de_DependencyTimeoutRes = async (parsedOutput, context) => {
2201
2042
  const contents = map({});
2202
2043
  const data = parsedOutput.body;
2203
- if (data.ErrorCode != null) {
2204
- contents.ErrorCode = __expectString(data.ErrorCode);
2205
- }
2206
- if (data.Message != null) {
2207
- contents.Message = __expectString(data.Message);
2208
- }
2044
+ const doc = take(data, {
2045
+ ErrorCode: __expectString,
2046
+ Message: __expectString,
2047
+ });
2048
+ Object.assign(contents, doc);
2209
2049
  const exception = new DependencyTimeout({
2210
2050
  $metadata: deserializeMetadata(parsedOutput),
2211
2051
  ...contents,
@@ -2215,15 +2055,12 @@ const de_DependencyTimeoutRes = async (parsedOutput, context) => {
2215
2055
  const de_FileSystemAlreadyExistsRes = async (parsedOutput, context) => {
2216
2056
  const contents = map({});
2217
2057
  const data = parsedOutput.body;
2218
- if (data.ErrorCode != null) {
2219
- contents.ErrorCode = __expectString(data.ErrorCode);
2220
- }
2221
- if (data.FileSystemId != null) {
2222
- contents.FileSystemId = __expectString(data.FileSystemId);
2223
- }
2224
- if (data.Message != null) {
2225
- contents.Message = __expectString(data.Message);
2226
- }
2058
+ const doc = take(data, {
2059
+ ErrorCode: __expectString,
2060
+ FileSystemId: __expectString,
2061
+ Message: __expectString,
2062
+ });
2063
+ Object.assign(contents, doc);
2227
2064
  const exception = new FileSystemAlreadyExists({
2228
2065
  $metadata: deserializeMetadata(parsedOutput),
2229
2066
  ...contents,
@@ -2233,12 +2070,11 @@ const de_FileSystemAlreadyExistsRes = async (parsedOutput, context) => {
2233
2070
  const de_FileSystemInUseRes = async (parsedOutput, context) => {
2234
2071
  const contents = map({});
2235
2072
  const data = parsedOutput.body;
2236
- if (data.ErrorCode != null) {
2237
- contents.ErrorCode = __expectString(data.ErrorCode);
2238
- }
2239
- if (data.Message != null) {
2240
- contents.Message = __expectString(data.Message);
2241
- }
2073
+ const doc = take(data, {
2074
+ ErrorCode: __expectString,
2075
+ Message: __expectString,
2076
+ });
2077
+ Object.assign(contents, doc);
2242
2078
  const exception = new FileSystemInUse({
2243
2079
  $metadata: deserializeMetadata(parsedOutput),
2244
2080
  ...contents,
@@ -2248,12 +2084,11 @@ const de_FileSystemInUseRes = async (parsedOutput, context) => {
2248
2084
  const de_FileSystemLimitExceededRes = async (parsedOutput, context) => {
2249
2085
  const contents = map({});
2250
2086
  const data = parsedOutput.body;
2251
- if (data.ErrorCode != null) {
2252
- contents.ErrorCode = __expectString(data.ErrorCode);
2253
- }
2254
- if (data.Message != null) {
2255
- contents.Message = __expectString(data.Message);
2256
- }
2087
+ const doc = take(data, {
2088
+ ErrorCode: __expectString,
2089
+ Message: __expectString,
2090
+ });
2091
+ Object.assign(contents, doc);
2257
2092
  const exception = new FileSystemLimitExceeded({
2258
2093
  $metadata: deserializeMetadata(parsedOutput),
2259
2094
  ...contents,
@@ -2263,12 +2098,11 @@ const de_FileSystemLimitExceededRes = async (parsedOutput, context) => {
2263
2098
  const de_FileSystemNotFoundRes = async (parsedOutput, context) => {
2264
2099
  const contents = map({});
2265
2100
  const data = parsedOutput.body;
2266
- if (data.ErrorCode != null) {
2267
- contents.ErrorCode = __expectString(data.ErrorCode);
2268
- }
2269
- if (data.Message != null) {
2270
- contents.Message = __expectString(data.Message);
2271
- }
2101
+ const doc = take(data, {
2102
+ ErrorCode: __expectString,
2103
+ Message: __expectString,
2104
+ });
2105
+ Object.assign(contents, doc);
2272
2106
  const exception = new FileSystemNotFound({
2273
2107
  $metadata: deserializeMetadata(parsedOutput),
2274
2108
  ...contents,
@@ -2278,12 +2112,11 @@ const de_FileSystemNotFoundRes = async (parsedOutput, context) => {
2278
2112
  const de_IncorrectFileSystemLifeCycleStateRes = async (parsedOutput, context) => {
2279
2113
  const contents = map({});
2280
2114
  const data = parsedOutput.body;
2281
- if (data.ErrorCode != null) {
2282
- contents.ErrorCode = __expectString(data.ErrorCode);
2283
- }
2284
- if (data.Message != null) {
2285
- contents.Message = __expectString(data.Message);
2286
- }
2115
+ const doc = take(data, {
2116
+ ErrorCode: __expectString,
2117
+ Message: __expectString,
2118
+ });
2119
+ Object.assign(contents, doc);
2287
2120
  const exception = new IncorrectFileSystemLifeCycleState({
2288
2121
  $metadata: deserializeMetadata(parsedOutput),
2289
2122
  ...contents,
@@ -2293,12 +2126,11 @@ const de_IncorrectFileSystemLifeCycleStateRes = async (parsedOutput, context) =>
2293
2126
  const de_IncorrectMountTargetStateRes = async (parsedOutput, context) => {
2294
2127
  const contents = map({});
2295
2128
  const data = parsedOutput.body;
2296
- if (data.ErrorCode != null) {
2297
- contents.ErrorCode = __expectString(data.ErrorCode);
2298
- }
2299
- if (data.Message != null) {
2300
- contents.Message = __expectString(data.Message);
2301
- }
2129
+ const doc = take(data, {
2130
+ ErrorCode: __expectString,
2131
+ Message: __expectString,
2132
+ });
2133
+ Object.assign(contents, doc);
2302
2134
  const exception = new IncorrectMountTargetState({
2303
2135
  $metadata: deserializeMetadata(parsedOutput),
2304
2136
  ...contents,
@@ -2308,12 +2140,11 @@ const de_IncorrectMountTargetStateRes = async (parsedOutput, context) => {
2308
2140
  const de_InsufficientThroughputCapacityRes = async (parsedOutput, context) => {
2309
2141
  const contents = map({});
2310
2142
  const data = parsedOutput.body;
2311
- if (data.ErrorCode != null) {
2312
- contents.ErrorCode = __expectString(data.ErrorCode);
2313
- }
2314
- if (data.Message != null) {
2315
- contents.Message = __expectString(data.Message);
2316
- }
2143
+ const doc = take(data, {
2144
+ ErrorCode: __expectString,
2145
+ Message: __expectString,
2146
+ });
2147
+ Object.assign(contents, doc);
2317
2148
  const exception = new InsufficientThroughputCapacity({
2318
2149
  $metadata: deserializeMetadata(parsedOutput),
2319
2150
  ...contents,
@@ -2323,12 +2154,11 @@ const de_InsufficientThroughputCapacityRes = async (parsedOutput, context) => {
2323
2154
  const de_InternalServerErrorRes = async (parsedOutput, context) => {
2324
2155
  const contents = map({});
2325
2156
  const data = parsedOutput.body;
2326
- if (data.ErrorCode != null) {
2327
- contents.ErrorCode = __expectString(data.ErrorCode);
2328
- }
2329
- if (data.Message != null) {
2330
- contents.Message = __expectString(data.Message);
2331
- }
2157
+ const doc = take(data, {
2158
+ ErrorCode: __expectString,
2159
+ Message: __expectString,
2160
+ });
2161
+ Object.assign(contents, doc);
2332
2162
  const exception = new InternalServerError({
2333
2163
  $metadata: deserializeMetadata(parsedOutput),
2334
2164
  ...contents,
@@ -2338,12 +2168,11 @@ const de_InternalServerErrorRes = async (parsedOutput, context) => {
2338
2168
  const de_InvalidPolicyExceptionRes = async (parsedOutput, context) => {
2339
2169
  const contents = map({});
2340
2170
  const data = parsedOutput.body;
2341
- if (data.ErrorCode != null) {
2342
- contents.ErrorCode = __expectString(data.ErrorCode);
2343
- }
2344
- if (data.Message != null) {
2345
- contents.Message = __expectString(data.Message);
2346
- }
2171
+ const doc = take(data, {
2172
+ ErrorCode: __expectString,
2173
+ Message: __expectString,
2174
+ });
2175
+ Object.assign(contents, doc);
2347
2176
  const exception = new InvalidPolicyException({
2348
2177
  $metadata: deserializeMetadata(parsedOutput),
2349
2178
  ...contents,
@@ -2353,12 +2182,11 @@ const de_InvalidPolicyExceptionRes = async (parsedOutput, context) => {
2353
2182
  const de_IpAddressInUseRes = async (parsedOutput, context) => {
2354
2183
  const contents = map({});
2355
2184
  const data = parsedOutput.body;
2356
- if (data.ErrorCode != null) {
2357
- contents.ErrorCode = __expectString(data.ErrorCode);
2358
- }
2359
- if (data.Message != null) {
2360
- contents.Message = __expectString(data.Message);
2361
- }
2185
+ const doc = take(data, {
2186
+ ErrorCode: __expectString,
2187
+ Message: __expectString,
2188
+ });
2189
+ Object.assign(contents, doc);
2362
2190
  const exception = new IpAddressInUse({
2363
2191
  $metadata: deserializeMetadata(parsedOutput),
2364
2192
  ...contents,
@@ -2368,12 +2196,11 @@ const de_IpAddressInUseRes = async (parsedOutput, context) => {
2368
2196
  const de_MountTargetConflictRes = async (parsedOutput, context) => {
2369
2197
  const contents = map({});
2370
2198
  const data = parsedOutput.body;
2371
- if (data.ErrorCode != null) {
2372
- contents.ErrorCode = __expectString(data.ErrorCode);
2373
- }
2374
- if (data.Message != null) {
2375
- contents.Message = __expectString(data.Message);
2376
- }
2199
+ const doc = take(data, {
2200
+ ErrorCode: __expectString,
2201
+ Message: __expectString,
2202
+ });
2203
+ Object.assign(contents, doc);
2377
2204
  const exception = new MountTargetConflict({
2378
2205
  $metadata: deserializeMetadata(parsedOutput),
2379
2206
  ...contents,
@@ -2383,12 +2210,11 @@ const de_MountTargetConflictRes = async (parsedOutput, context) => {
2383
2210
  const de_MountTargetNotFoundRes = async (parsedOutput, context) => {
2384
2211
  const contents = map({});
2385
2212
  const data = parsedOutput.body;
2386
- if (data.ErrorCode != null) {
2387
- contents.ErrorCode = __expectString(data.ErrorCode);
2388
- }
2389
- if (data.Message != null) {
2390
- contents.Message = __expectString(data.Message);
2391
- }
2213
+ const doc = take(data, {
2214
+ ErrorCode: __expectString,
2215
+ Message: __expectString,
2216
+ });
2217
+ Object.assign(contents, doc);
2392
2218
  const exception = new MountTargetNotFound({
2393
2219
  $metadata: deserializeMetadata(parsedOutput),
2394
2220
  ...contents,
@@ -2398,12 +2224,11 @@ const de_MountTargetNotFoundRes = async (parsedOutput, context) => {
2398
2224
  const de_NetworkInterfaceLimitExceededRes = async (parsedOutput, context) => {
2399
2225
  const contents = map({});
2400
2226
  const data = parsedOutput.body;
2401
- if (data.ErrorCode != null) {
2402
- contents.ErrorCode = __expectString(data.ErrorCode);
2403
- }
2404
- if (data.Message != null) {
2405
- contents.Message = __expectString(data.Message);
2406
- }
2227
+ const doc = take(data, {
2228
+ ErrorCode: __expectString,
2229
+ Message: __expectString,
2230
+ });
2231
+ Object.assign(contents, doc);
2407
2232
  const exception = new NetworkInterfaceLimitExceeded({
2408
2233
  $metadata: deserializeMetadata(parsedOutput),
2409
2234
  ...contents,
@@ -2413,12 +2238,11 @@ const de_NetworkInterfaceLimitExceededRes = async (parsedOutput, context) => {
2413
2238
  const de_NoFreeAddressesInSubnetRes = async (parsedOutput, context) => {
2414
2239
  const contents = map({});
2415
2240
  const data = parsedOutput.body;
2416
- if (data.ErrorCode != null) {
2417
- contents.ErrorCode = __expectString(data.ErrorCode);
2418
- }
2419
- if (data.Message != null) {
2420
- contents.Message = __expectString(data.Message);
2421
- }
2241
+ const doc = take(data, {
2242
+ ErrorCode: __expectString,
2243
+ Message: __expectString,
2244
+ });
2245
+ Object.assign(contents, doc);
2422
2246
  const exception = new NoFreeAddressesInSubnet({
2423
2247
  $metadata: deserializeMetadata(parsedOutput),
2424
2248
  ...contents,
@@ -2428,12 +2252,11 @@ const de_NoFreeAddressesInSubnetRes = async (parsedOutput, context) => {
2428
2252
  const de_PolicyNotFoundRes = async (parsedOutput, context) => {
2429
2253
  const contents = map({});
2430
2254
  const data = parsedOutput.body;
2431
- if (data.ErrorCode != null) {
2432
- contents.ErrorCode = __expectString(data.ErrorCode);
2433
- }
2434
- if (data.Message != null) {
2435
- contents.Message = __expectString(data.Message);
2436
- }
2255
+ const doc = take(data, {
2256
+ ErrorCode: __expectString,
2257
+ Message: __expectString,
2258
+ });
2259
+ Object.assign(contents, doc);
2437
2260
  const exception = new PolicyNotFound({
2438
2261
  $metadata: deserializeMetadata(parsedOutput),
2439
2262
  ...contents,
@@ -2443,12 +2266,11 @@ const de_PolicyNotFoundRes = async (parsedOutput, context) => {
2443
2266
  const de_ReplicationNotFoundRes = async (parsedOutput, context) => {
2444
2267
  const contents = map({});
2445
2268
  const data = parsedOutput.body;
2446
- if (data.ErrorCode != null) {
2447
- contents.ErrorCode = __expectString(data.ErrorCode);
2448
- }
2449
- if (data.Message != null) {
2450
- contents.Message = __expectString(data.Message);
2451
- }
2269
+ const doc = take(data, {
2270
+ ErrorCode: __expectString,
2271
+ Message: __expectString,
2272
+ });
2273
+ Object.assign(contents, doc);
2452
2274
  const exception = new ReplicationNotFound({
2453
2275
  $metadata: deserializeMetadata(parsedOutput),
2454
2276
  ...contents,
@@ -2458,12 +2280,11 @@ const de_ReplicationNotFoundRes = async (parsedOutput, context) => {
2458
2280
  const de_SecurityGroupLimitExceededRes = async (parsedOutput, context) => {
2459
2281
  const contents = map({});
2460
2282
  const data = parsedOutput.body;
2461
- if (data.ErrorCode != null) {
2462
- contents.ErrorCode = __expectString(data.ErrorCode);
2463
- }
2464
- if (data.Message != null) {
2465
- contents.Message = __expectString(data.Message);
2466
- }
2283
+ const doc = take(data, {
2284
+ ErrorCode: __expectString,
2285
+ Message: __expectString,
2286
+ });
2287
+ Object.assign(contents, doc);
2467
2288
  const exception = new SecurityGroupLimitExceeded({
2468
2289
  $metadata: deserializeMetadata(parsedOutput),
2469
2290
  ...contents,
@@ -2473,12 +2294,11 @@ const de_SecurityGroupLimitExceededRes = async (parsedOutput, context) => {
2473
2294
  const de_SecurityGroupNotFoundRes = async (parsedOutput, context) => {
2474
2295
  const contents = map({});
2475
2296
  const data = parsedOutput.body;
2476
- if (data.ErrorCode != null) {
2477
- contents.ErrorCode = __expectString(data.ErrorCode);
2478
- }
2479
- if (data.Message != null) {
2480
- contents.Message = __expectString(data.Message);
2481
- }
2297
+ const doc = take(data, {
2298
+ ErrorCode: __expectString,
2299
+ Message: __expectString,
2300
+ });
2301
+ Object.assign(contents, doc);
2482
2302
  const exception = new SecurityGroupNotFound({
2483
2303
  $metadata: deserializeMetadata(parsedOutput),
2484
2304
  ...contents,
@@ -2488,12 +2308,11 @@ const de_SecurityGroupNotFoundRes = async (parsedOutput, context) => {
2488
2308
  const de_SubnetNotFoundRes = async (parsedOutput, context) => {
2489
2309
  const contents = map({});
2490
2310
  const data = parsedOutput.body;
2491
- if (data.ErrorCode != null) {
2492
- contents.ErrorCode = __expectString(data.ErrorCode);
2493
- }
2494
- if (data.Message != null) {
2495
- contents.Message = __expectString(data.Message);
2496
- }
2311
+ const doc = take(data, {
2312
+ ErrorCode: __expectString,
2313
+ Message: __expectString,
2314
+ });
2315
+ Object.assign(contents, doc);
2497
2316
  const exception = new SubnetNotFound({
2498
2317
  $metadata: deserializeMetadata(parsedOutput),
2499
2318
  ...contents,
@@ -2503,12 +2322,11 @@ const de_SubnetNotFoundRes = async (parsedOutput, context) => {
2503
2322
  const de_ThrottlingExceptionRes = async (parsedOutput, context) => {
2504
2323
  const contents = map({});
2505
2324
  const data = parsedOutput.body;
2506
- if (data.ErrorCode != null) {
2507
- contents.ErrorCode = __expectString(data.ErrorCode);
2508
- }
2509
- if (data.Message != null) {
2510
- contents.Message = __expectString(data.Message);
2511
- }
2325
+ const doc = take(data, {
2326
+ ErrorCode: __expectString,
2327
+ Message: __expectString,
2328
+ });
2329
+ Object.assign(contents, doc);
2512
2330
  const exception = new ThrottlingException({
2513
2331
  $metadata: deserializeMetadata(parsedOutput),
2514
2332
  ...contents,
@@ -2518,12 +2336,11 @@ const de_ThrottlingExceptionRes = async (parsedOutput, context) => {
2518
2336
  const de_ThroughputLimitExceededRes = async (parsedOutput, context) => {
2519
2337
  const contents = map({});
2520
2338
  const data = parsedOutput.body;
2521
- if (data.ErrorCode != null) {
2522
- contents.ErrorCode = __expectString(data.ErrorCode);
2523
- }
2524
- if (data.Message != null) {
2525
- contents.Message = __expectString(data.Message);
2526
- }
2339
+ const doc = take(data, {
2340
+ ErrorCode: __expectString,
2341
+ Message: __expectString,
2342
+ });
2343
+ Object.assign(contents, doc);
2527
2344
  const exception = new ThroughputLimitExceeded({
2528
2345
  $metadata: deserializeMetadata(parsedOutput),
2529
2346
  ...contents,
@@ -2533,12 +2350,11 @@ const de_ThroughputLimitExceededRes = async (parsedOutput, context) => {
2533
2350
  const de_TooManyRequestsRes = async (parsedOutput, context) => {
2534
2351
  const contents = map({});
2535
2352
  const data = parsedOutput.body;
2536
- if (data.ErrorCode != null) {
2537
- contents.ErrorCode = __expectString(data.ErrorCode);
2538
- }
2539
- if (data.Message != null) {
2540
- contents.Message = __expectString(data.Message);
2541
- }
2353
+ const doc = take(data, {
2354
+ ErrorCode: __expectString,
2355
+ Message: __expectString,
2356
+ });
2357
+ Object.assign(contents, doc);
2542
2358
  const exception = new TooManyRequests({
2543
2359
  $metadata: deserializeMetadata(parsedOutput),
2544
2360
  ...contents,
@@ -2548,12 +2364,11 @@ const de_TooManyRequestsRes = async (parsedOutput, context) => {
2548
2364
  const de_UnsupportedAvailabilityZoneRes = async (parsedOutput, context) => {
2549
2365
  const contents = map({});
2550
2366
  const data = parsedOutput.body;
2551
- if (data.ErrorCode != null) {
2552
- contents.ErrorCode = __expectString(data.ErrorCode);
2553
- }
2554
- if (data.Message != null) {
2555
- contents.Message = __expectString(data.Message);
2556
- }
2367
+ const doc = take(data, {
2368
+ ErrorCode: __expectString,
2369
+ Message: __expectString,
2370
+ });
2371
+ Object.assign(contents, doc);
2557
2372
  const exception = new UnsupportedAvailabilityZone({
2558
2373
  $metadata: deserializeMetadata(parsedOutput),
2559
2374
  ...contents,
@@ -2563,340 +2378,88 @@ const de_UnsupportedAvailabilityZoneRes = async (parsedOutput, context) => {
2563
2378
  const de_ValidationExceptionRes = async (parsedOutput, context) => {
2564
2379
  const contents = map({});
2565
2380
  const data = parsedOutput.body;
2566
- if (data.ErrorCode != null) {
2567
- contents.ErrorCode = __expectString(data.ErrorCode);
2568
- }
2569
- if (data.Message != null) {
2570
- contents.Message = __expectString(data.Message);
2571
- }
2381
+ const doc = take(data, {
2382
+ ErrorCode: __expectString,
2383
+ Message: __expectString,
2384
+ });
2385
+ Object.assign(contents, doc);
2572
2386
  const exception = new ValidationException({
2573
2387
  $metadata: deserializeMetadata(parsedOutput),
2574
2388
  ...contents,
2575
2389
  });
2576
2390
  return __decorateServiceException(exception, parsedOutput.body);
2577
2391
  };
2578
- const se_BackupPolicy = (input, context) => {
2579
- return {
2580
- ...(input.Status != null && { Status: input.Status }),
2581
- };
2582
- };
2583
- const se_CreationInfo = (input, context) => {
2584
- return {
2585
- ...(input.OwnerGid != null && { OwnerGid: input.OwnerGid }),
2586
- ...(input.OwnerUid != null && { OwnerUid: input.OwnerUid }),
2587
- ...(input.Permissions != null && { Permissions: input.Permissions }),
2588
- };
2589
- };
2590
- const se_DestinationsToCreate = (input, context) => {
2591
- return input
2592
- .filter((e) => e != null)
2593
- .map((entry) => {
2594
- return se_DestinationToCreate(entry, context);
2595
- });
2596
- };
2597
- const se_DestinationToCreate = (input, context) => {
2598
- return {
2599
- ...(input.AvailabilityZoneName != null && { AvailabilityZoneName: input.AvailabilityZoneName }),
2600
- ...(input.KmsKeyId != null && { KmsKeyId: input.KmsKeyId }),
2601
- ...(input.Region != null && { Region: input.Region }),
2602
- };
2603
- };
2604
- const se_LifecyclePolicies = (input, context) => {
2605
- return input
2606
- .filter((e) => e != null)
2607
- .map((entry) => {
2608
- return se_LifecyclePolicy(entry, context);
2609
- });
2610
- };
2611
- const se_LifecyclePolicy = (input, context) => {
2612
- return {
2613
- ...(input.TransitionToIA != null && { TransitionToIA: input.TransitionToIA }),
2614
- ...(input.TransitionToPrimaryStorageClass != null && {
2615
- TransitionToPrimaryStorageClass: input.TransitionToPrimaryStorageClass,
2616
- }),
2617
- };
2618
- };
2619
- const se_PosixUser = (input, context) => {
2620
- return {
2621
- ...(input.Gid != null && { Gid: input.Gid }),
2622
- ...(input.SecondaryGids != null && { SecondaryGids: se_SecondaryGids(input.SecondaryGids, context) }),
2623
- ...(input.Uid != null && { Uid: input.Uid }),
2624
- };
2625
- };
2626
- const se_RootDirectory = (input, context) => {
2627
- return {
2628
- ...(input.CreationInfo != null && { CreationInfo: se_CreationInfo(input.CreationInfo, context) }),
2629
- ...(input.Path != null && { Path: input.Path }),
2630
- };
2631
- };
2632
- const se_SecondaryGids = (input, context) => {
2633
- return input
2634
- .filter((e) => e != null)
2635
- .map((entry) => {
2636
- return entry;
2637
- });
2638
- };
2639
- const se_SecurityGroups = (input, context) => {
2640
- return input
2641
- .filter((e) => e != null)
2642
- .map((entry) => {
2643
- return entry;
2644
- });
2645
- };
2646
- const se_Tag = (input, context) => {
2647
- return {
2648
- ...(input.Key != null && { Key: input.Key }),
2649
- ...(input.Value != null && { Value: input.Value }),
2650
- };
2651
- };
2652
- const se_TagKeys = (input, context) => {
2653
- return input
2654
- .filter((e) => e != null)
2655
- .map((entry) => {
2656
- return entry;
2657
- });
2658
- };
2659
- const se_Tags = (input, context) => {
2660
- return input
2661
- .filter((e) => e != null)
2662
- .map((entry) => {
2663
- return se_Tag(entry, context);
2664
- });
2665
- };
2666
- const de_AccessPointDescription = (output, context) => {
2667
- return {
2668
- AccessPointArn: __expectString(output.AccessPointArn),
2669
- AccessPointId: __expectString(output.AccessPointId),
2670
- ClientToken: __expectString(output.ClientToken),
2671
- FileSystemId: __expectString(output.FileSystemId),
2672
- LifeCycleState: __expectString(output.LifeCycleState),
2673
- Name: __expectString(output.Name),
2674
- OwnerId: __expectString(output.OwnerId),
2675
- PosixUser: output.PosixUser != null ? de_PosixUser(output.PosixUser, context) : undefined,
2676
- RootDirectory: output.RootDirectory != null ? de_RootDirectory(output.RootDirectory, context) : undefined,
2677
- Tags: output.Tags != null ? de_Tags(output.Tags, context) : undefined,
2678
- };
2679
- };
2680
- const de_AccessPointDescriptions = (output, context) => {
2681
- const retVal = (output || [])
2682
- .filter((e) => e != null)
2683
- .map((entry) => {
2684
- if (entry === null) {
2685
- return null;
2686
- }
2687
- return de_AccessPointDescription(entry, context);
2688
- });
2689
- return retVal;
2690
- };
2691
- const de_BackupPolicy = (output, context) => {
2692
- return {
2693
- Status: __expectString(output.Status),
2694
- };
2695
- };
2696
- const de_CreationInfo = (output, context) => {
2697
- return {
2698
- OwnerGid: __expectLong(output.OwnerGid),
2699
- OwnerUid: __expectLong(output.OwnerUid),
2700
- Permissions: __expectString(output.Permissions),
2701
- };
2702
- };
2703
2392
  const de_Destination = (output, context) => {
2704
- return {
2705
- FileSystemId: __expectString(output.FileSystemId),
2706
- LastReplicatedTimestamp: output.LastReplicatedTimestamp != null
2707
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.LastReplicatedTimestamp)))
2708
- : undefined,
2709
- Region: __expectString(output.Region),
2710
- Status: __expectString(output.Status),
2711
- };
2393
+ return take(output, {
2394
+ FileSystemId: __expectString,
2395
+ LastReplicatedTimestamp: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2396
+ Region: __expectString,
2397
+ Status: __expectString,
2398
+ });
2712
2399
  };
2713
2400
  const de_Destinations = (output, context) => {
2714
2401
  const retVal = (output || [])
2715
2402
  .filter((e) => e != null)
2716
2403
  .map((entry) => {
2717
- if (entry === null) {
2718
- return null;
2719
- }
2720
2404
  return de_Destination(entry, context);
2721
2405
  });
2722
2406
  return retVal;
2723
2407
  };
2724
2408
  const de_FileSystemDescription = (output, context) => {
2725
- return {
2726
- AvailabilityZoneId: __expectString(output.AvailabilityZoneId),
2727
- AvailabilityZoneName: __expectString(output.AvailabilityZoneName),
2728
- CreationTime: output.CreationTime != null
2729
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationTime)))
2730
- : undefined,
2731
- CreationToken: __expectString(output.CreationToken),
2732
- Encrypted: __expectBoolean(output.Encrypted),
2733
- FileSystemArn: __expectString(output.FileSystemArn),
2734
- FileSystemId: __expectString(output.FileSystemId),
2735
- KmsKeyId: __expectString(output.KmsKeyId),
2736
- LifeCycleState: __expectString(output.LifeCycleState),
2737
- Name: __expectString(output.Name),
2738
- NumberOfMountTargets: __expectInt32(output.NumberOfMountTargets),
2739
- OwnerId: __expectString(output.OwnerId),
2740
- PerformanceMode: __expectString(output.PerformanceMode),
2741
- ProvisionedThroughputInMibps: __limitedParseDouble(output.ProvisionedThroughputInMibps),
2742
- SizeInBytes: output.SizeInBytes != null ? de_FileSystemSize(output.SizeInBytes, context) : undefined,
2743
- Tags: output.Tags != null ? de_Tags(output.Tags, context) : undefined,
2744
- ThroughputMode: __expectString(output.ThroughputMode),
2745
- };
2409
+ return take(output, {
2410
+ AvailabilityZoneId: __expectString,
2411
+ AvailabilityZoneName: __expectString,
2412
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2413
+ CreationToken: __expectString,
2414
+ Encrypted: __expectBoolean,
2415
+ FileSystemArn: __expectString,
2416
+ FileSystemId: __expectString,
2417
+ KmsKeyId: __expectString,
2418
+ LifeCycleState: __expectString,
2419
+ Name: __expectString,
2420
+ NumberOfMountTargets: __expectInt32,
2421
+ OwnerId: __expectString,
2422
+ PerformanceMode: __expectString,
2423
+ ProvisionedThroughputInMibps: __limitedParseDouble,
2424
+ SizeInBytes: (_) => de_FileSystemSize(_, context),
2425
+ Tags: _json,
2426
+ ThroughputMode: __expectString,
2427
+ });
2746
2428
  };
2747
2429
  const de_FileSystemDescriptions = (output, context) => {
2748
2430
  const retVal = (output || [])
2749
2431
  .filter((e) => e != null)
2750
2432
  .map((entry) => {
2751
- if (entry === null) {
2752
- return null;
2753
- }
2754
2433
  return de_FileSystemDescription(entry, context);
2755
2434
  });
2756
2435
  return retVal;
2757
2436
  };
2758
2437
  const de_FileSystemSize = (output, context) => {
2759
- return {
2760
- Timestamp: output.Timestamp != null ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.Timestamp))) : undefined,
2761
- Value: __expectLong(output.Value),
2762
- ValueInIA: __expectLong(output.ValueInIA),
2763
- ValueInStandard: __expectLong(output.ValueInStandard),
2764
- };
2765
- };
2766
- const de_LifecyclePolicies = (output, context) => {
2767
- const retVal = (output || [])
2768
- .filter((e) => e != null)
2769
- .map((entry) => {
2770
- if (entry === null) {
2771
- return null;
2772
- }
2773
- return de_LifecyclePolicy(entry, context);
2774
- });
2775
- return retVal;
2776
- };
2777
- const de_LifecyclePolicy = (output, context) => {
2778
- return {
2779
- TransitionToIA: __expectString(output.TransitionToIA),
2780
- TransitionToPrimaryStorageClass: __expectString(output.TransitionToPrimaryStorageClass),
2781
- };
2782
- };
2783
- const de_MountTargetDescription = (output, context) => {
2784
- return {
2785
- AvailabilityZoneId: __expectString(output.AvailabilityZoneId),
2786
- AvailabilityZoneName: __expectString(output.AvailabilityZoneName),
2787
- FileSystemId: __expectString(output.FileSystemId),
2788
- IpAddress: __expectString(output.IpAddress),
2789
- LifeCycleState: __expectString(output.LifeCycleState),
2790
- MountTargetId: __expectString(output.MountTargetId),
2791
- NetworkInterfaceId: __expectString(output.NetworkInterfaceId),
2792
- OwnerId: __expectString(output.OwnerId),
2793
- SubnetId: __expectString(output.SubnetId),
2794
- VpcId: __expectString(output.VpcId),
2795
- };
2796
- };
2797
- const de_MountTargetDescriptions = (output, context) => {
2798
- const retVal = (output || [])
2799
- .filter((e) => e != null)
2800
- .map((entry) => {
2801
- if (entry === null) {
2802
- return null;
2803
- }
2804
- return de_MountTargetDescription(entry, context);
2438
+ return take(output, {
2439
+ Timestamp: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2440
+ Value: __expectLong,
2441
+ ValueInIA: __expectLong,
2442
+ ValueInStandard: __expectLong,
2805
2443
  });
2806
- return retVal;
2807
- };
2808
- const de_PosixUser = (output, context) => {
2809
- return {
2810
- Gid: __expectLong(output.Gid),
2811
- SecondaryGids: output.SecondaryGids != null ? de_SecondaryGids(output.SecondaryGids, context) : undefined,
2812
- Uid: __expectLong(output.Uid),
2813
- };
2814
2444
  };
2815
2445
  const de_ReplicationConfigurationDescription = (output, context) => {
2816
- return {
2817
- CreationTime: output.CreationTime != null
2818
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationTime)))
2819
- : undefined,
2820
- Destinations: output.Destinations != null ? de_Destinations(output.Destinations, context) : undefined,
2821
- OriginalSourceFileSystemArn: __expectString(output.OriginalSourceFileSystemArn),
2822
- SourceFileSystemArn: __expectString(output.SourceFileSystemArn),
2823
- SourceFileSystemId: __expectString(output.SourceFileSystemId),
2824
- SourceFileSystemRegion: __expectString(output.SourceFileSystemRegion),
2825
- };
2446
+ return take(output, {
2447
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2448
+ Destinations: (_) => de_Destinations(_, context),
2449
+ OriginalSourceFileSystemArn: __expectString,
2450
+ SourceFileSystemArn: __expectString,
2451
+ SourceFileSystemId: __expectString,
2452
+ SourceFileSystemRegion: __expectString,
2453
+ });
2826
2454
  };
2827
2455
  const de_ReplicationConfigurationDescriptions = (output, context) => {
2828
2456
  const retVal = (output || [])
2829
2457
  .filter((e) => e != null)
2830
2458
  .map((entry) => {
2831
- if (entry === null) {
2832
- return null;
2833
- }
2834
2459
  return de_ReplicationConfigurationDescription(entry, context);
2835
2460
  });
2836
2461
  return retVal;
2837
2462
  };
2838
- const de_ResourceIdPreference = (output, context) => {
2839
- return {
2840
- ResourceIdType: __expectString(output.ResourceIdType),
2841
- Resources: output.Resources != null ? de_Resources(output.Resources, context) : undefined,
2842
- };
2843
- };
2844
- const de_Resources = (output, context) => {
2845
- const retVal = (output || [])
2846
- .filter((e) => e != null)
2847
- .map((entry) => {
2848
- if (entry === null) {
2849
- return null;
2850
- }
2851
- return __expectString(entry);
2852
- });
2853
- return retVal;
2854
- };
2855
- const de_RootDirectory = (output, context) => {
2856
- return {
2857
- CreationInfo: output.CreationInfo != null ? de_CreationInfo(output.CreationInfo, context) : undefined,
2858
- Path: __expectString(output.Path),
2859
- };
2860
- };
2861
- const de_SecondaryGids = (output, context) => {
2862
- const retVal = (output || [])
2863
- .filter((e) => e != null)
2864
- .map((entry) => {
2865
- if (entry === null) {
2866
- return null;
2867
- }
2868
- return __expectLong(entry);
2869
- });
2870
- return retVal;
2871
- };
2872
- const de_SecurityGroups = (output, context) => {
2873
- const retVal = (output || [])
2874
- .filter((e) => e != null)
2875
- .map((entry) => {
2876
- if (entry === null) {
2877
- return null;
2878
- }
2879
- return __expectString(entry);
2880
- });
2881
- return retVal;
2882
- };
2883
- const de_Tag = (output, context) => {
2884
- return {
2885
- Key: __expectString(output.Key),
2886
- Value: __expectString(output.Value),
2887
- };
2888
- };
2889
- const de_Tags = (output, context) => {
2890
- const retVal = (output || [])
2891
- .filter((e) => e != null)
2892
- .map((entry) => {
2893
- if (entry === null) {
2894
- return null;
2895
- }
2896
- return de_Tag(entry, context);
2897
- });
2898
- return retVal;
2899
- };
2900
2463
  const deserializeMetadata = (output) => ({
2901
2464
  httpStatusCode: output.statusCode,
2902
2465
  requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],