/** * Agent Handler */ import { BUILDER_API_GATEWAY_MIDDLEWARE, ContentTypeEnum, ERROR_API_MIDDLEWARE, IDENTIFIERS as ID, IHandler, INPUT_OUTPUT_LOGS, IRollbar, SETUP_MIDDLEWARE, SSM_MIDDLEWARE, StatusCodeEnum, VALIDATION_MIDDLEWARE, } from "@kushki/core"; import { IDENTIFIERS } from "constant/Identifiers"; import { CONTAINER } from "infrastructure/Container"; import { SchemaEnum } from "infrastructure/SchemaEnum"; import * as middy from "middy"; import "reflect-metadata"; import { ITransferService } from "repository/ITransferService"; import * as Rollbar from "rollbar"; import "source-map-support/register"; const CORE: IHandler = CONTAINER.get(ID.IHandler); const ROLLBAR: Rollbar = CONTAINER.get(ID.IRollbar).init(); const HANDLER: middy.IMiddy = middy( ROLLBAR.lambdaHandler( CORE.run( IDENTIFIERS.TransferService, "agent", CONTAINER ) ) ) .use(SETUP_MIDDLEWARE(ROLLBAR)) .use(INPUT_OUTPUT_LOGS(ROLLBAR)) .use(ERROR_API_MIDDLEWARE(ROLLBAR)) .use(SSM_MIDDLEWARE(ROLLBAR)) .use( BUILDER_API_GATEWAY_MIDDLEWARE( ROLLBAR, undefined, StatusCodeEnum.Found, ContentTypeEnum.JSON, false, { Location: "redirectUrl" } ) ) .use( VALIDATION_MIDDLEWARE(ROLLBAR, { query: SchemaEnum.agent_request_parameters, }) ); export { HANDLER };