UNPKG

azurite

Version:

An open source Azure Storage API compatible server

32 lines 1.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const operation_1 = tslib_1.__importDefault(require("../artifacts/operation")); const specifications_1 = tslib_1.__importDefault(require("../artifacts/specifications")); const OperationMismatchError_1 = tslib_1.__importDefault(require("../errors/OperationMismatchError")); const serializer_1 = require("../utils/serializer"); /** * SerializerMiddleware will serialize models into HTTP responses. * * @export * @param {Response} res * @param {NextFunction} next * @param {ILogger} logger * @param {Context} context */ function serializerMiddleware(context, res, next, logger) { logger.verbose(`SerializerMiddleware: Start serializing...`, context.contextId); if (context.operation === undefined) { const handlerError = new OperationMismatchError_1.default(); logger.error(`SerializerMiddleware: ${handlerError.message}`, context.contextId); return next(handlerError); } if (specifications_1.default[context.operation] === undefined) { logger.warn(`SerializerMiddleware: Cannot find serializer for operation ${operation_1.default[context.operation]}`, context.contextId); } (0, serializer_1.serialize)(context, res, specifications_1.default[context.operation], context.handlerResponses, logger) .then(next) .catch(next); } exports.default = serializerMiddleware; //# sourceMappingURL=serializer.middleware.js.map