UNPKG

@eggjs/controller-decorator

Version:

tegg controller decorator

101 lines 12 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const core_decorator_1 = require("@eggjs/core-decorator"); const tegg_types_1 = require("@eggjs/tegg-types"); const tegg_common_util_1 = require("@eggjs/tegg-common-util"); const HTTPInfoUtil_1 = __importDefault(require("./HTTPInfoUtil")); class WebSocketInfoUtil { static setWebSocketPath(path, clazz) { core_decorator_1.MetadataUtil.defineMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_PATH, path, clazz); } static getWebSocketPath(clazz) { return core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_PATH, clazz); } static setWebSocketMethodPath(path, clazz, methodName) { const methodPathMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PATH_MAP, clazz, new Map()); methodPathMap.set(methodName, path); } static getWebSocketMethodPath(clazz, methodName) { const methodPathMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PATH_MAP, clazz); return methodPathMap === null || methodPathMap === void 0 ? void 0 : methodPathMap.get(methodName); } static setWebSocketMethodParamType(paramType, parameterIndex, clazz, methodName) { const methodParamMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PARAM_TYPE_MAP, clazz, new Map()); const paramMap = tegg_common_util_1.MapUtil.getOrStore(methodParamMap, methodName, new Map()); paramMap.set(parameterIndex, paramType); } static getParamIndexList(clazz, methodName) { const methodParamMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PARAM_TYPE_MAP, clazz); const paramMap = methodParamMap === null || methodParamMap === void 0 ? void 0 : methodParamMap.get(methodName); if (!paramMap) { return []; } return Array.from(paramMap.keys()); } static getCompatibleParamIndexList(clazz, methodName) { return Array.from(new Set([ ...this.getParamIndexList(clazz, methodName), ...HTTPInfoUtil_1.default.getParamIndexList(clazz, methodName), ])); } static getWebSocketMethodParamType(parameterIndex, clazz, methodName) { const methodParamMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PARAM_TYPE_MAP, clazz); const paramMap = methodParamMap === null || methodParamMap === void 0 ? void 0 : methodParamMap.get(methodName); return paramMap === null || paramMap === void 0 ? void 0 : paramMap.get(parameterIndex); } static getCompatibleMethodParamType(parameterIndex, clazz, methodName) { var _a; return (_a = this.getWebSocketMethodParamType(parameterIndex, clazz, methodName)) !== null && _a !== void 0 ? _a : this.fromHTTPParamType(HTTPInfoUtil_1.default.getHTTPMethodParamType(parameterIndex, clazz, methodName)); } static setWebSocketMethodParamName(paramName, parameterIndex, clazz, methodName) { const methodParamNameMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PARAM_NAME_MAP, clazz, new Map()); const paramMap = tegg_common_util_1.MapUtil.getOrStore(methodParamNameMap, methodName, new Map()); paramMap.set(parameterIndex, paramName); } static getWebSocketMethodParamName(parameterIndex, clazz, methodName) { const methodParamNameMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PARAM_NAME_MAP, clazz); const paramMap = methodParamNameMap === null || methodParamNameMap === void 0 ? void 0 : methodParamNameMap.get(methodName); return paramMap === null || paramMap === void 0 ? void 0 : paramMap.get(parameterIndex); } static getCompatibleMethodParamName(parameterIndex, clazz, methodName) { var _a; return (_a = this.getWebSocketMethodParamName(parameterIndex, clazz, methodName)) !== null && _a !== void 0 ? _a : HTTPInfoUtil_1.default.getHTTPMethodParamName(parameterIndex, clazz, methodName); } static getWebSocketMethodPriority(clazz, methodName) { const methodPriorityMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PRIORITY, clazz); return methodPriorityMap === null || methodPriorityMap === void 0 ? void 0 : methodPriorityMap.get(methodName); } static setWebSocketMethodPriority(priority, clazz, methodName) { const methodPriorityMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_METHOD_PRIORITY, clazz, new Map()); methodPriorityMap.set(methodName, priority); } static setWebSocketFetchMethodType(type, clazz, methodName) { const methodTypeMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_FETCH_METHOD_TYPE_MAP, clazz, new Map()); methodTypeMap.set(methodName, type); } static getWebSocketFetchMethodType(clazz, methodName) { const methodTypeMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.CONTROLLER_WEBSOCKET_FETCH_METHOD_TYPE_MAP, clazz); return methodTypeMap === null || methodTypeMap === void 0 ? void 0 : methodTypeMap.get(methodName); } static fromHTTPParamType(paramType) { switch (paramType) { case tegg_types_1.HTTPParamType.PARAM: return tegg_types_1.WebSocketParamType.PARAM; case tegg_types_1.HTTPParamType.QUERY: return tegg_types_1.WebSocketParamType.QUERY; case tegg_types_1.HTTPParamType.QUERIES: return tegg_types_1.WebSocketParamType.QUERIES; case tegg_types_1.HTTPParamType.HEADERS: return tegg_types_1.WebSocketParamType.HEADERS; case tegg_types_1.HTTPParamType.REQUEST: return tegg_types_1.WebSocketParamType.REQUEST; default: return undefined; } } } exports.default = WebSocketInfoUtil; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2ViU29ja2V0SW5mb1V0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbC9XZWJTb2NrZXRJbmZvVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBEQUFxRDtBQUNyRCxrREFXMkI7QUFDM0IsOERBQWtEO0FBQ2xELGtFQUEwQztBQVExQyxNQUFxQixpQkFBaUI7SUFDcEMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLElBQVksRUFBRSxLQUF3QjtRQUM1RCw2QkFBWSxDQUFDLGNBQWMsQ0FBQyxzQ0FBeUIsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUF3QjtRQUM5QyxPQUFPLDZCQUFZLENBQUMsV0FBVyxDQUFDLHNDQUF5QixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsSUFBWSxFQUFFLEtBQXdCLEVBQUUsVUFBa0I7UUFDdEYsTUFBTSxhQUFhLEdBQUcsNkJBQVksQ0FBQyxrQkFBa0IsQ0FBQyxpREFBb0MsRUFBRSxLQUFLLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzlHLGFBQWEsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsS0FBd0IsRUFBRSxVQUFrQjtRQUN4RSxNQUFNLGFBQWEsR0FBdUMsNkJBQVksQ0FBQyxXQUFXLENBQUMsaURBQW9DLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDaEksT0FBTyxhQUFhLGFBQWIsYUFBYSx1QkFBYixhQUFhLENBQUUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxNQUFNLENBQUMsMkJBQTJCLENBQUMsU0FBNkIsRUFBRSxjQUFzQixFQUFFLEtBQXdCLEVBQUUsVUFBa0I7UUFD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