UNPKG

node-web-mvc

Version:
21 lines (20 loc) 1.04 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const UnsupportReturnValueHandlerError_1 = __importDefault(require("../../../errors/UnsupportReturnValueHandlerError")); class HandlerMethodReturnValueHandlerComposite { constructor(handlers) { this.returnvalueHandlers = handlers || []; } handleReturnValue(returnValue, returnType, servletContext, mavContainer) { const handler = this.returnvalueHandlers.find((m) => m.supportsReturnType(returnType)); if (!handler) { const path = servletContext.request.path; throw new UnsupportReturnValueHandlerError_1.default(`Unknow return value type:${returnType.parameterType} @${path}`, returnValue); } return handler.handleReturnValue(returnValue, returnType, servletContext, mavContainer); } } exports.default = HandlerMethodReturnValueHandlerComposite;