@eggjs/controller-decorator
Version:
tegg controller decorator
83 lines • 11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const core_decorator_1 = require("@eggjs/core-decorator");
const tegg_common_util_1 = require("@eggjs/tegg-common-util");
const tegg_types_1 = require("@eggjs/tegg-types");
class MethodInfoUtil {
static setMethodControllerType(clazz, methodName, controllerType) {
const methodControllerMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.METHOD_CONTROLLER_TYPE_MAP, clazz, new Map());
methodControllerMap.set(methodName, controllerType);
}
static getMethodControllerType(clazz, methodName) {
const methodControllerMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_CONTROLLER_TYPE_MAP, clazz);
return methodControllerMap === null || methodControllerMap === void 0 ? void 0 : methodControllerMap.get(methodName);
}
static setMethodContextIndexInArgs(index, clazz, methodName) {
const methodContextIndexMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.METHOD_CONTEXT_INDEX, clazz, new Map());
methodContextIndexMap.set(methodName, index);
}
static getMethodContextIndex(clazz, methodName) {
const methodContextIndexMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_CONTEXT_INDEX, clazz);
return methodContextIndexMap === null || methodContextIndexMap === void 0 ? void 0 : methodContextIndexMap.get(methodName);
}
static addMethodMiddleware(middleware, clazz, methodName) {
const methodMiddlewareMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.METHOD_MIDDLEWARES, clazz, new Map());
const methodMiddlewares = tegg_common_util_1.MapUtil.getOrStore(methodMiddlewareMap, methodName, []);
methodMiddlewares.push(middleware);
}
static getMethodMiddlewares(clazz, methodName) {
const methodMiddlewareMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_MIDDLEWARES, clazz);
return (methodMiddlewareMap === null || methodMiddlewareMap === void 0 ? void 0 : methodMiddlewareMap.get(methodName)) || [];
}
static addMethodAopMiddleware(middleware, clazz, methodName) {
const methodMiddlewareMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.METHOD_AOP_MIDDLEWARES, clazz, new Map());
const methodMiddlewares = tegg_common_util_1.MapUtil.getOrStore(methodMiddlewareMap, methodName, []);
methodMiddlewares.push(middleware);
}
static getMethodAopMiddlewares(clazz, methodName) {
const methodMiddlewareMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_AOP_MIDDLEWARES, clazz);
return (methodMiddlewareMap === null || methodMiddlewareMap === void 0 ? void 0 : methodMiddlewareMap.get(methodName)) || [];
}
static setMethodAcl(code, clazz, methodName) {
const methodAclMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.METHOD_ACL, clazz, new Map());
methodAclMap.set(methodName, code);
}
static hasMethodAcl(clazz, methodName) {
const methodAclMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_ACL, clazz);
return !!(methodAclMap === null || methodAclMap === void 0 ? void 0 : methodAclMap.has(methodName));
}
static getMethodAcl(clazz, methodName) {
const methodAclMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_ACL, clazz);
return methodAclMap === null || methodAclMap === void 0 ? void 0 : methodAclMap.get(methodName);
}
static setMethodHosts(hosts, clazz, methodName) {
const methodControllerMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.METHOD_CONTROLLER_HOST, clazz, new Map());
methodControllerMap.set(methodName, hosts);
}
static getMethodHosts(clazz, methodName) {
const methodControllerMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_CONTROLLER_HOST, clazz);
return methodControllerMap === null || methodControllerMap === void 0 ? void 0 : methodControllerMap.get(methodName);
}
static getMethods(clazz) {
const methodControllerMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_CONTROLLER_TYPE_MAP, clazz);
return Array.from((methodControllerMap === null || methodControllerMap === void 0 ? void 0 : methodControllerMap.keys()) || []);
}
static shouldRegisterAopMiddlewarePointCut(clazz, methodName) {
const methodControllerMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_AOP_REGISTER_MAP, clazz);
return !(methodControllerMap && methodControllerMap.get(methodName));
}
static registerAopMiddlewarePointcut(clazz, methodName) {
const methodControllerMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.METHOD_AOP_REGISTER_MAP, clazz, new Map());
methodControllerMap.set(methodName, true);
}
static setMethodTimeout(timeout, clazz, methodName) {
const methodAclMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.METHOD_TIMEOUT_METADATA, clazz, new Map());
methodAclMap.set(methodName, timeout);
}
static getMethodTimeout(clazz, methodName) {
const methodAclMap = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.METHOD_TIMEOUT_METADATA, clazz);
return methodAclMap === null || methodAclMap === void 0 ? void 0 : methodAclMap.get(methodName);
}
}
exports.default = MethodInfoUtil;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWV0aG9kSW5mb1V0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbC9NZXRob2RJbmZvVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBEQUFxRDtBQUNyRCw4REFBa0Q7QUFDbEQsa0RBVTJCO0FBVzNCLE1BQXFCLGNBQWM7SUFDakMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLEtBQXdCLEVBQUUsVUFBa0IsRUFBRSxjQUFrQztRQUM3RyxNQUFNLG1CQUFtQixHQUFlLDZCQUFZLENBQUMsa0JBQWtCLENBQUMsdUNBQTBCLEVBQUUsS0FBSyxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUN0SCxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxNQUFNLENBQUMsdUJBQXVCLENBQUMsS0FBd0IsRUFBRSxVQUFrQjtRQUN6RSxNQUFNLG1CQUFtQixHQUEyQiw2QkFBWSxDQUFDLFdBQVcsQ0FBQyx1Q0FBMEIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNoSCxPQUFPLG1CQUFtQixhQUFuQixtQkFBbUIsdUJBQW5CLG1CQUFtQixDQUFFLEdBQUcsQ0FBQyxVQUFVLENBQW1DLENBQUM7SUFDaEYsQ0FBQztJQUVELE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxLQUFhLEVBQUUsS0FBd0IsRUFBRSxVQUFrQjtRQUM1RixNQUFNLHFCQUFxQixHQUEwQiw2QkFBWSxDQUFDLGtCQUFrQixDQUFDLGlDQUFvQixFQUFFLEtBQUssRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDN0gscUJBQXFCLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsTUFBTSxDQUFDLHFCQUFxQixDQUFDLEtBQXdCLEVBQUUsVUFBa0I7UUFDdkUsTUFBTSxxQkFBcUIsR0FBc0MsNkJBQVksQ0FBQyxXQUFXLENB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