@eggjs/controller-decorator
Version:
tegg controller decorator
26 lines • 2.69 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.WebSocketMethod = WebSocketMethod;
const node_assert_1 = __importDefault(require("node:assert"));
const tegg_types_1 = require("@eggjs/tegg-types");
const MethodInfoUtil_1 = __importDefault(require("../../util/MethodInfoUtil"));
const WebSocketInfoUtil_1 = __importDefault(require("../../util/WebSocketInfoUtil"));
function WebSocketMethod(param) {
return function (target, propertyKey) {
(0, node_assert_1.default)(typeof propertyKey === 'string', `[controller/${target.name}] expect method name be typeof string, but now is ${String(propertyKey)}`);
const controllerClazz = target.constructor;
const methodName = propertyKey;
MethodInfoUtil_1.default.setMethodControllerType(controllerClazz, methodName, tegg_types_1.ControllerType.WEBSOCKET);
WebSocketInfoUtil_1.default.setWebSocketMethodPath(param.path, controllerClazz, methodName);
if (param.priority !== undefined) {
WebSocketInfoUtil_1.default.setWebSocketMethodPriority(param.priority, controllerClazz, methodName);
}
if (param.timeout !== undefined) {
MethodInfoUtil_1.default.setMethodTimeout(param.timeout, controllerClazz, methodName);
}
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2ViU29ja2V0TWV0aG9kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RlY29yYXRvci93ZWJzb2NrZXQvV2ViU29ja2V0TWV0aG9kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBTUEsMENBZUM7QUFyQkQsOERBQWlDO0FBQ2pDLGtEQUFtRDtBQUVuRCwrRUFBdUQ7QUFDdkQscUZBQTZEO0FBRTdELFNBQWdCLGVBQWUsQ0FBQyxLQUE0QjtJQUMxRCxPQUFPLFVBQVMsTUFBVyxFQUFFLFdBQXdCO1FBQ25ELElBQUEscUJBQU0sRUFBQyxPQUFPLFdBQVcsS0FBSyxRQUFRLEVBQ3BDLGVBQWUsTUFBTSxDQUFDLElBQUkscURBQXFELE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEcsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFdBQWdDLENBQUM7UUFDaEUsTUFBTSxVQUFVLEdBQUcsV0FBcUIsQ0FBQztRQUN6Qyx3QkFBYyxDQUFDLHVCQUF1QixDQUFDLGVBQWUsRUFBRSxVQUFVLEVBQUUsMkJBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5RiwyQkFBaUIsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUNsRixJQUFJLEtBQUssQ0FBQyxRQUFRLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakMsMkJBQWlCLENBQUMsMEJBQTBCLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxlQUFlLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDNUYsQ0FBQztRQUNELElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNoQyx3QkFBYyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzlFLENBQUM7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIn0=