UNPKG

node-web-mvc

Version:
32 lines (31 loc) 1.29 kB
/** * @module ArgumentsResolvers * @description 参数解析器 */ import ServletContext from '../../http/ServletContext'; import MethodParameter from '../MethodParameter'; import HandlerMethodArgumentResolver from './HandlerMethodArgumentResolver'; import HandlerMethod from '../HandlerMethod'; import MessageConverter from '../../http/converts/MessageConverter'; import ContentNegotiationManager from '../../http/accept/ContentNegotiationManager'; export default class ArgumentsResolvers { private readonly registerResolvers; private readonly fallbackResolvers; private readonly messageConverter; constructor(messageConverter: MessageConverter, contentNegotialManager: ContentNegotiationManager); /** * 注册一个参数解析器 * @param resolver 解析器 */ addArgumentResolvers(resolver: HandlerMethodArgumentResolver): void; /** * 获取要执行函数的参数值信息 */ resolveArguments(servletContext: ServletContext, handler: HandlerMethod): Promise<any[]>; /** * 解析当前参数值 * @param { MethodParameter } parameter 当前参数 * @param { ServletContext } servletContext 当前请求上下文 */ resolveArgument(parameter: MethodParameter, servletContext: ServletContext): any; }