@eggjs/aop-decorator
Version:
tegg aop decorator
21 lines • 1.98 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.PointcutAdviceInfoUtil = void 0;
const core_decorator_1 = require("@eggjs/core-decorator");
const tegg_types_1 = require("@eggjs/tegg-types");
class PointcutAdviceInfoUtil {
static addPointcutAdviceInfo(adviceInfo, clazz, method) {
const pointcutAdviceInfoList = core_decorator_1.MetadataUtil.initOwnArrayMetaData(tegg_types_1.POINTCUT_ADVICE_INFO_LIAR, clazz, []);
// FIXME: parent/child should has correct order
pointcutAdviceInfoList.unshift({
method,
adviceInfo,
});
}
static getPointcutAdviceInfoList(clazz, method) {
const pointcutAdviceInfoList = core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.POINTCUT_ADVICE_INFO_LIAR, clazz) || [];
return pointcutAdviceInfoList.filter(t => t.method === method).map(t => t.adviceInfo);
}
}
exports.PointcutAdviceInfoUtil = PointcutAdviceInfoUtil;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9pbnRjdXRBZHZpY2VJbmZvVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlsL1BvaW50Y3V0QWR2aWNlSW5mb1V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMERBQXFEO0FBQ3JELGtEQUE4RDtBQVE5RCxNQUFhLHNCQUFzQjtJQUNqQyxNQUFNLENBQUMscUJBQXFCLENBQUMsVUFBc0IsRUFBRSxLQUF3QixFQUFFLE1BQW1CO1FBQ2hHLE1BQU0sc0JBQXNCLEdBQUcsNkJBQVksQ0FBQyxvQkFBb0IsQ0FBcUIsc0NBQXlCLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzNILCtDQUErQztRQUMvQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUM7WUFDN0IsTUFBTTtZQUNOLFVBQVU7U0FDWCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLHlCQUF5QixDQUFDLEtBQXdCLEVBQUUsTUFBbUI7UUFDNUUsTUFBTSxzQkFBc0IsR0FBMEMsNkJBQVksQ0FBQyxXQUFXLENBQUMsc0NBQXlCLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZJLE9BQU8sc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEYsQ0FBQztDQUNGO0FBZEQsd0RBY0MifQ==