@aws-sdk/client-mgn 3.112.0 → 3.117.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/CHANGELOG.md +11 -0
  2. package/dist-cjs/Mgn.js +60 -0
  3. package/dist-cjs/commands/CreateLaunchConfigurationTemplateCommand.js +36 -0
  4. package/dist-cjs/commands/DeleteLaunchConfigurationTemplateCommand.js +36 -0
  5. package/dist-cjs/commands/DescribeLaunchConfigurationTemplatesCommand.js +36 -0
  6. package/dist-cjs/commands/UpdateLaunchConfigurationTemplateCommand.js +36 -0
  7. package/dist-cjs/commands/index.js +4 -0
  8. package/dist-cjs/models/models_0.js +105 -3
  9. package/dist-cjs/pagination/DescribeLaunchConfigurationTemplatesPaginator.js +36 -0
  10. package/dist-cjs/pagination/index.js +1 -0
  11. package/dist-cjs/protocols/Aws_restJson1.js +531 -2
  12. package/dist-es/Mgn.js +60 -0
  13. package/dist-es/commands/CreateLaunchConfigurationTemplateCommand.js +39 -0
  14. package/dist-es/commands/DeleteLaunchConfigurationTemplateCommand.js +39 -0
  15. package/dist-es/commands/DescribeLaunchConfigurationTemplatesCommand.js +39 -0
  16. package/dist-es/commands/UpdateLaunchConfigurationTemplateCommand.js +39 -0
  17. package/dist-es/commands/index.js +4 -0
  18. package/dist-es/models/models_0.js +73 -0
  19. package/dist-es/pagination/DescribeLaunchConfigurationTemplatesPaginator.js +75 -0
  20. package/dist-es/pagination/index.js +1 -0
  21. package/dist-es/protocols/Aws_restJson1.js +604 -2
  22. package/dist-types/Mgn.d.ts +28 -0
  23. package/dist-types/MgnClient.d.ts +6 -2
  24. package/dist-types/commands/CreateLaunchConfigurationTemplateCommand.d.ts +35 -0
  25. package/dist-types/commands/DeleteLaunchConfigurationTemplateCommand.d.ts +35 -0
  26. package/dist-types/commands/DescribeLaunchConfigurationTemplatesCommand.d.ts +35 -0
  27. package/dist-types/commands/UpdateLaunchConfigurationTemplateCommand.d.ts +35 -0
  28. package/dist-types/commands/index.d.ts +4 -0
  29. package/dist-types/models/models_0.d.ts +307 -1
  30. package/dist-types/pagination/DescribeLaunchConfigurationTemplatesPaginator.d.ts +4 -0
  31. package/dist-types/pagination/index.d.ts +1 -0
  32. package/dist-types/protocols/Aws_restJson1.d.ts +12 -0
  33. package/dist-types/ts3.4/Mgn.d.ts +20 -0
  34. package/dist-types/ts3.4/MgnClient.d.ts +6 -2
  35. package/dist-types/ts3.4/commands/CreateLaunchConfigurationTemplateCommand.d.ts +17 -0
  36. package/dist-types/ts3.4/commands/DeleteLaunchConfigurationTemplateCommand.d.ts +17 -0
  37. package/dist-types/ts3.4/commands/DescribeLaunchConfigurationTemplatesCommand.d.ts +17 -0
  38. package/dist-types/ts3.4/commands/UpdateLaunchConfigurationTemplateCommand.d.ts +17 -0
  39. package/dist-types/ts3.4/commands/index.d.ts +4 -0
  40. package/dist-types/ts3.4/models/models_0.d.ts +185 -1
  41. package/dist-types/ts3.4/pagination/DescribeLaunchConfigurationTemplatesPaginator.d.ts +4 -0
  42. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  43. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +12 -0
  44. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deserializeAws_restJson1StartReplicationCommand = exports.deserializeAws_restJson1StartCutoverCommand = exports.deserializeAws_restJson1RetryDataReplicationCommand = exports.deserializeAws_restJson1MarkAsArchivedCommand = exports.deserializeAws_restJson1ListTagsForResourceCommand = exports.deserializeAws_restJson1InitializeServiceCommand = exports.deserializeAws_restJson1GetReplicationConfigurationCommand = exports.deserializeAws_restJson1GetLaunchConfigurationCommand = exports.deserializeAws_restJson1FinalizeCutoverCommand = exports.deserializeAws_restJson1DisconnectFromServiceCommand = exports.deserializeAws_restJson1DescribeVcenterClientsCommand = exports.deserializeAws_restJson1DescribeSourceServersCommand = exports.deserializeAws_restJson1DescribeReplicationConfigurationTemplatesCommand = exports.deserializeAws_restJson1DescribeJobsCommand = exports.deserializeAws_restJson1DescribeJobLogItemsCommand = exports.deserializeAws_restJson1DeleteVcenterClientCommand = exports.deserializeAws_restJson1DeleteSourceServerCommand = exports.deserializeAws_restJson1DeleteReplicationConfigurationTemplateCommand = exports.deserializeAws_restJson1DeleteJobCommand = exports.deserializeAws_restJson1CreateReplicationConfigurationTemplateCommand = exports.deserializeAws_restJson1ChangeServerLifeCycleStateCommand = exports.serializeAws_restJson1UpdateSourceServerReplicationTypeCommand = exports.serializeAws_restJson1UpdateReplicationConfigurationTemplateCommand = exports.serializeAws_restJson1UpdateReplicationConfigurationCommand = exports.serializeAws_restJson1UpdateLaunchConfigurationCommand = exports.serializeAws_restJson1UntagResourceCommand = exports.serializeAws_restJson1TerminateTargetInstancesCommand = exports.serializeAws_restJson1TagResourceCommand = exports.serializeAws_restJson1StartTestCommand = exports.serializeAws_restJson1StartReplicationCommand = exports.serializeAws_restJson1StartCutoverCommand = exports.serializeAws_restJson1RetryDataReplicationCommand = exports.serializeAws_restJson1MarkAsArchivedCommand = exports.serializeAws_restJson1ListTagsForResourceCommand = exports.serializeAws_restJson1InitializeServiceCommand = exports.serializeAws_restJson1GetReplicationConfigurationCommand = exports.serializeAws_restJson1GetLaunchConfigurationCommand = exports.serializeAws_restJson1FinalizeCutoverCommand = exports.serializeAws_restJson1DisconnectFromServiceCommand = exports.serializeAws_restJson1DescribeVcenterClientsCommand = exports.serializeAws_restJson1DescribeSourceServersCommand = exports.serializeAws_restJson1DescribeReplicationConfigurationTemplatesCommand = exports.serializeAws_restJson1DescribeJobsCommand = exports.serializeAws_restJson1DescribeJobLogItemsCommand = exports.serializeAws_restJson1DeleteVcenterClientCommand = exports.serializeAws_restJson1DeleteSourceServerCommand = exports.serializeAws_restJson1DeleteReplicationConfigurationTemplateCommand = exports.serializeAws_restJson1DeleteJobCommand = exports.serializeAws_restJson1CreateReplicationConfigurationTemplateCommand = exports.serializeAws_restJson1ChangeServerLifeCycleStateCommand = void 0;
4
- exports.deserializeAws_restJson1UpdateSourceServerReplicationTypeCommand = exports.deserializeAws_restJson1UpdateReplicationConfigurationTemplateCommand = exports.deserializeAws_restJson1UpdateReplicationConfigurationCommand = exports.deserializeAws_restJson1UpdateLaunchConfigurationCommand = exports.deserializeAws_restJson1UntagResourceCommand = exports.deserializeAws_restJson1TerminateTargetInstancesCommand = exports.deserializeAws_restJson1TagResourceCommand = exports.deserializeAws_restJson1StartTestCommand = void 0;
3
+ exports.deserializeAws_restJson1GetLaunchConfigurationCommand = exports.deserializeAws_restJson1FinalizeCutoverCommand = exports.deserializeAws_restJson1DisconnectFromServiceCommand = exports.deserializeAws_restJson1DescribeVcenterClientsCommand = exports.deserializeAws_restJson1DescribeSourceServersCommand = exports.deserializeAws_restJson1DescribeReplicationConfigurationTemplatesCommand = exports.deserializeAws_restJson1DescribeLaunchConfigurationTemplatesCommand = exports.deserializeAws_restJson1DescribeJobsCommand = exports.deserializeAws_restJson1DescribeJobLogItemsCommand = exports.deserializeAws_restJson1DeleteVcenterClientCommand = exports.deserializeAws_restJson1DeleteSourceServerCommand = exports.deserializeAws_restJson1DeleteReplicationConfigurationTemplateCommand = exports.deserializeAws_restJson1DeleteLaunchConfigurationTemplateCommand = exports.deserializeAws_restJson1DeleteJobCommand = exports.deserializeAws_restJson1CreateReplicationConfigurationTemplateCommand = exports.deserializeAws_restJson1CreateLaunchConfigurationTemplateCommand = exports.deserializeAws_restJson1ChangeServerLifeCycleStateCommand = exports.serializeAws_restJson1UpdateSourceServerReplicationTypeCommand = exports.serializeAws_restJson1UpdateReplicationConfigurationTemplateCommand = exports.serializeAws_restJson1UpdateReplicationConfigurationCommand = exports.serializeAws_restJson1UpdateLaunchConfigurationTemplateCommand = exports.serializeAws_restJson1UpdateLaunchConfigurationCommand = exports.serializeAws_restJson1UntagResourceCommand = exports.serializeAws_restJson1TerminateTargetInstancesCommand = exports.serializeAws_restJson1TagResourceCommand = exports.serializeAws_restJson1StartTestCommand = exports.serializeAws_restJson1StartReplicationCommand = exports.serializeAws_restJson1StartCutoverCommand = exports.serializeAws_restJson1RetryDataReplicationCommand = exports.serializeAws_restJson1MarkAsArchivedCommand = exports.serializeAws_restJson1ListTagsForResourceCommand = exports.serializeAws_restJson1InitializeServiceCommand = exports.serializeAws_restJson1GetReplicationConfigurationCommand = exports.serializeAws_restJson1GetLaunchConfigurationCommand = exports.serializeAws_restJson1FinalizeCutoverCommand = exports.serializeAws_restJson1DisconnectFromServiceCommand = exports.serializeAws_restJson1DescribeVcenterClientsCommand = exports.serializeAws_restJson1DescribeSourceServersCommand = exports.serializeAws_restJson1DescribeReplicationConfigurationTemplatesCommand = exports.serializeAws_restJson1DescribeLaunchConfigurationTemplatesCommand = exports.serializeAws_restJson1DescribeJobsCommand = exports.serializeAws_restJson1DescribeJobLogItemsCommand = exports.serializeAws_restJson1DeleteVcenterClientCommand = exports.serializeAws_restJson1DeleteSourceServerCommand = exports.serializeAws_restJson1DeleteReplicationConfigurationTemplateCommand = exports.serializeAws_restJson1DeleteLaunchConfigurationTemplateCommand = exports.serializeAws_restJson1DeleteJobCommand = exports.serializeAws_restJson1CreateReplicationConfigurationTemplateCommand = exports.serializeAws_restJson1CreateLaunchConfigurationTemplateCommand = exports.serializeAws_restJson1ChangeServerLifeCycleStateCommand = void 0;
4
+ exports.deserializeAws_restJson1UpdateSourceServerReplicationTypeCommand = exports.deserializeAws_restJson1UpdateReplicationConfigurationTemplateCommand = exports.deserializeAws_restJson1UpdateReplicationConfigurationCommand = exports.deserializeAws_restJson1UpdateLaunchConfigurationTemplateCommand = exports.deserializeAws_restJson1UpdateLaunchConfigurationCommand = exports.deserializeAws_restJson1UntagResourceCommand = exports.deserializeAws_restJson1TerminateTargetInstancesCommand = exports.deserializeAws_restJson1TagResourceCommand = exports.deserializeAws_restJson1StartTestCommand = exports.deserializeAws_restJson1StartReplicationCommand = exports.deserializeAws_restJson1StartCutoverCommand = exports.deserializeAws_restJson1RetryDataReplicationCommand = exports.deserializeAws_restJson1MarkAsArchivedCommand = exports.deserializeAws_restJson1ListTagsForResourceCommand = exports.deserializeAws_restJson1InitializeServiceCommand = exports.deserializeAws_restJson1GetReplicationConfigurationCommand = void 0;
5
5
  const protocol_http_1 = require("@aws-sdk/protocol-http");
6
6
  const smithy_client_1 = require("@aws-sdk/smithy-client");
7
7
  const MgnServiceException_1 = require("../models/MgnServiceException");
@@ -32,6 +32,32 @@ const serializeAws_restJson1ChangeServerLifeCycleStateCommand = async (input, co
32
32
  });
33
33
  };
34
34
  exports.serializeAws_restJson1ChangeServerLifeCycleStateCommand = serializeAws_restJson1ChangeServerLifeCycleStateCommand;
35
+ const serializeAws_restJson1CreateLaunchConfigurationTemplateCommand = async (input, context) => {
36
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
37
+ const headers = {
38
+ "content-type": "application/json",
39
+ };
40
+ const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}` + "/CreateLaunchConfigurationTemplate";
41
+ let body;
42
+ body = JSON.stringify({
43
+ ...(input.postLaunchActions !== undefined &&
44
+ input.postLaunchActions !== null && {
45
+ postLaunchActions: serializeAws_restJson1PostLaunchActions(input.postLaunchActions, context),
46
+ }),
47
+ ...(input.tags !== undefined &&
48
+ input.tags !== null && { tags: serializeAws_restJson1TagsMap(input.tags, context) }),
49
+ });
50
+ return new protocol_http_1.HttpRequest({
51
+ protocol,
52
+ hostname,
53
+ port,
54
+ method: "POST",
55
+ headers,
56
+ path: resolvedPath,
57
+ body,
58
+ });
59
+ };
60
+ exports.serializeAws_restJson1CreateLaunchConfigurationTemplateCommand = serializeAws_restJson1CreateLaunchConfigurationTemplateCommand;
35
61
  const serializeAws_restJson1CreateReplicationConfigurationTemplateCommand = async (input, context) => {
36
62
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
37
63
  const headers = {
@@ -108,6 +134,30 @@ const serializeAws_restJson1DeleteJobCommand = async (input, context) => {
108
134
  });
109
135
  };
110
136
  exports.serializeAws_restJson1DeleteJobCommand = serializeAws_restJson1DeleteJobCommand;
137
+ const serializeAws_restJson1DeleteLaunchConfigurationTemplateCommand = async (input, context) => {
138
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
139
+ const headers = {
140
+ "content-type": "application/json",
141
+ };
142
+ const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}` + "/DeleteLaunchConfigurationTemplate";
143
+ let body;
144
+ body = JSON.stringify({
145
+ ...(input.launchConfigurationTemplateID !== undefined &&
146
+ input.launchConfigurationTemplateID !== null && {
147
+ launchConfigurationTemplateID: input.launchConfigurationTemplateID,
148
+ }),
149
+ });
150
+ return new protocol_http_1.HttpRequest({
151
+ protocol,
152
+ hostname,
153
+ port,
154
+ method: "POST",
155
+ headers,
156
+ path: resolvedPath,
157
+ body,
158
+ });
159
+ };
160
+ exports.serializeAws_restJson1DeleteLaunchConfigurationTemplateCommand = serializeAws_restJson1DeleteLaunchConfigurationTemplateCommand;
111
161
  const serializeAws_restJson1DeleteReplicationConfigurationTemplateCommand = async (input, context) => {
112
162
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
113
163
  const headers = {
@@ -223,6 +273,32 @@ const serializeAws_restJson1DescribeJobsCommand = async (input, context) => {
223
273
  });
224
274
  };
225
275
  exports.serializeAws_restJson1DescribeJobsCommand = serializeAws_restJson1DescribeJobsCommand;
276
+ const serializeAws_restJson1DescribeLaunchConfigurationTemplatesCommand = async (input, context) => {
277
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
278
+ const headers = {
279
+ "content-type": "application/json",
280
+ };
281
+ const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeLaunchConfigurationTemplates";
282
+ let body;
283
+ body = JSON.stringify({
284
+ ...(input.launchConfigurationTemplateIDs !== undefined &&
285
+ input.launchConfigurationTemplateIDs !== null && {
286
+ launchConfigurationTemplateIDs: serializeAws_restJson1LaunchConfigurationTemplateIDs(input.launchConfigurationTemplateIDs, context),
287
+ }),
288
+ ...(input.maxResults !== undefined && input.maxResults !== null && { maxResults: input.maxResults }),
289
+ ...(input.nextToken !== undefined && input.nextToken !== null && { nextToken: input.nextToken }),
290
+ });
291
+ return new protocol_http_1.HttpRequest({
292
+ protocol,
293
+ hostname,
294
+ port,
295
+ method: "POST",
296
+ headers,
297
+ path: resolvedPath,
298
+ body,
299
+ });
300
+ };
301
+ exports.serializeAws_restJson1DescribeLaunchConfigurationTemplatesCommand = serializeAws_restJson1DescribeLaunchConfigurationTemplatesCommand;
226
302
  const serializeAws_restJson1DescribeReplicationConfigurationTemplatesCommand = async (input, context) => {
227
303
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
228
304
  const headers = {
@@ -652,6 +728,10 @@ const serializeAws_restJson1UpdateLaunchConfigurationCommand = async (input, con
652
728
  ...(input.licensing !== undefined &&
653
729
  input.licensing !== null && { licensing: serializeAws_restJson1Licensing(input.licensing, context) }),
654
730
  ...(input.name !== undefined && input.name !== null && { name: input.name }),
731
+ ...(input.postLaunchActions !== undefined &&
732
+ input.postLaunchActions !== null && {
733
+ postLaunchActions: serializeAws_restJson1PostLaunchActions(input.postLaunchActions, context),
734
+ }),
655
735
  ...(input.sourceServerID !== undefined &&
656
736
  input.sourceServerID !== null && { sourceServerID: input.sourceServerID }),
657
737
  ...(input.targetInstanceTypeRightSizingMethod !== undefined &&
@@ -670,6 +750,34 @@ const serializeAws_restJson1UpdateLaunchConfigurationCommand = async (input, con
670
750
  });
671
751
  };
672
752
  exports.serializeAws_restJson1UpdateLaunchConfigurationCommand = serializeAws_restJson1UpdateLaunchConfigurationCommand;
753
+ const serializeAws_restJson1UpdateLaunchConfigurationTemplateCommand = async (input, context) => {
754
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
755
+ const headers = {
756
+ "content-type": "application/json",
757
+ };
758
+ const resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}` + "/UpdateLaunchConfigurationTemplate";
759
+ let body;
760
+ body = JSON.stringify({
761
+ ...(input.launchConfigurationTemplateID !== undefined &&
762
+ input.launchConfigurationTemplateID !== null && {
763
+ launchConfigurationTemplateID: input.launchConfigurationTemplateID,
764
+ }),
765
+ ...(input.postLaunchActions !== undefined &&
766
+ input.postLaunchActions !== null && {
767
+ postLaunchActions: serializeAws_restJson1PostLaunchActions(input.postLaunchActions, context),
768
+ }),
769
+ });
770
+ return new protocol_http_1.HttpRequest({
771
+ protocol,
772
+ hostname,
773
+ port,
774
+ method: "POST",
775
+ headers,
776
+ path: resolvedPath,
777
+ body,
778
+ });
779
+ };
780
+ exports.serializeAws_restJson1UpdateLaunchConfigurationTemplateCommand = serializeAws_restJson1UpdateLaunchConfigurationTemplateCommand;
673
781
  const serializeAws_restJson1UpdateReplicationConfigurationCommand = async (input, context) => {
674
782
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
675
783
  const headers = {
@@ -894,6 +1002,61 @@ const deserializeAws_restJson1ChangeServerLifeCycleStateCommandError = async (ou
894
1002
  throw (0, smithy_client_1.decorateServiceException)(response, parsedBody);
895
1003
  }
896
1004
  };
1005
+ const deserializeAws_restJson1CreateLaunchConfigurationTemplateCommand = async (output, context) => {
1006
+ if (output.statusCode !== 201 && output.statusCode >= 300) {
1007
+ return deserializeAws_restJson1CreateLaunchConfigurationTemplateCommandError(output, context);
1008
+ }
1009
+ const contents = {
1010
+ $metadata: deserializeMetadata(output),
1011
+ arn: undefined,
1012
+ launchConfigurationTemplateID: undefined,
1013
+ postLaunchActions: undefined,
1014
+ tags: undefined,
1015
+ };
1016
+ const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body");
1017
+ if (data.arn !== undefined && data.arn !== null) {
1018
+ contents.arn = (0, smithy_client_1.expectString)(data.arn);
1019
+ }
1020
+ if (data.launchConfigurationTemplateID !== undefined && data.launchConfigurationTemplateID !== null) {
1021
+ contents.launchConfigurationTemplateID = (0, smithy_client_1.expectString)(data.launchConfigurationTemplateID);
1022
+ }
1023
+ if (data.postLaunchActions !== undefined && data.postLaunchActions !== null) {
1024
+ contents.postLaunchActions = deserializeAws_restJson1PostLaunchActions(data.postLaunchActions, context);
1025
+ }
1026
+ if (data.tags !== undefined && data.tags !== null) {
1027
+ contents.tags = deserializeAws_restJson1TagsMap(data.tags, context);
1028
+ }
1029
+ return Promise.resolve(contents);
1030
+ };
1031
+ exports.deserializeAws_restJson1CreateLaunchConfigurationTemplateCommand = deserializeAws_restJson1CreateLaunchConfigurationTemplateCommand;
1032
+ const deserializeAws_restJson1CreateLaunchConfigurationTemplateCommandError = async (output, context) => {
1033
+ const parsedOutput = {
1034
+ ...output,
1035
+ body: await parseBody(output.body, context),
1036
+ };
1037
+ let response;
1038
+ let errorCode = "UnknownError";
1039
+ errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1040
+ switch (errorCode) {
1041
+ case "AccessDeniedException":
1042
+ case "com.amazonaws.mgn#AccessDeniedException":
1043
+ throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context);
1044
+ case "UninitializedAccountException":
1045
+ case "com.amazonaws.mgn#UninitializedAccountException":
1046
+ throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context);
1047
+ case "ValidationException":
1048
+ case "com.amazonaws.mgn#ValidationException":
1049
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
1050
+ default:
1051
+ const parsedBody = parsedOutput.body;
1052
+ response = new MgnServiceException_1.MgnServiceException({
1053
+ name: parsedBody.code || parsedBody.Code || errorCode,
1054
+ $fault: "client",
1055
+ $metadata: deserializeMetadata(output),
1056
+ });
1057
+ throw (0, smithy_client_1.decorateServiceException)(response, parsedBody);
1058
+ }
1059
+ };
897
1060
  const deserializeAws_restJson1CreateReplicationConfigurationTemplateCommand = async (output, context) => {
898
1061
  if (output.statusCode !== 201 && output.statusCode >= 300) {
899
1062
  return deserializeAws_restJson1CreateReplicationConfigurationTemplateCommandError(output, context);
@@ -1032,6 +1195,45 @@ const deserializeAws_restJson1DeleteJobCommandError = async (output, context) =>
1032
1195
  throw (0, smithy_client_1.decorateServiceException)(response, parsedBody);
1033
1196
  }
1034
1197
  };
1198
+ const deserializeAws_restJson1DeleteLaunchConfigurationTemplateCommand = async (output, context) => {
1199
+ if (output.statusCode !== 204 && output.statusCode >= 300) {
1200
+ return deserializeAws_restJson1DeleteLaunchConfigurationTemplateCommandError(output, context);
1201
+ }
1202
+ const contents = {
1203
+ $metadata: deserializeMetadata(output),
1204
+ };
1205
+ await collectBody(output.body, context);
1206
+ return Promise.resolve(contents);
1207
+ };
1208
+ exports.deserializeAws_restJson1DeleteLaunchConfigurationTemplateCommand = deserializeAws_restJson1DeleteLaunchConfigurationTemplateCommand;
1209
+ const deserializeAws_restJson1DeleteLaunchConfigurationTemplateCommandError = async (output, context) => {
1210
+ const parsedOutput = {
1211
+ ...output,
1212
+ body: await parseBody(output.body, context),
1213
+ };
1214
+ let response;
1215
+ let errorCode = "UnknownError";
1216
+ errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1217
+ switch (errorCode) {
1218
+ case "ConflictException":
1219
+ case "com.amazonaws.mgn#ConflictException":
1220
+ throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context);
1221
+ case "ResourceNotFoundException":
1222
+ case "com.amazonaws.mgn#ResourceNotFoundException":
1223
+ throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context);
1224
+ case "UninitializedAccountException":
1225
+ case "com.amazonaws.mgn#UninitializedAccountException":
1226
+ throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context);
1227
+ default:
1228
+ const parsedBody = parsedOutput.body;
1229
+ response = new MgnServiceException_1.MgnServiceException({
1230
+ name: parsedBody.code || parsedBody.Code || errorCode,
1231
+ $fault: "client",
1232
+ $metadata: deserializeMetadata(output),
1233
+ });
1234
+ throw (0, smithy_client_1.decorateServiceException)(response, parsedBody);
1235
+ }
1236
+ };
1035
1237
  const deserializeAws_restJson1DeleteReplicationConfigurationTemplateCommand = async (output, context) => {
1036
1238
  if (output.statusCode !== 204 && output.statusCode >= 300) {
1037
1239
  return deserializeAws_restJson1DeleteReplicationConfigurationTemplateCommandError(output, context);
@@ -1237,6 +1439,53 @@ const deserializeAws_restJson1DescribeJobsCommandError = async (output, context)
1237
1439
  throw (0, smithy_client_1.decorateServiceException)(response, parsedBody);
1238
1440
  }
1239
1441
  };
1442
+ const deserializeAws_restJson1DescribeLaunchConfigurationTemplatesCommand = async (output, context) => {
1443
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1444
+ return deserializeAws_restJson1DescribeLaunchConfigurationTemplatesCommandError(output, context);
1445
+ }
1446
+ const contents = {
1447
+ $metadata: deserializeMetadata(output),
1448
+ items: undefined,
1449
+ nextToken: undefined,
1450
+ };
1451
+ const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body");
1452
+ if (data.items !== undefined && data.items !== null) {
1453
+ contents.items = deserializeAws_restJson1LaunchConfigurationTemplates(data.items, context);
1454
+ }
1455
+ if (data.nextToken !== undefined && data.nextToken !== null) {
1456
+ contents.nextToken = (0, smithy_client_1.expectString)(data.nextToken);
1457
+ }
1458
+ return Promise.resolve(contents);
1459
+ };
1460
+ exports.deserializeAws_restJson1DescribeLaunchConfigurationTemplatesCommand = deserializeAws_restJson1DescribeLaunchConfigurationTemplatesCommand;
1461
+ const deserializeAws_restJson1DescribeLaunchConfigurationTemplatesCommandError = async (output, context) => {
1462
+ const parsedOutput = {
1463
+ ...output,
1464
+ body: await parseBody(output.body, context),
1465
+ };
1466
+ let response;
1467
+ let errorCode = "UnknownError";
1468
+ errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1469
+ switch (errorCode) {
1470
+ case "ResourceNotFoundException":
1471
+ case "com.amazonaws.mgn#ResourceNotFoundException":
1472
+ throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context);
1473
+ case "UninitializedAccountException":
1474
+ case "com.amazonaws.mgn#UninitializedAccountException":
1475
+ throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context);
1476
+ case "ValidationException":
1477
+ case "com.amazonaws.mgn#ValidationException":
1478
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
1479
+ default:
1480
+ const parsedBody = parsedOutput.body;
1481
+ response = new MgnServiceException_1.MgnServiceException({
1482
+ name: parsedBody.code || parsedBody.Code || errorCode,
1483
+ $fault: "client",
1484
+ $metadata: deserializeMetadata(output),
1485
+ });
1486
+ throw (0, smithy_client_1.decorateServiceException)(response, parsedBody);
1487
+ }
1488
+ };
1240
1489
  const deserializeAws_restJson1DescribeReplicationConfigurationTemplatesCommand = async (output, context) => {
1241
1490
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1242
1491
  return deserializeAws_restJson1DescribeReplicationConfigurationTemplatesCommandError(output, context);
@@ -1549,6 +1798,7 @@ const deserializeAws_restJson1GetLaunchConfigurationCommand = async (output, con
1549
1798
  launchDisposition: undefined,
1550
1799
  licensing: undefined,
1551
1800
  name: undefined,
1801
+ postLaunchActions: undefined,
1552
1802
  sourceServerID: undefined,
1553
1803
  targetInstanceTypeRightSizingMethod: undefined,
1554
1804
  };
@@ -1574,6 +1824,9 @@ const deserializeAws_restJson1GetLaunchConfigurationCommand = async (output, con
1574
1824
  if (data.name !== undefined && data.name !== null) {
1575
1825
  contents.name = (0, smithy_client_1.expectString)(data.name);
1576
1826
  }
1827
+ if (data.postLaunchActions !== undefined && data.postLaunchActions !== null) {
1828
+ contents.postLaunchActions = deserializeAws_restJson1PostLaunchActions(data.postLaunchActions, context);
1829
+ }
1577
1830
  if (data.sourceServerID !== undefined && data.sourceServerID !== null) {
1578
1831
  contents.sourceServerID = (0, smithy_client_1.expectString)(data.sourceServerID);
1579
1832
  }
@@ -2264,6 +2517,7 @@ const deserializeAws_restJson1UpdateLaunchConfigurationCommand = async (output,
2264
2517
  launchDisposition: undefined,
2265
2518
  licensing: undefined,
2266
2519
  name: undefined,
2520
+ postLaunchActions: undefined,
2267
2521
  sourceServerID: undefined,
2268
2522
  targetInstanceTypeRightSizingMethod: undefined,
2269
2523
  };
@@ -2289,6 +2543,9 @@ const deserializeAws_restJson1UpdateLaunchConfigurationCommand = async (output,
2289
2543
  if (data.name !== undefined && data.name !== null) {
2290
2544
  contents.name = (0, smithy_client_1.expectString)(data.name);
2291
2545
  }
2546
+ if (data.postLaunchActions !== undefined && data.postLaunchActions !== null) {
2547
+ contents.postLaunchActions = deserializeAws_restJson1PostLaunchActions(data.postLaunchActions, context);
2548
+ }
2292
2549
  if (data.sourceServerID !== undefined && data.sourceServerID !== null) {
2293
2550
  contents.sourceServerID = (0, smithy_client_1.expectString)(data.sourceServerID);
2294
2551
  }
@@ -2329,6 +2586,64 @@ const deserializeAws_restJson1UpdateLaunchConfigurationCommandError = async (out
2329
2586
  throw (0, smithy_client_1.decorateServiceException)(response, parsedBody);
2330
2587
  }
2331
2588
  };
2589
+ const deserializeAws_restJson1UpdateLaunchConfigurationTemplateCommand = async (output, context) => {
2590
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
2591
+ return deserializeAws_restJson1UpdateLaunchConfigurationTemplateCommandError(output, context);
2592
+ }
2593
+ const contents = {
2594
+ $metadata: deserializeMetadata(output),
2595
+ arn: undefined,
2596
+ launchConfigurationTemplateID: undefined,
2597
+ postLaunchActions: undefined,
2598
+ tags: undefined,
2599
+ };
2600
+ const data = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.expectObject)(await parseBody(output.body, context)), "body");
2601
+ if (data.arn !== undefined && data.arn !== null) {
2602
+ contents.arn = (0, smithy_client_1.expectString)(data.arn);
2603
+ }
2604
+ if (data.launchConfigurationTemplateID !== undefined && data.launchConfigurationTemplateID !== null) {
2605
+ contents.launchConfigurationTemplateID = (0, smithy_client_1.expectString)(data.launchConfigurationTemplateID);
2606
+ }
2607
+ if (data.postLaunchActions !== undefined && data.postLaunchActions !== null) {
2608
+ contents.postLaunchActions = deserializeAws_restJson1PostLaunchActions(data.postLaunchActions, context);
2609
+ }
2610
+ if (data.tags !== undefined && data.tags !== null) {
2611
+ contents.tags = deserializeAws_restJson1TagsMap(data.tags, context);
2612
+ }
2613
+ return Promise.resolve(contents);
2614
+ };
2615
+ exports.deserializeAws_restJson1UpdateLaunchConfigurationTemplateCommand = deserializeAws_restJson1UpdateLaunchConfigurationTemplateCommand;
2616
+ const deserializeAws_restJson1UpdateLaunchConfigurationTemplateCommandError = async (output, context) => {
2617
+ const parsedOutput = {
2618
+ ...output,
2619
+ body: await parseBody(output.body, context),
2620
+ };
2621
+ let response;
2622
+ let errorCode = "UnknownError";
2623
+ errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
2624
+ switch (errorCode) {
2625
+ case "AccessDeniedException":
2626
+ case "com.amazonaws.mgn#AccessDeniedException":
2627
+ throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context);
2628
+ case "ResourceNotFoundException":
2629
+ case "com.amazonaws.mgn#ResourceNotFoundException":
2630
+ throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context);
2631
+ case "UninitializedAccountException":
2632
+ case "com.amazonaws.mgn#UninitializedAccountException":
2633
+ throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context);
2634
+ case "ValidationException":
2635
+ case "com.amazonaws.mgn#ValidationException":
2636
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
2637
+ default:
2638
+ const parsedBody = parsedOutput.body;
2639
+ response = new MgnServiceException_1.MgnServiceException({
2640
+ name: parsedBody.code || parsedBody.Code || errorCode,
2641
+ $fault: "client",
2642
+ $metadata: deserializeMetadata(output),
2643
+ });
2644
+ throw (0, smithy_client_1.decorateServiceException)(response, parsedBody);
2645
+ }
2646
+ };
2332
2647
  const deserializeAws_restJson1UpdateReplicationConfigurationCommand = async (output, context) => {
2333
2648
  if (output.statusCode !== 200 && output.statusCode >= 300) {
2334
2649
  return deserializeAws_restJson1UpdateReplicationConfigurationCommandError(output, context);
@@ -2639,6 +2954,9 @@ const deserializeAws_restJson1ConflictExceptionResponse = async (parsedOutput, c
2639
2954
  if (data.code !== undefined && data.code !== null) {
2640
2955
  contents.code = (0, smithy_client_1.expectString)(data.code);
2641
2956
  }
2957
+ if (data.errors !== undefined && data.errors !== null) {
2958
+ contents.errors = deserializeAws_restJson1ConflictExceptionErrors(data.errors, context);
2959
+ }
2642
2960
  if (data.message !== undefined && data.message !== null) {
2643
2961
  contents.message = (0, smithy_client_1.expectString)(data.message);
2644
2962
  }
@@ -2829,6 +3147,16 @@ const serializeAws_restJson1DescribeSourceServersRequestFiltersIDs = (input, con
2829
3147
  return entry;
2830
3148
  });
2831
3149
  };
3150
+ const serializeAws_restJson1LaunchConfigurationTemplateIDs = (input, context) => {
3151
+ return input
3152
+ .filter((e) => e != null)
3153
+ .map((entry) => {
3154
+ if (entry === null) {
3155
+ return null;
3156
+ }
3157
+ return entry;
3158
+ });
3159
+ };
2832
3160
  const serializeAws_restJson1Licensing = (input, context) => {
2833
3161
  return {
2834
3162
  ...(input.osByol !== undefined && input.osByol !== null && { osByol: input.osByol }),
@@ -2844,6 +3172,18 @@ const serializeAws_restJson1LifeCycleStates = (input, context) => {
2844
3172
  return entry;
2845
3173
  });
2846
3174
  };
3175
+ const serializeAws_restJson1PostLaunchActions = (input, context) => {
3176
+ return {
3177
+ ...(input.cloudWatchLogGroupName !== undefined &&
3178
+ input.cloudWatchLogGroupName !== null && { cloudWatchLogGroupName: input.cloudWatchLogGroupName }),
3179
+ ...(input.deployment !== undefined && input.deployment !== null && { deployment: input.deployment }),
3180
+ ...(input.s3LogBucket !== undefined && input.s3LogBucket !== null && { s3LogBucket: input.s3LogBucket }),
3181
+ ...(input.s3OutputKeyPrefix !== undefined &&
3182
+ input.s3OutputKeyPrefix !== null && { s3OutputKeyPrefix: input.s3OutputKeyPrefix }),
3183
+ ...(input.ssmDocuments !== undefined &&
3184
+ input.ssmDocuments !== null && { ssmDocuments: serializeAws_restJson1SsmDocuments(input.ssmDocuments, context) }),
3185
+ };
3186
+ };
2847
3187
  const serializeAws_restJson1ReplicationConfigurationReplicatedDisk = (input, context) => {
2848
3188
  return {
2849
3189
  ...(input.deviceName !== undefined && input.deviceName !== null && { deviceName: input.deviceName }),
@@ -2894,6 +3234,58 @@ const serializeAws_restJson1ReplicationTypes = (input, context) => {
2894
3234
  return entry;
2895
3235
  });
2896
3236
  };
3237
+ const serializeAws_restJson1SsmDocument = (input, context) => {
3238
+ return {
3239
+ ...(input.actionName !== undefined && input.actionName !== null && { actionName: input.actionName }),
3240
+ ...(input.mustSucceedForCutover !== undefined &&
3241
+ input.mustSucceedForCutover !== null && { mustSucceedForCutover: input.mustSucceedForCutover }),
3242
+ ...(input.parameters !== undefined &&
3243
+ input.parameters !== null && {
3244
+ parameters: serializeAws_restJson1SsmDocumentParameters(input.parameters, context),
3245
+ }),
3246
+ ...(input.ssmDocumentName !== undefined &&
3247
+ input.ssmDocumentName !== null && { ssmDocumentName: input.ssmDocumentName }),
3248
+ ...(input.timeoutSeconds !== undefined &&
3249
+ input.timeoutSeconds !== null && { timeoutSeconds: input.timeoutSeconds }),
3250
+ };
3251
+ };
3252
+ const serializeAws_restJson1SsmDocumentParameters = (input, context) => {
3253
+ return Object.entries(input).reduce((acc, [key, value]) => {
3254
+ if (value === null) {
3255
+ return acc;
3256
+ }
3257
+ return {
3258
+ ...acc,
3259
+ [key]: serializeAws_restJson1SsmParameterStoreParameters(value, context),
3260
+ };
3261
+ }, {});
3262
+ };
3263
+ const serializeAws_restJson1SsmDocuments = (input, context) => {
3264
+ return input
3265
+ .filter((e) => e != null)
3266
+ .map((entry) => {
3267
+ if (entry === null) {
3268
+ return null;
3269
+ }
3270
+ return serializeAws_restJson1SsmDocument(entry, context);
3271
+ });
3272
+ };
3273
+ const serializeAws_restJson1SsmParameterStoreParameter = (input, context) => {
3274
+ return {
3275
+ ...(input.parameterName !== undefined && input.parameterName !== null && { parameterName: input.parameterName }),
3276
+ ...(input.parameterType !== undefined && input.parameterType !== null && { parameterType: input.parameterType }),
3277
+ };
3278
+ };
3279
+ const serializeAws_restJson1SsmParameterStoreParameters = (input, context) => {
3280
+ return input
3281
+ .filter((e) => e != null)
3282
+ .map((entry) => {
3283
+ if (entry === null) {
3284
+ return null;
3285
+ }
3286
+ return serializeAws_restJson1SsmParameterStoreParameter(entry, context);
3287
+ });
3288
+ };
2897
3289
  const serializeAws_restJson1StartCutoverRequestSourceServerIDs = (input, context) => {
2898
3290
  return input
2899
3291
  .filter((e) => e != null)
@@ -2935,6 +3327,17 @@ const serializeAws_restJson1TerminateTargetInstancesRequestSourceServerIDs = (in
2935
3327
  return entry;
2936
3328
  });
2937
3329
  };
3330
+ const deserializeAws_restJson1ConflictExceptionErrors = (output, context) => {
3331
+ const retVal = (output || [])
3332
+ .filter((e) => e != null)
3333
+ .map((entry) => {
3334
+ if (entry === null) {
3335
+ return null;
3336
+ }
3337
+ return deserializeAws_restJson1ErrorDetails(entry, context);
3338
+ });
3339
+ return retVal;
3340
+ };
2938
3341
  const deserializeAws_restJson1CPU = (output, context) => {
2939
3342
  return {
2940
3343
  cores: (0, smithy_client_1.expectLong)(output.cores),
@@ -3038,6 +3441,14 @@ const deserializeAws_restJson1Disks = (output, context) => {
3038
3441
  });
3039
3442
  return retVal;
3040
3443
  };
3444
+ const deserializeAws_restJson1ErrorDetails = (output, context) => {
3445
+ return {
3446
+ code: (0, smithy_client_1.expectString)(output.code),
3447
+ message: (0, smithy_client_1.expectString)(output.message),
3448
+ resourceId: (0, smithy_client_1.expectString)(output.resourceId),
3449
+ resourceType: (0, smithy_client_1.expectString)(output.resourceType),
3450
+ };
3451
+ };
3041
3452
  const deserializeAws_restJson1IdentificationHints = (output, context) => {
3042
3453
  return {
3043
3454
  awsInstanceID: (0, smithy_client_1.expectString)(output.awsInstanceID),
@@ -3103,6 +3514,17 @@ const deserializeAws_restJson1JobLogs = (output, context) => {
3103
3514
  });
3104
3515
  return retVal;
3105
3516
  };
3517
+ const deserializeAws_restJson1JobPostLaunchActionsLaunchStatus = (output, context) => {
3518
+ return {
3519
+ executionID: (0, smithy_client_1.expectString)(output.executionID),
3520
+ executionStatus: (0, smithy_client_1.expectString)(output.executionStatus),
3521
+ failureReason: (0, smithy_client_1.expectString)(output.failureReason),
3522
+ ssmDocument: output.ssmDocument !== undefined && output.ssmDocument !== null
3523
+ ? deserializeAws_restJson1SsmDocument(output.ssmDocument, context)
3524
+ : undefined,
3525
+ ssmDocumentType: (0, smithy_client_1.expectString)(output.ssmDocumentType),
3526
+ };
3527
+ };
3106
3528
  const deserializeAws_restJson1JobsList = (output, context) => {
3107
3529
  const retVal = (output || [])
3108
3530
  .filter((e) => e != null)
@@ -3114,6 +3536,29 @@ const deserializeAws_restJson1JobsList = (output, context) => {
3114
3536
  });
3115
3537
  return retVal;
3116
3538
  };
3539
+ const deserializeAws_restJson1LaunchConfigurationTemplate = (output, context) => {
3540
+ return {
3541
+ arn: (0, smithy_client_1.expectString)(output.arn),
3542
+ launchConfigurationTemplateID: (0, smithy_client_1.expectString)(output.launchConfigurationTemplateID),
3543
+ postLaunchActions: output.postLaunchActions !== undefined && output.postLaunchActions !== null
3544
+ ? deserializeAws_restJson1PostLaunchActions(output.postLaunchActions, context)
3545
+ : undefined,
3546
+ tags: output.tags !== undefined && output.tags !== null
3547
+ ? deserializeAws_restJson1TagsMap(output.tags, context)
3548
+ : undefined,
3549
+ };
3550
+ };
3551
+ const deserializeAws_restJson1LaunchConfigurationTemplates = (output, context) => {
3552
+ const retVal = (output || [])
3553
+ .filter((e) => e != null)
3554
+ .map((entry) => {
3555
+ if (entry === null) {
3556
+ return null;
3557
+ }
3558
+ return deserializeAws_restJson1LaunchConfigurationTemplate(entry, context);
3559
+ });
3560
+ return retVal;
3561
+ };
3117
3562
  const deserializeAws_restJson1LaunchedInstance = (output, context) => {
3118
3563
  return {
3119
3564
  ec2InstanceID: (0, smithy_client_1.expectString)(output.ec2InstanceID),
@@ -3227,6 +3672,10 @@ const deserializeAws_restJson1OS = (output, context) => {
3227
3672
  const deserializeAws_restJson1ParticipatingServer = (output, context) => {
3228
3673
  return {
3229
3674
  launchStatus: (0, smithy_client_1.expectString)(output.launchStatus),
3675
+ launchedEc2InstanceID: (0, smithy_client_1.expectString)(output.launchedEc2InstanceID),
3676
+ postLaunchActionsStatus: output.postLaunchActionsStatus !== undefined && output.postLaunchActionsStatus !== null
3677
+ ? deserializeAws_restJson1PostLaunchActionsStatus(output.postLaunchActionsStatus, context)
3678
+ : undefined,
3230
3679
  sourceServerID: (0, smithy_client_1.expectString)(output.sourceServerID),
3231
3680
  };
3232
3681
  };
@@ -3241,6 +3690,36 @@ const deserializeAws_restJson1ParticipatingServers = (output, context) => {
3241
3690
  });
3242
3691
  return retVal;
3243
3692
  };
3693
+ const deserializeAws_restJson1PostLaunchActions = (output, context) => {
3694
+ return {
3695
+ cloudWatchLogGroupName: (0, smithy_client_1.expectString)(output.cloudWatchLogGroupName),
3696
+ deployment: (0, smithy_client_1.expectString)(output.deployment),
3697
+ s3LogBucket: (0, smithy_client_1.expectString)(output.s3LogBucket),
3698
+ s3OutputKeyPrefix: (0, smithy_client_1.expectString)(output.s3OutputKeyPrefix),
3699
+ ssmDocuments: output.ssmDocuments !== undefined && output.ssmDocuments !== null
3700
+ ? deserializeAws_restJson1SsmDocuments(output.ssmDocuments, context)
3701
+ : undefined,
3702
+ };
3703
+ };
3704
+ const deserializeAws_restJson1PostLaunchActionsLaunchStatusList = (output, context) => {
3705
+ const retVal = (output || [])
3706
+ .filter((e) => e != null)
3707
+ .map((entry) => {
3708
+ if (entry === null) {
3709
+ return null;
3710
+ }
3711
+ return deserializeAws_restJson1JobPostLaunchActionsLaunchStatus(entry, context);
3712
+ });
3713
+ return retVal;
3714
+ };
3715
+ const deserializeAws_restJson1PostLaunchActionsStatus = (output, context) => {
3716
+ return {
3717
+ postLaunchActionsLaunchStatusList: output.postLaunchActionsLaunchStatusList !== undefined && output.postLaunchActionsLaunchStatusList !== null
3718
+ ? deserializeAws_restJson1PostLaunchActionsLaunchStatusList(output.postLaunchActionsLaunchStatusList, context)
3719
+ : undefined,
3720
+ ssmAgentDiscoveryDatetime: (0, smithy_client_1.expectString)(output.ssmAgentDiscoveryDatetime),
3721
+ };
3722
+ };
3244
3723
  const deserializeAws_restJson1ReplicationConfigurationReplicatedDisk = (output, context) => {
3245
3724
  return {
3246
3725
  deviceName: (0, smithy_client_1.expectString)(output.deviceName),
@@ -3363,6 +3842,56 @@ const deserializeAws_restJson1SourceServersList = (output, context) => {
3363
3842
  });
3364
3843
  return retVal;
3365
3844
  };
3845
+ const deserializeAws_restJson1SsmDocument = (output, context) => {
3846
+ return {
3847
+ actionName: (0, smithy_client_1.expectString)(output.actionName),
3848
+ mustSucceedForCutover: (0, smithy_client_1.expectBoolean)(output.mustSucceedForCutover),
3849
+ parameters: output.parameters !== undefined && output.parameters !== null
3850
+ ? deserializeAws_restJson1SsmDocumentParameters(output.parameters, context)
3851
+ : undefined,
3852
+ ssmDocumentName: (0, smithy_client_1.expectString)(output.ssmDocumentName),
3853
+ timeoutSeconds: (0, smithy_client_1.expectInt32)(output.timeoutSeconds),
3854
+ };
3855
+ };
3856
+ const deserializeAws_restJson1SsmDocumentParameters = (output, context) => {
3857
+ return Object.entries(output).reduce((acc, [key, value]) => {
3858
+ if (value === null) {
3859
+ return acc;
3860
+ }
3861
+ return {
3862
+ ...acc,
3863
+ [key]: deserializeAws_restJson1SsmParameterStoreParameters(value, context),
3864
+ };
3865
+ }, {});
3866
+ };
3867
+ const deserializeAws_restJson1SsmDocuments = (output, context) => {
3868
+ const retVal = (output || [])
3869
+ .filter((e) => e != null)
3870
+ .map((entry) => {
3871
+ if (entry === null) {
3872
+ return null;
3873
+ }
3874
+ return deserializeAws_restJson1SsmDocument(entry, context);
3875
+ });
3876
+ return retVal;
3877
+ };
3878
+ const deserializeAws_restJson1SsmParameterStoreParameter = (output, context) => {
3879
+ return {
3880
+ parameterName: (0, smithy_client_1.expectString)(output.parameterName),
3881
+ parameterType: (0, smithy_client_1.expectString)(output.parameterType),
3882
+ };
3883
+ };
3884
+ const deserializeAws_restJson1SsmParameterStoreParameters = (output, context) => {
3885
+ const retVal = (output || [])
3886
+ .filter((e) => e != null)
3887
+ .map((entry) => {
3888
+ if (entry === null) {
3889
+ return null;
3890
+ }
3891
+ return deserializeAws_restJson1SsmParameterStoreParameter(entry, context);
3892
+ });
3893
+ return retVal;
3894
+ };
3366
3895
  const deserializeAws_restJson1TagsMap = (output, context) => {
3367
3896
  return Object.entries(output).reduce((acc, [key, value]) => {
3368
3897
  if (value === null) {