@aws-sdk/client-compute-optimizer 3.395.0 → 3.401.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 (46) hide show
  1. package/README.md +16 -0
  2. package/dist-cjs/ComputeOptimizer.js +4 -0
  3. package/dist-cjs/commands/ExportLicenseRecommendationsCommand.js +46 -0
  4. package/dist-cjs/commands/GetLicenseRecommendationsCommand.js +46 -0
  5. package/dist-cjs/commands/index.js +2 -0
  6. package/dist-cjs/endpoint/ruleset.js +1 -1
  7. package/dist-cjs/models/models_0.js +59 -2
  8. package/dist-cjs/protocols/Aws_json1_0.js +168 -1
  9. package/dist-cjs/runtimeExtensions.js +5 -5
  10. package/dist-es/ComputeOptimizer.js +4 -0
  11. package/dist-es/commands/ExportLicenseRecommendationsCommand.js +42 -0
  12. package/dist-es/commands/GetLicenseRecommendationsCommand.js +42 -0
  13. package/dist-es/commands/index.js +2 -0
  14. package/dist-es/endpoint/ruleset.js +1 -1
  15. package/dist-es/models/models_0.js +57 -0
  16. package/dist-es/protocols/Aws_json1_0.js +163 -0
  17. package/dist-es/runtimeExtensions.js +5 -5
  18. package/dist-types/ComputeOptimizer.d.ts +14 -0
  19. package/dist-types/ComputeOptimizerClient.d.ts +4 -2
  20. package/dist-types/commands/DeleteRecommendationPreferencesCommand.d.ts +1 -1
  21. package/dist-types/commands/DescribeRecommendationExportJobsCommand.d.ts +1 -1
  22. package/dist-types/commands/ExportLicenseRecommendationsCommand.d.ts +129 -0
  23. package/dist-types/commands/GetEC2InstanceRecommendationsCommand.d.ts +1 -1
  24. package/dist-types/commands/GetLicenseRecommendationsCommand.d.ts +172 -0
  25. package/dist-types/commands/GetRecommendationPreferencesCommand.d.ts +2 -2
  26. package/dist-types/commands/GetRecommendationSummariesCommand.d.ts +1 -1
  27. package/dist-types/commands/PutRecommendationPreferencesCommand.d.ts +1 -1
  28. package/dist-types/commands/index.d.ts +2 -0
  29. package/dist-types/extensionConfiguration.d.ts +6 -0
  30. package/dist-types/models/models_0.d.ts +591 -0
  31. package/dist-types/protocols/Aws_json1_0.d.ts +18 -0
  32. package/dist-types/runtimeExtensions.d.ts +2 -2
  33. package/dist-types/ts3.4/ComputeOptimizer.d.ts +34 -0
  34. package/dist-types/ts3.4/ComputeOptimizerClient.d.ts +12 -0
  35. package/dist-types/ts3.4/commands/ExportLicenseRecommendationsCommand.d.ts +42 -0
  36. package/dist-types/ts3.4/commands/GetLicenseRecommendationsCommand.d.ts +42 -0
  37. package/dist-types/ts3.4/commands/index.d.ts +2 -0
  38. package/dist-types/ts3.4/extensionConfiguration.d.ts +3 -0
  39. package/dist-types/ts3.4/models/models_0.d.ts +131 -0
  40. package/dist-types/ts3.4/protocols/Aws_json1_0.d.ts +24 -0
  41. package/dist-types/ts3.4/runtimeExtensions.d.ts +2 -4
  42. package/package.json +29 -29
  43. package/dist-types/clientConfiguration.d.ts +0 -6
  44. package/dist-types/ts3.4/clientConfiguration.d.ts +0 -3
  45. /package/dist-cjs/{clientConfiguration.js → extensionConfiguration.js} +0 -0
  46. /package/dist-es/{clientConfiguration.js → extensionConfiguration.js} +0 -0
package/README.md CHANGED
@@ -269,6 +269,14 @@ ExportLambdaFunctionRecommendations
269
269
 
270
270
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/classes/exportlambdafunctionrecommendationscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/interfaces/exportlambdafunctionrecommendationscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/interfaces/exportlambdafunctionrecommendationscommandoutput.html)
271
271
 
272
+ </details>
273
+ <details>
274
+ <summary>
275
+ ExportLicenseRecommendations
276
+ </summary>
277
+
278
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/classes/exportlicenserecommendationscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/interfaces/exportlicenserecommendationscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/interfaces/exportlicenserecommendationscommandoutput.html)
279
+
272
280
  </details>
273
281
  <details>
274
282
  <summary>
@@ -349,6 +357,14 @@ GetLambdaFunctionRecommendations
349
357
 
350
358
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/classes/getlambdafunctionrecommendationscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/interfaces/getlambdafunctionrecommendationscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/interfaces/getlambdafunctionrecommendationscommandoutput.html)
351
359
 
360
+ </details>
361
+ <details>
362
+ <summary>
363
+ GetLicenseRecommendations
364
+ </summary>
365
+
366
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/classes/getlicenserecommendationscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/interfaces/getlicenserecommendationscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-compute-optimizer/interfaces/getlicenserecommendationscommandoutput.html)
367
+
352
368
  </details>
353
369
  <details>
354
370
  <summary>
@@ -9,6 +9,7 @@ const ExportEBSVolumeRecommendationsCommand_1 = require("./commands/ExportEBSVol
9
9
  const ExportEC2InstanceRecommendationsCommand_1 = require("./commands/ExportEC2InstanceRecommendationsCommand");
10
10
  const ExportECSServiceRecommendationsCommand_1 = require("./commands/ExportECSServiceRecommendationsCommand");
11
11
  const ExportLambdaFunctionRecommendationsCommand_1 = require("./commands/ExportLambdaFunctionRecommendationsCommand");
12
+ const ExportLicenseRecommendationsCommand_1 = require("./commands/ExportLicenseRecommendationsCommand");
12
13
  const GetAutoScalingGroupRecommendationsCommand_1 = require("./commands/GetAutoScalingGroupRecommendationsCommand");
13
14
  const GetEBSVolumeRecommendationsCommand_1 = require("./commands/GetEBSVolumeRecommendationsCommand");
14
15
  const GetEC2InstanceRecommendationsCommand_1 = require("./commands/GetEC2InstanceRecommendationsCommand");
@@ -19,6 +20,7 @@ const GetEffectiveRecommendationPreferencesCommand_1 = require("./commands/GetEf
19
20
  const GetEnrollmentStatusCommand_1 = require("./commands/GetEnrollmentStatusCommand");
20
21
  const GetEnrollmentStatusesForOrganizationCommand_1 = require("./commands/GetEnrollmentStatusesForOrganizationCommand");
21
22
  const GetLambdaFunctionRecommendationsCommand_1 = require("./commands/GetLambdaFunctionRecommendationsCommand");
23
+ const GetLicenseRecommendationsCommand_1 = require("./commands/GetLicenseRecommendationsCommand");
22
24
  const GetRecommendationPreferencesCommand_1 = require("./commands/GetRecommendationPreferencesCommand");
23
25
  const GetRecommendationSummariesCommand_1 = require("./commands/GetRecommendationSummariesCommand");
24
26
  const PutRecommendationPreferencesCommand_1 = require("./commands/PutRecommendationPreferencesCommand");
@@ -32,6 +34,7 @@ const commands = {
32
34
  ExportEC2InstanceRecommendationsCommand: ExportEC2InstanceRecommendationsCommand_1.ExportEC2InstanceRecommendationsCommand,
33
35
  ExportECSServiceRecommendationsCommand: ExportECSServiceRecommendationsCommand_1.ExportECSServiceRecommendationsCommand,
34
36
  ExportLambdaFunctionRecommendationsCommand: ExportLambdaFunctionRecommendationsCommand_1.ExportLambdaFunctionRecommendationsCommand,
37
+ ExportLicenseRecommendationsCommand: ExportLicenseRecommendationsCommand_1.ExportLicenseRecommendationsCommand,
35
38
  GetAutoScalingGroupRecommendationsCommand: GetAutoScalingGroupRecommendationsCommand_1.GetAutoScalingGroupRecommendationsCommand,
36
39
  GetEBSVolumeRecommendationsCommand: GetEBSVolumeRecommendationsCommand_1.GetEBSVolumeRecommendationsCommand,
37
40
  GetEC2InstanceRecommendationsCommand: GetEC2InstanceRecommendationsCommand_1.GetEC2InstanceRecommendationsCommand,
@@ -42,6 +45,7 @@ const commands = {
42
45
  GetEnrollmentStatusCommand: GetEnrollmentStatusCommand_1.GetEnrollmentStatusCommand,
43
46
  GetEnrollmentStatusesForOrganizationCommand: GetEnrollmentStatusesForOrganizationCommand_1.GetEnrollmentStatusesForOrganizationCommand,
44
47
  GetLambdaFunctionRecommendationsCommand: GetLambdaFunctionRecommendationsCommand_1.GetLambdaFunctionRecommendationsCommand,
48
+ GetLicenseRecommendationsCommand: GetLicenseRecommendationsCommand_1.GetLicenseRecommendationsCommand,
45
49
  GetRecommendationPreferencesCommand: GetRecommendationPreferencesCommand_1.GetRecommendationPreferencesCommand,
46
50
  GetRecommendationSummariesCommand: GetRecommendationSummariesCommand_1.GetRecommendationSummariesCommand,
47
51
  PutRecommendationPreferencesCommand: PutRecommendationPreferencesCommand_1.PutRecommendationPreferencesCommand,
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExportLicenseRecommendationsCommand = exports.$Command = void 0;
4
+ const middleware_endpoint_1 = require("@smithy/middleware-endpoint");
5
+ const middleware_serde_1 = require("@smithy/middleware-serde");
6
+ const smithy_client_1 = require("@smithy/smithy-client");
7
+ Object.defineProperty(exports, "$Command", { enumerable: true, get: function () { return smithy_client_1.Command; } });
8
+ const Aws_json1_0_1 = require("../protocols/Aws_json1_0");
9
+ class ExportLicenseRecommendationsCommand extends smithy_client_1.Command {
10
+ static getEndpointParameterInstructions() {
11
+ return {
12
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
13
+ Endpoint: { type: "builtInParams", name: "endpoint" },
14
+ Region: { type: "builtInParams", name: "region" },
15
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
16
+ };
17
+ }
18
+ constructor(input) {
19
+ super();
20
+ this.input = input;
21
+ }
22
+ resolveMiddleware(clientStack, configuration, options) {
23
+ this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize));
24
+ this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, ExportLicenseRecommendationsCommand.getEndpointParameterInstructions()));
25
+ const stack = clientStack.concat(this.middlewareStack);
26
+ const { logger } = configuration;
27
+ const clientName = "ComputeOptimizerClient";
28
+ const commandName = "ExportLicenseRecommendationsCommand";
29
+ const handlerExecutionContext = {
30
+ logger,
31
+ clientName,
32
+ commandName,
33
+ inputFilterSensitiveLog: (_) => _,
34
+ outputFilterSensitiveLog: (_) => _,
35
+ };
36
+ const { requestHandler } = configuration;
37
+ return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
38
+ }
39
+ serialize(input, context) {
40
+ return (0, Aws_json1_0_1.se_ExportLicenseRecommendationsCommand)(input, context);
41
+ }
42
+ deserialize(output, context) {
43
+ return (0, Aws_json1_0_1.de_ExportLicenseRecommendationsCommand)(output, context);
44
+ }
45
+ }
46
+ exports.ExportLicenseRecommendationsCommand = ExportLicenseRecommendationsCommand;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetLicenseRecommendationsCommand = exports.$Command = void 0;
4
+ const middleware_endpoint_1 = require("@smithy/middleware-endpoint");
5
+ const middleware_serde_1 = require("@smithy/middleware-serde");
6
+ const smithy_client_1 = require("@smithy/smithy-client");
7
+ Object.defineProperty(exports, "$Command", { enumerable: true, get: function () { return smithy_client_1.Command; } });
8
+ const Aws_json1_0_1 = require("../protocols/Aws_json1_0");
9
+ class GetLicenseRecommendationsCommand extends smithy_client_1.Command {
10
+ static getEndpointParameterInstructions() {
11
+ return {
12
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
13
+ Endpoint: { type: "builtInParams", name: "endpoint" },
14
+ Region: { type: "builtInParams", name: "region" },
15
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
16
+ };
17
+ }
18
+ constructor(input) {
19
+ super();
20
+ this.input = input;
21
+ }
22
+ resolveMiddleware(clientStack, configuration, options) {
23
+ this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize));
24
+ this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, GetLicenseRecommendationsCommand.getEndpointParameterInstructions()));
25
+ const stack = clientStack.concat(this.middlewareStack);
26
+ const { logger } = configuration;
27
+ const clientName = "ComputeOptimizerClient";
28
+ const commandName = "GetLicenseRecommendationsCommand";
29
+ const handlerExecutionContext = {
30
+ logger,
31
+ clientName,
32
+ commandName,
33
+ inputFilterSensitiveLog: (_) => _,
34
+ outputFilterSensitiveLog: (_) => _,
35
+ };
36
+ const { requestHandler } = configuration;
37
+ return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
38
+ }
39
+ serialize(input, context) {
40
+ return (0, Aws_json1_0_1.se_GetLicenseRecommendationsCommand)(input, context);
41
+ }
42
+ deserialize(output, context) {
43
+ return (0, Aws_json1_0_1.de_GetLicenseRecommendationsCommand)(output, context);
44
+ }
45
+ }
46
+ exports.GetLicenseRecommendationsCommand = GetLicenseRecommendationsCommand;
@@ -8,6 +8,7 @@ tslib_1.__exportStar(require("./ExportEBSVolumeRecommendationsCommand"), exports
8
8
  tslib_1.__exportStar(require("./ExportEC2InstanceRecommendationsCommand"), exports);
9
9
  tslib_1.__exportStar(require("./ExportECSServiceRecommendationsCommand"), exports);
10
10
  tslib_1.__exportStar(require("./ExportLambdaFunctionRecommendationsCommand"), exports);
11
+ tslib_1.__exportStar(require("./ExportLicenseRecommendationsCommand"), exports);
11
12
  tslib_1.__exportStar(require("./GetAutoScalingGroupRecommendationsCommand"), exports);
12
13
  tslib_1.__exportStar(require("./GetEBSVolumeRecommendationsCommand"), exports);
13
14
  tslib_1.__exportStar(require("./GetEC2InstanceRecommendationsCommand"), exports);
@@ -18,6 +19,7 @@ tslib_1.__exportStar(require("./GetEffectiveRecommendationPreferencesCommand"),
18
19
  tslib_1.__exportStar(require("./GetEnrollmentStatusCommand"), exports);
19
20
  tslib_1.__exportStar(require("./GetEnrollmentStatusesForOrganizationCommand"), exports);
20
21
  tslib_1.__exportStar(require("./GetLambdaFunctionRecommendationsCommand"), exports);
22
+ tslib_1.__exportStar(require("./GetLicenseRecommendationsCommand"), exports);
21
23
  tslib_1.__exportStar(require("./GetRecommendationPreferencesCommand"), exports);
22
24
  tslib_1.__exportStar(require("./GetRecommendationSummariesCommand"), exports);
23
25
  tslib_1.__exportStar(require("./PutRecommendationPreferencesCommand"), exports);
@@ -3,5 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ruleSet = void 0;
4
4
  const q = "required", r = "fn", s = "argv", t = "ref";
5
5
  const a = "isSet", b = "tree", c = "error", d = "endpoint", e = "PartitionResult", f = { [q]: false, "type": "String" }, g = { [q]: true, "default": false, "type": "Boolean" }, h = { [t]: "Endpoint" }, i = { [r]: "booleanEquals", [s]: [{ [t]: "UseFIPS" }, true] }, j = { [r]: "booleanEquals", [s]: [{ [t]: "UseDualStack" }, true] }, k = {}, l = { [r]: "booleanEquals", [s]: [true, { [r]: "getAttr", [s]: [{ [t]: e }, "supportsFIPS"] }] }, m = { [r]: "booleanEquals", [s]: [true, { [r]: "getAttr", [s]: [{ [t]: e }, "supportsDualStack"] }] }, n = [i], o = [j], p = [{ [t]: "Region" }];
6
- const _data = { version: "1.0", parameters: { Region: f, UseDualStack: g, UseFIPS: g, Endpoint: f }, rules: [{ conditions: [{ [r]: a, [s]: [h] }], type: b, rules: [{ conditions: n, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: c }, { type: b, rules: [{ conditions: o, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: c }, { endpoint: { url: h, properties: k, headers: k }, type: d }] }] }, { type: b, rules: [{ conditions: [{ [r]: a, [s]: p }], type: b, rules: [{ conditions: [{ [r]: "aws.partition", [s]: p, assign: e }], type: b, rules: [{ conditions: [i, j], type: b, rules: [{ conditions: [l, m], type: b, rules: [{ type: b, rules: [{ endpoint: { url: "https://compute-optimizer-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: k, headers: k }, type: d }] }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: c }] }, { conditions: n, type: b, rules: [{ conditions: [l], type: b, rules: [{ type: b, rules: [{ endpoint: { url: "https://compute-optimizer-fips.{Region}.{PartitionResult#dnsSuffix}", properties: k, headers: k }, type: d }] }] }, { error: "FIPS is enabled but this partition does not support FIPS", type: c }] }, { conditions: o, type: b, rules: [{ conditions: [m], type: b, rules: [{ type: b, rules: [{ endpoint: { url: "https://compute-optimizer.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: k, headers: k }, type: d }] }] }, { error: "DualStack is enabled but this partition does not support DualStack", type: c }] }, { type: b, rules: [{ endpoint: { url: "https://compute-optimizer.{Region}.{PartitionResult#dnsSuffix}", properties: k, headers: k }, type: d }] }] }] }, { error: "Invalid Configuration: Missing Region", type: c }] }] };
6
+ const _data = { version: "1.0", parameters: { Region: f, UseDualStack: g, UseFIPS: g, Endpoint: f }, rules: [{ conditions: [{ [r]: a, [s]: [h] }], type: b, rules: [{ conditions: n, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: c }, { conditions: o, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: c }, { endpoint: { url: h, properties: k, headers: k }, type: d }] }, { conditions: [{ [r]: a, [s]: p }], type: b, rules: [{ conditions: [{ [r]: "aws.partition", [s]: p, assign: e }], type: b, rules: [{ conditions: [i, j], type: b, rules: [{ conditions: [l, m], type: b, rules: [{ endpoint: { url: "https://compute-optimizer-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: c }] }, { conditions: n, type: b, rules: [{ conditions: [l], type: b, rules: [{ endpoint: { url: "https://compute-optimizer-fips.{Region}.{PartitionResult#dnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "FIPS is enabled but this partition does not support FIPS", type: c }] }, { conditions: o, type: b, rules: [{ conditions: [m], type: b, rules: [{ endpoint: { url: "https://compute-optimizer.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: k, headers: k }, type: d }] }, { error: "DualStack is enabled but this partition does not support DualStack", type: c }] }, { endpoint: { url: "https://compute-optimizer.{Region}.{PartitionResult#dnsSuffix}", properties: k, headers: k }, type: d }] }] }, { error: "Invalid Configuration: Missing Region", type: c }] };
7
7
  exports.ruleSet = _data;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EnrollmentFilterName = exports.ECSServiceMetricStatistic = exports.ECSServiceLaunchType = exports.ECSServiceRecommendationFindingReasonCode = exports.ECSServiceRecommendationFinding = exports.ECSServiceMetricName = exports.RecommendationSourceType = exports.PlatformDifference = exports.InstanceState = exports.InstanceRecommendationFindingReasonCode = exports.ExternalMetricStatusCode = exports.EBSMetricName = exports.EBSFinding = exports.LambdaFunctionRecommendationFilterName = exports.ExportableLambdaFunctionField = exports.ECSServiceRecommendationFilterName = exports.ExportableECSServiceField = exports.ExportableInstanceField = exports.EBSFilterName = exports.ExportableVolumeField = exports.LimitExceededException = exports.FilterName = exports.FileFormat = exports.ExportableAutoScalingGroupField = exports.JobStatus = exports.JobFilterName = exports.ThrottlingException = exports.ServiceUnavailableException = exports.ResourceNotFoundException = exports.OptInRequiredException = exports.MissingAuthenticationToken = exports.InvalidParameterValueException = exports.InternalServerException = exports.ScopeName = exports.ResourceType = exports.RecommendationPreferenceName = exports.Currency = exports.MetricStatistic = exports.MetricName = exports.MigrationEffort = exports.InferredWorkloadType = exports.Finding = exports.InferredWorkloadTypesPreference = exports.ExternalMetricsSource = exports.EnhancedInfrastructureMetrics = exports.CpuVendorArchitecture = exports.CurrentPerformanceRisk = exports.AutoScalingConfiguration = exports.Status = exports.AccessDeniedException = void 0;
4
- exports.FindingReasonCode = exports.LambdaFunctionMetricStatistic = exports.LambdaFunctionMetricName = exports.LambdaFunctionMemoryMetricStatistic = exports.LambdaFunctionMemoryMetricName = exports.LambdaFunctionRecommendationFindingReasonCode = exports.LambdaFunctionRecommendationFinding = void 0;
3
+ exports.ECSServiceLaunchType = exports.ECSServiceRecommendationFindingReasonCode = exports.ECSServiceRecommendationFinding = exports.ECSServiceMetricName = exports.RecommendationSourceType = exports.PlatformDifference = exports.InstanceState = exports.InstanceRecommendationFindingReasonCode = exports.ExternalMetricStatusCode = exports.EBSMetricName = exports.EBSFinding = exports.LicenseRecommendationFilterName = exports.ExportableLicenseField = exports.LambdaFunctionRecommendationFilterName = exports.ExportableLambdaFunctionField = exports.ECSServiceRecommendationFilterName = exports.ExportableECSServiceField = exports.ExportableInstanceField = exports.EBSFilterName = exports.ExportableVolumeField = exports.LimitExceededException = exports.FilterName = exports.FileFormat = exports.ExportableAutoScalingGroupField = exports.JobStatus = exports.JobFilterName = exports.ThrottlingException = exports.ServiceUnavailableException = exports.ResourceNotFoundException = exports.OptInRequiredException = exports.MissingAuthenticationToken = exports.InvalidParameterValueException = exports.InternalServerException = exports.ScopeName = exports.ResourceType = exports.RecommendationPreferenceName = exports.Currency = exports.MetricStatistic = exports.MetricName = exports.MigrationEffort = exports.InferredWorkloadType = exports.Finding = exports.InferredWorkloadTypesPreference = exports.ExternalMetricsSource = exports.EnhancedInfrastructureMetrics = exports.CpuVendorArchitecture = exports.CurrentPerformanceRisk = exports.AutoScalingConfiguration = exports.Status = exports.AccessDeniedException = void 0;
4
+ exports.FindingReasonCode = exports.LicenseFindingReasonCode = exports.LicenseFinding = exports.MetricSourceProvider = exports.LicenseName = exports.LicenseModel = exports.LicenseEdition = exports.LambdaFunctionMetricStatistic = exports.LambdaFunctionMetricName = exports.LambdaFunctionMemoryMetricStatistic = exports.LambdaFunctionMemoryMetricName = exports.LambdaFunctionRecommendationFindingReasonCode = exports.LambdaFunctionRecommendationFinding = exports.EnrollmentFilterName = exports.ECSServiceMetricStatistic = void 0;
5
5
  const ComputeOptimizerServiceException_1 = require("./ComputeOptimizerServiceException");
6
6
  class AccessDeniedException extends ComputeOptimizerServiceException_1.ComputeOptimizerServiceException {
7
7
  constructor(opts) {
@@ -108,6 +108,7 @@ exports.ResourceType = {
108
108
  EC2_INSTANCE: "Ec2Instance",
109
109
  ECS_SERVICE: "EcsService",
110
110
  LAMBDA_FUNCTION: "LambdaFunction",
111
+ LICENSE: "License",
111
112
  NOT_APPLICABLE: "NotApplicable",
112
113
  };
113
114
  exports.ScopeName = {
@@ -451,6 +452,34 @@ exports.LambdaFunctionRecommendationFilterName = {
451
452
  FINDING: "Finding",
452
453
  FINDING_REASON_CODE: "FindingReasonCode",
453
454
  };
455
+ exports.ExportableLicenseField = {
456
+ ACCOUNT_ID: "AccountId",
457
+ CURRENT_LICENSE_CONFIGURATION_INSTANCE_TYPE: "CurrentLicenseConfigurationInstanceType",
458
+ CURRENT_LICENSE_CONFIGURATION_LICENSE_EDITION: "CurrentLicenseConfigurationLicenseEdition",
459
+ CURRENT_LICENSE_CONFIGURATION_LICENSE_MODEL: "CurrentLicenseConfigurationLicenseModel",
460
+ CURRENT_LICENSE_CONFIGURATION_LICENSE_NAME: "CurrentLicenseConfigurationLicenseName",
461
+ CURRENT_LICENSE_CONFIGURATION_LICENSE_VERSION: "CurrentLicenseConfigurationLicenseVersion",
462
+ CURRENT_LICENSE_CONFIGURATION_METRICS_SOURCE: "CurrentLicenseConfigurationMetricsSource",
463
+ CURRENT_LICENSE_CONFIGURATION_NUMBER_OF_CORES: "CurrentLicenseConfigurationNumberOfCores",
464
+ CURRENT_LICENSE_CONFIGURATION_OPERATING_SYSTEM: "CurrentLicenseConfigurationOperatingSystem",
465
+ LAST_REFRESH_TIMESTAMP: "LastRefreshTimestamp",
466
+ LICENSE_FINDING: "Finding",
467
+ LICENSE_FINDING_REASON_CODES: "FindingReasonCodes",
468
+ LOOKBACK_PERIOD_IN_DAYS: "LookbackPeriodInDays",
469
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY: "RecommendationOptionsEstimatedMonthlySavingsCurrency",
470
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE: "RecommendationOptionsEstimatedMonthlySavingsValue",
471
+ RECOMMENDATION_OPTIONS_LICENSE_EDITION: "RecommendationOptionsLicenseEdition",
472
+ RECOMMENDATION_OPTIONS_LICENSE_MODEL: "RecommendationOptionsLicenseModel",
473
+ RECOMMENDATION_OPTIONS_OPERATING_SYSTEM: "RecommendationOptionsOperatingSystem",
474
+ RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_PERCENTAGE: "RecommendationOptionsSavingsOpportunityPercentage",
475
+ RESOURCE_ARN: "ResourceArn",
476
+ TAGS: "Tags",
477
+ };
478
+ exports.LicenseRecommendationFilterName = {
479
+ LICENSE_FINDING: "Finding",
480
+ LICENSE_FINDING_REASON_CODE: "FindingReasonCode",
481
+ LICENSE_NAME: "LicenseName",
482
+ };
454
483
  exports.EBSFinding = {
455
484
  NOT_OPTIMIZED: "NotOptimized",
456
485
  OPTIMIZED: "Optimized",
@@ -513,6 +542,7 @@ exports.RecommendationSourceType = {
513
542
  EC2_INSTANCE: "Ec2Instance",
514
543
  ECS_SERVICE: "EcsService",
515
544
  LAMBDA_FUNCTION: "LambdaFunction",
545
+ LICENSE: "License",
516
546
  };
517
547
  exports.ECSServiceMetricName = {
518
548
  CPU: "Cpu",
@@ -567,6 +597,33 @@ exports.LambdaFunctionMetricStatistic = {
567
597
  AVERAGE: "Average",
568
598
  MAXIMUM: "Maximum",
569
599
  };
600
+ exports.LicenseEdition = {
601
+ ENTERPRISE: "Enterprise",
602
+ FREE: "Free",
603
+ NO_LICENSE_EDITION_FOUND: "NoLicenseEditionFound",
604
+ STANDARD: "Standard",
605
+ };
606
+ exports.LicenseModel = {
607
+ BRING_YOUR_OWN_LICENSE: "BringYourOwnLicense",
608
+ LICENSE_INCLUDED: "LicenseIncluded",
609
+ };
610
+ exports.LicenseName = {
611
+ SQLSERVER: "SQLServer",
612
+ };
613
+ exports.MetricSourceProvider = {
614
+ CloudWatchAppInsights: "CloudWatchApplicationInsights",
615
+ };
616
+ exports.LicenseFinding = {
617
+ INSUFFICIENT_METRICS: "InsufficientMetrics",
618
+ NOT_OPTIMIZED: "NotOptimized",
619
+ OPTIMIZED: "Optimized",
620
+ };
621
+ exports.LicenseFindingReasonCode = {
622
+ CW_APP_INSIGHTS_DISABLED: "InvalidCloudWatchApplicationInsightsSetup",
623
+ CW_APP_INSIGHTS_ERROR: "CloudWatchApplicationInsightsError",
624
+ LICENSE_OVER_PROVISIONED: "LicenseOverprovisioned",
625
+ OPTIMIZED: "Optimized",
626
+ };
570
627
  exports.FindingReasonCode = {
571
628
  MEMORY_OVER_PROVISIONED: "MemoryOverprovisioned",
572
629
  MEMORY_UNDER_PROVISIONED: "MemoryUnderprovisioned",
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.de_UpdateEnrollmentStatusCommand = exports.de_PutRecommendationPreferencesCommand = exports.de_GetRecommendationSummariesCommand = exports.de_GetRecommendationPreferencesCommand = exports.de_GetLambdaFunctionRecommendationsCommand = exports.de_GetEnrollmentStatusesForOrganizationCommand = exports.de_GetEnrollmentStatusCommand = exports.de_GetEffectiveRecommendationPreferencesCommand = exports.de_GetECSServiceRecommendationsCommand = exports.de_GetECSServiceRecommendationProjectedMetricsCommand = exports.de_GetEC2RecommendationProjectedMetricsCommand = exports.de_GetEC2InstanceRecommendationsCommand = exports.de_GetEBSVolumeRecommendationsCommand = exports.de_GetAutoScalingGroupRecommendationsCommand = exports.de_ExportLambdaFunctionRecommendationsCommand = exports.de_ExportECSServiceRecommendationsCommand = exports.de_ExportEC2InstanceRecommendationsCommand = exports.de_ExportEBSVolumeRecommendationsCommand = exports.de_ExportAutoScalingGroupRecommendationsCommand = exports.de_DescribeRecommendationExportJobsCommand = exports.de_DeleteRecommendationPreferencesCommand = exports.se_UpdateEnrollmentStatusCommand = exports.se_PutRecommendationPreferencesCommand = exports.se_GetRecommendationSummariesCommand = exports.se_GetRecommendationPreferencesCommand = exports.se_GetLambdaFunctionRecommendationsCommand = exports.se_GetEnrollmentStatusesForOrganizationCommand = exports.se_GetEnrollmentStatusCommand = exports.se_GetEffectiveRecommendationPreferencesCommand = exports.se_GetECSServiceRecommendationsCommand = exports.se_GetECSServiceRecommendationProjectedMetricsCommand = exports.se_GetEC2RecommendationProjectedMetricsCommand = exports.se_GetEC2InstanceRecommendationsCommand = exports.se_GetEBSVolumeRecommendationsCommand = exports.se_GetAutoScalingGroupRecommendationsCommand = exports.se_ExportLambdaFunctionRecommendationsCommand = exports.se_ExportECSServiceRecommendationsCommand = exports.se_ExportEC2InstanceRecommendationsCommand = exports.se_ExportEBSVolumeRecommendationsCommand = exports.se_ExportAutoScalingGroupRecommendationsCommand = exports.se_DescribeRecommendationExportJobsCommand = exports.se_DeleteRecommendationPreferencesCommand = void 0;
3
+ exports.de_UpdateEnrollmentStatusCommand = exports.de_PutRecommendationPreferencesCommand = exports.de_GetRecommendationSummariesCommand = exports.de_GetRecommendationPreferencesCommand = exports.de_GetLicenseRecommendationsCommand = exports.de_GetLambdaFunctionRecommendationsCommand = exports.de_GetEnrollmentStatusesForOrganizationCommand = exports.de_GetEnrollmentStatusCommand = exports.de_GetEffectiveRecommendationPreferencesCommand = exports.de_GetECSServiceRecommendationsCommand = exports.de_GetECSServiceRecommendationProjectedMetricsCommand = exports.de_GetEC2RecommendationProjectedMetricsCommand = exports.de_GetEC2InstanceRecommendationsCommand = exports.de_GetEBSVolumeRecommendationsCommand = exports.de_GetAutoScalingGroupRecommendationsCommand = exports.de_ExportLicenseRecommendationsCommand = exports.de_ExportLambdaFunctionRecommendationsCommand = exports.de_ExportECSServiceRecommendationsCommand = exports.de_ExportEC2InstanceRecommendationsCommand = exports.de_ExportEBSVolumeRecommendationsCommand = exports.de_ExportAutoScalingGroupRecommendationsCommand = exports.de_DescribeRecommendationExportJobsCommand = exports.de_DeleteRecommendationPreferencesCommand = exports.se_UpdateEnrollmentStatusCommand = exports.se_PutRecommendationPreferencesCommand = exports.se_GetRecommendationSummariesCommand = exports.se_GetRecommendationPreferencesCommand = exports.se_GetLicenseRecommendationsCommand = exports.se_GetLambdaFunctionRecommendationsCommand = exports.se_GetEnrollmentStatusesForOrganizationCommand = exports.se_GetEnrollmentStatusCommand = exports.se_GetEffectiveRecommendationPreferencesCommand = exports.se_GetECSServiceRecommendationsCommand = exports.se_GetECSServiceRecommendationProjectedMetricsCommand = exports.se_GetEC2RecommendationProjectedMetricsCommand = exports.se_GetEC2InstanceRecommendationsCommand = exports.se_GetEBSVolumeRecommendationsCommand = exports.se_GetAutoScalingGroupRecommendationsCommand = exports.se_ExportLicenseRecommendationsCommand = exports.se_ExportLambdaFunctionRecommendationsCommand = exports.se_ExportECSServiceRecommendationsCommand = exports.se_ExportEC2InstanceRecommendationsCommand = exports.se_ExportEBSVolumeRecommendationsCommand = exports.se_ExportAutoScalingGroupRecommendationsCommand = exports.se_DescribeRecommendationExportJobsCommand = exports.se_DeleteRecommendationPreferencesCommand = void 0;
4
4
  const protocol_http_1 = require("@smithy/protocol-http");
5
5
  const smithy_client_1 = require("@smithy/smithy-client");
6
6
  const ComputeOptimizerServiceException_1 = require("../models/ComputeOptimizerServiceException");
@@ -54,6 +54,13 @@ const se_ExportLambdaFunctionRecommendationsCommand = async (input, context) =>
54
54
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
55
55
  };
56
56
  exports.se_ExportLambdaFunctionRecommendationsCommand = se_ExportLambdaFunctionRecommendationsCommand;
57
+ const se_ExportLicenseRecommendationsCommand = async (input, context) => {
58
+ const headers = sharedHeaders("ExportLicenseRecommendations");
59
+ let body;
60
+ body = JSON.stringify((0, smithy_client_1._json)(input));
61
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
62
+ };
63
+ exports.se_ExportLicenseRecommendationsCommand = se_ExportLicenseRecommendationsCommand;
57
64
  const se_GetAutoScalingGroupRecommendationsCommand = async (input, context) => {
58
65
  const headers = sharedHeaders("GetAutoScalingGroupRecommendations");
59
66
  let body;
@@ -124,6 +131,13 @@ const se_GetLambdaFunctionRecommendationsCommand = async (input, context) => {
124
131
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
125
132
  };
126
133
  exports.se_GetLambdaFunctionRecommendationsCommand = se_GetLambdaFunctionRecommendationsCommand;
134
+ const se_GetLicenseRecommendationsCommand = async (input, context) => {
135
+ const headers = sharedHeaders("GetLicenseRecommendations");
136
+ let body;
137
+ body = JSON.stringify((0, smithy_client_1._json)(input));
138
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
139
+ };
140
+ exports.se_GetLicenseRecommendationsCommand = se_GetLicenseRecommendationsCommand;
127
141
  const se_GetRecommendationPreferencesCommand = async (input, context) => {
128
142
  const headers = sharedHeaders("GetRecommendationPreferences");
129
143
  let body;
@@ -530,6 +544,60 @@ const de_ExportLambdaFunctionRecommendationsCommandError = async (output, contex
530
544
  });
531
545
  }
532
546
  };
547
+ const de_ExportLicenseRecommendationsCommand = async (output, context) => {
548
+ if (output.statusCode >= 300) {
549
+ return de_ExportLicenseRecommendationsCommandError(output, context);
550
+ }
551
+ const data = await parseBody(output.body, context);
552
+ let contents = {};
553
+ contents = (0, smithy_client_1._json)(data);
554
+ const response = {
555
+ $metadata: deserializeMetadata(output),
556
+ ...contents,
557
+ };
558
+ return response;
559
+ };
560
+ exports.de_ExportLicenseRecommendationsCommand = de_ExportLicenseRecommendationsCommand;
561
+ const de_ExportLicenseRecommendationsCommandError = async (output, context) => {
562
+ const parsedOutput = {
563
+ ...output,
564
+ body: await parseErrorBody(output.body, context),
565
+ };
566
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
567
+ switch (errorCode) {
568
+ case "AccessDeniedException":
569
+ case "com.amazonaws.computeoptimizer#AccessDeniedException":
570
+ throw await de_AccessDeniedExceptionRes(parsedOutput, context);
571
+ case "InternalServerException":
572
+ case "com.amazonaws.computeoptimizer#InternalServerException":
573
+ throw await de_InternalServerExceptionRes(parsedOutput, context);
574
+ case "InvalidParameterValueException":
575
+ case "com.amazonaws.computeoptimizer#InvalidParameterValueException":
576
+ throw await de_InvalidParameterValueExceptionRes(parsedOutput, context);
577
+ case "LimitExceededException":
578
+ case "com.amazonaws.computeoptimizer#LimitExceededException":
579
+ throw await de_LimitExceededExceptionRes(parsedOutput, context);
580
+ case "MissingAuthenticationToken":
581
+ case "com.amazonaws.computeoptimizer#MissingAuthenticationToken":
582
+ throw await de_MissingAuthenticationTokenRes(parsedOutput, context);
583
+ case "OptInRequiredException":
584
+ case "com.amazonaws.computeoptimizer#OptInRequiredException":
585
+ throw await de_OptInRequiredExceptionRes(parsedOutput, context);
586
+ case "ServiceUnavailableException":
587
+ case "com.amazonaws.computeoptimizer#ServiceUnavailableException":
588
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
589
+ case "ThrottlingException":
590
+ case "com.amazonaws.computeoptimizer#ThrottlingException":
591
+ throw await de_ThrottlingExceptionRes(parsedOutput, context);
592
+ default:
593
+ const parsedBody = parsedOutput.body;
594
+ return throwDefaultError({
595
+ output,
596
+ parsedBody,
597
+ errorCode,
598
+ });
599
+ }
600
+ };
533
601
  const de_GetAutoScalingGroupRecommendationsCommand = async (output, context) => {
534
602
  if (output.statusCode >= 300) {
535
603
  return de_GetAutoScalingGroupRecommendationsCommandError(output, context);
@@ -1058,6 +1126,60 @@ const de_GetLambdaFunctionRecommendationsCommandError = async (output, context)
1058
1126
  });
1059
1127
  }
1060
1128
  };
1129
+ const de_GetLicenseRecommendationsCommand = async (output, context) => {
1130
+ if (output.statusCode >= 300) {
1131
+ return de_GetLicenseRecommendationsCommandError(output, context);
1132
+ }
1133
+ const data = await parseBody(output.body, context);
1134
+ let contents = {};
1135
+ contents = de_GetLicenseRecommendationsResponse(data, context);
1136
+ const response = {
1137
+ $metadata: deserializeMetadata(output),
1138
+ ...contents,
1139
+ };
1140
+ return response;
1141
+ };
1142
+ exports.de_GetLicenseRecommendationsCommand = de_GetLicenseRecommendationsCommand;
1143
+ const de_GetLicenseRecommendationsCommandError = async (output, context) => {
1144
+ const parsedOutput = {
1145
+ ...output,
1146
+ body: await parseErrorBody(output.body, context),
1147
+ };
1148
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1149
+ switch (errorCode) {
1150
+ case "AccessDeniedException":
1151
+ case "com.amazonaws.computeoptimizer#AccessDeniedException":
1152
+ throw await de_AccessDeniedExceptionRes(parsedOutput, context);
1153
+ case "InternalServerException":
1154
+ case "com.amazonaws.computeoptimizer#InternalServerException":
1155
+ throw await de_InternalServerExceptionRes(parsedOutput, context);
1156
+ case "InvalidParameterValueException":
1157
+ case "com.amazonaws.computeoptimizer#InvalidParameterValueException":
1158
+ throw await de_InvalidParameterValueExceptionRes(parsedOutput, context);
1159
+ case "MissingAuthenticationToken":
1160
+ case "com.amazonaws.computeoptimizer#MissingAuthenticationToken":
1161
+ throw await de_MissingAuthenticationTokenRes(parsedOutput, context);
1162
+ case "OptInRequiredException":
1163
+ case "com.amazonaws.computeoptimizer#OptInRequiredException":
1164
+ throw await de_OptInRequiredExceptionRes(parsedOutput, context);
1165
+ case "ResourceNotFoundException":
1166
+ case "com.amazonaws.computeoptimizer#ResourceNotFoundException":
1167
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
1168
+ case "ServiceUnavailableException":
1169
+ case "com.amazonaws.computeoptimizer#ServiceUnavailableException":
1170
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1171
+ case "ThrottlingException":
1172
+ case "com.amazonaws.computeoptimizer#ThrottlingException":
1173
+ throw await de_ThrottlingExceptionRes(parsedOutput, context);
1174
+ default:
1175
+ const parsedBody = parsedOutput.body;
1176
+ return throwDefaultError({
1177
+ output,
1178
+ parsedBody,
1179
+ errorCode,
1180
+ });
1181
+ }
1182
+ };
1061
1183
  const de_GetRecommendationPreferencesCommand = async (output, context) => {
1062
1184
  if (output.statusCode >= 300) {
1063
1185
  return de_GetRecommendationPreferencesCommandError(output, context);
@@ -1612,6 +1734,13 @@ const de_GetLambdaFunctionRecommendationsResponse = (output, context) => {
1612
1734
  nextToken: smithy_client_1.expectString,
1613
1735
  });
1614
1736
  };
1737
+ const de_GetLicenseRecommendationsResponse = (output, context) => {
1738
+ return (0, smithy_client_1.take)(output, {
1739
+ errors: smithy_client_1._json,
1740
+ licenseRecommendations: (_) => de_LicenseRecommendations(_, context),
1741
+ nextToken: smithy_client_1.expectString,
1742
+ });
1743
+ };
1615
1744
  const de_GetRecommendationSummariesResponse = (output, context) => {
1616
1745
  return (0, smithy_client_1.take)(output, {
1617
1746
  nextToken: smithy_client_1.expectString,
@@ -1743,6 +1872,44 @@ const de_LambdaFunctionUtilizationMetrics = (output, context) => {
1743
1872
  });
1744
1873
  return retVal;
1745
1874
  };
1875
+ const de_LicenseRecommendation = (output, context) => {
1876
+ return (0, smithy_client_1.take)(output, {
1877
+ accountId: smithy_client_1.expectString,
1878
+ currentLicenseConfiguration: smithy_client_1._json,
1879
+ finding: smithy_client_1.expectString,
1880
+ findingReasonCodes: smithy_client_1._json,
1881
+ lastRefreshTimestamp: (_) => (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(_))),
1882
+ licenseRecommendationOptions: (_) => de_LicenseRecommendationOptions(_, context),
1883
+ lookbackPeriodInDays: smithy_client_1.limitedParseDouble,
1884
+ resourceArn: smithy_client_1.expectString,
1885
+ tags: smithy_client_1._json,
1886
+ });
1887
+ };
1888
+ const de_LicenseRecommendationOption = (output, context) => {
1889
+ return (0, smithy_client_1.take)(output, {
1890
+ licenseEdition: smithy_client_1.expectString,
1891
+ licenseModel: smithy_client_1.expectString,
1892
+ operatingSystem: smithy_client_1.expectString,
1893
+ rank: smithy_client_1.expectInt32,
1894
+ savingsOpportunity: (_) => de_SavingsOpportunity(_, context),
1895
+ });
1896
+ };
1897
+ const de_LicenseRecommendationOptions = (output, context) => {
1898
+ const retVal = (output || [])
1899
+ .filter((e) => e != null)
1900
+ .map((entry) => {
1901
+ return de_LicenseRecommendationOption(entry, context);
1902
+ });
1903
+ return retVal;
1904
+ };
1905
+ const de_LicenseRecommendations = (output, context) => {
1906
+ const retVal = (output || [])
1907
+ .filter((e) => e != null)
1908
+ .map((entry) => {
1909
+ return de_LicenseRecommendation(entry, context);
1910
+ });
1911
+ return retVal;
1912
+ };
1746
1913
  const de_MetricValues = (output, context) => {
1747
1914
  const retVal = (output || [])
1748
1915
  .filter((e) => e != null)
@@ -1,16 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolveRuntimeExtensions = void 0;
4
- const types_1 = require("@smithy/types");
4
+ const smithy_client_1 = require("@smithy/smithy-client");
5
5
  const asPartial = (t) => t;
6
6
  const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
7
- const clientConfiguration = {
8
- ...asPartial((0, types_1.getDefaultClientConfiguration)(runtimeConfig)),
7
+ const extensionConfiguration = {
8
+ ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)),
9
9
  };
10
- extensions.forEach((extension) => extension.configureClient(clientConfiguration));
10
+ extensions.forEach((extension) => extension.configure(extensionConfiguration));
11
11
  return {
12
12
  ...runtimeConfig,
13
- ...(0, types_1.resolveDefaultRuntimeConfig)(clientConfiguration),
13
+ ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration),
14
14
  };
15
15
  };
16
16
  exports.resolveRuntimeExtensions = resolveRuntimeExtensions;
@@ -6,6 +6,7 @@ import { ExportEBSVolumeRecommendationsCommand, } from "./commands/ExportEBSVolu
6
6
  import { ExportEC2InstanceRecommendationsCommand, } from "./commands/ExportEC2InstanceRecommendationsCommand";
7
7
  import { ExportECSServiceRecommendationsCommand, } from "./commands/ExportECSServiceRecommendationsCommand";
8
8
  import { ExportLambdaFunctionRecommendationsCommand, } from "./commands/ExportLambdaFunctionRecommendationsCommand";
9
+ import { ExportLicenseRecommendationsCommand, } from "./commands/ExportLicenseRecommendationsCommand";
9
10
  import { GetAutoScalingGroupRecommendationsCommand, } from "./commands/GetAutoScalingGroupRecommendationsCommand";
10
11
  import { GetEBSVolumeRecommendationsCommand, } from "./commands/GetEBSVolumeRecommendationsCommand";
11
12
  import { GetEC2InstanceRecommendationsCommand, } from "./commands/GetEC2InstanceRecommendationsCommand";
@@ -16,6 +17,7 @@ import { GetEffectiveRecommendationPreferencesCommand, } from "./commands/GetEff
16
17
  import { GetEnrollmentStatusCommand, } from "./commands/GetEnrollmentStatusCommand";
17
18
  import { GetEnrollmentStatusesForOrganizationCommand, } from "./commands/GetEnrollmentStatusesForOrganizationCommand";
18
19
  import { GetLambdaFunctionRecommendationsCommand, } from "./commands/GetLambdaFunctionRecommendationsCommand";
20
+ import { GetLicenseRecommendationsCommand, } from "./commands/GetLicenseRecommendationsCommand";
19
21
  import { GetRecommendationPreferencesCommand, } from "./commands/GetRecommendationPreferencesCommand";
20
22
  import { GetRecommendationSummariesCommand, } from "./commands/GetRecommendationSummariesCommand";
21
23
  import { PutRecommendationPreferencesCommand, } from "./commands/PutRecommendationPreferencesCommand";
@@ -29,6 +31,7 @@ const commands = {
29
31
  ExportEC2InstanceRecommendationsCommand,
30
32
  ExportECSServiceRecommendationsCommand,
31
33
  ExportLambdaFunctionRecommendationsCommand,
34
+ ExportLicenseRecommendationsCommand,
32
35
  GetAutoScalingGroupRecommendationsCommand,
33
36
  GetEBSVolumeRecommendationsCommand,
34
37
  GetEC2InstanceRecommendationsCommand,
@@ -39,6 +42,7 @@ const commands = {
39
42
  GetEnrollmentStatusCommand,
40
43
  GetEnrollmentStatusesForOrganizationCommand,
41
44
  GetLambdaFunctionRecommendationsCommand,
45
+ GetLicenseRecommendationsCommand,
42
46
  GetRecommendationPreferencesCommand,
43
47
  GetRecommendationSummariesCommand,
44
48
  PutRecommendationPreferencesCommand,
@@ -0,0 +1,42 @@
1
+ import { getEndpointPlugin } from "@smithy/middleware-endpoint";
2
+ import { getSerdePlugin } from "@smithy/middleware-serde";
3
+ import { Command as $Command } from "@smithy/smithy-client";
4
+ import { de_ExportLicenseRecommendationsCommand, se_ExportLicenseRecommendationsCommand, } from "../protocols/Aws_json1_0";
5
+ export { $Command };
6
+ export class ExportLicenseRecommendationsCommand extends $Command {
7
+ static getEndpointParameterInstructions() {
8
+ return {
9
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
10
+ Endpoint: { type: "builtInParams", name: "endpoint" },
11
+ Region: { type: "builtInParams", name: "region" },
12
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
13
+ };
14
+ }
15
+ constructor(input) {
16
+ super();
17
+ this.input = input;
18
+ }
19
+ resolveMiddleware(clientStack, configuration, options) {
20
+ this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, ExportLicenseRecommendationsCommand.getEndpointParameterInstructions()));
22
+ const stack = clientStack.concat(this.middlewareStack);
23
+ const { logger } = configuration;
24
+ const clientName = "ComputeOptimizerClient";
25
+ const commandName = "ExportLicenseRecommendationsCommand";
26
+ const handlerExecutionContext = {
27
+ logger,
28
+ clientName,
29
+ commandName,
30
+ inputFilterSensitiveLog: (_) => _,
31
+ outputFilterSensitiveLog: (_) => _,
32
+ };
33
+ const { requestHandler } = configuration;
34
+ return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
35
+ }
36
+ serialize(input, context) {
37
+ return se_ExportLicenseRecommendationsCommand(input, context);
38
+ }
39
+ deserialize(output, context) {
40
+ return de_ExportLicenseRecommendationsCommand(output, context);
41
+ }
42
+ }