open-next-cdk
Version:
Deploy a NextJS app using OpenNext packaging to serverless AWS using CDK
49 lines (48 loc) • 2.1 kB
JavaScript
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
import { getSerdePlugin } from "@smithy/middleware-serde";
import { Command as $Command } from "@smithy/smithy-client";
import { SMITHY_CONTEXT_KEY, } from "@smithy/types";
import { LogoutRequestFilterSensitiveLog } from "../models/models_0";
import { de_LogoutCommand, se_LogoutCommand } from "../protocols/Aws_restJson1";
export { $Command };
export class LogoutCommand extends $Command {
static getEndpointParameterInstructions() {
return {
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
Endpoint: { type: "builtInParams", name: "endpoint" },
Region: { type: "builtInParams", name: "region" },
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
};
}
constructor(input) {
super();
this.input = input;
}
resolveMiddleware(clientStack, configuration, options) {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
this.middlewareStack.use(getEndpointPlugin(configuration, LogoutCommand.getEndpointParameterInstructions()));
const stack = clientStack.concat(this.middlewareStack);
const { logger } = configuration;
const clientName = "SSOClient";
const commandName = "LogoutCommand";
const handlerExecutionContext = {
logger,
clientName,
commandName,
inputFilterSensitiveLog: LogoutRequestFilterSensitiveLog,
outputFilterSensitiveLog: (_) => _,
[SMITHY_CONTEXT_KEY]: {
service: "SWBPortalService",
operation: "Logout",
},
};
const { requestHandler } = configuration;
return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
}
serialize(input, context) {
return se_LogoutCommand(input, context);
}
deserialize(output, context) {
return de_LogoutCommand(output, context);
}
}