UNPKG

@decorators/server

Version:

node decorators - decorators for express library

73 lines 7.13 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param = (this && this.__param) || function (paramIndex, decorator) { return function (target, key) { decorator(target, key, paramIndex); } }; var SocketsModule_1; Object.defineProperty(exports, "__esModule", { value: true }); exports.SocketsModule = void 0; const di_1 = require("@decorators/di"); const core_1 = require("../../core"); const helpers_1 = require("./helpers"); let SocketsModule = exports.SocketsModule = SocketsModule_1 = class SocketsModule { static create(adapter) { return { module: SocketsModule_1, providers: [{ provide: helpers_1.SOCKETS_ADAPTER, ...(adapter instanceof helpers_1.SocketsApplicationAdapter ? { useValue: adapter } : { useClass: adapter }), }], }; } constructor(server, adapter, eventResolver) { this.server = server; this.adapter = adapter; this.eventResolver = eventResolver; this.adapter.attachServer(this.server); } close() { return this.adapter.close(); } getAdapter() { return this.adapter; } getHttpServer() { return this.server; } async listen(port, options) { await this.eventResolver.resolve(); await this.adapter.listen(options); if (this.server.listening) { return; } return this.server.listen(port); } set(setting, value) { var _a, _b; (_b = (_a = this.adapter).set) === null || _b === void 0 ? void 0 : _b.call(_a, setting, value); } use(...args) { this.adapter.use(...args); } }; exports.SocketsModule = SocketsModule = SocketsModule_1 = __decorate([ (0, core_1.Module)({ providers: [ helpers_1.EventHandler, helpers_1.EventResolver, ], }), __param(0, (0, di_1.Inject)(core_1.APP_SERVER)), __param(1, (0, di_1.Inject)(helpers_1.SOCKETS_ADAPTER)), __metadata("design:paramtypes", [Object, helpers_1.SocketsApplicationAdapter, helpers_1.EventResolver]) ], SocketsModule); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGxhdGZvcm1zL3NvY2tldHMvc29ja2V0cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF3QztBQUV4QyxxQ0FBK0Y7QUFDL0YsdUNBQW9HO0FBUTdGLElBQU0sYUFBYSw2Q0FBbkIsTUFBTSxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxNQUFNLENBQ1gsT0FBZ0g7UUFFaEgsT0FBTztZQUNMLE1BQU0sRUFBRSxlQUFhO1lBQ3JCLFNBQVMsRUFBRSxDQUFDO29CQUNWLE9BQU8sRUFBRSx5QkFBZTtvQkFDeEIsR0FBRyxDQUFDLE9BQU8sWUFBWSxtQ0FBeUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDO2lCQUNsRyxDQUFDO1NBQ29CLENBQUM7SUFDM0IsQ0FBQztJQUVELFlBQzhCLE1BQWMsRUFDVCxPQUFrQyxFQUMzRCxhQUE0QjtRQUZSLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDVCxZQUFPLEdBQVAsT0FBTyxDQUEyQjtRQUMzRCxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUVwQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELEtBQUs7UUFDSCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFrQixDQUFDO0lBQ2pDLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLElBQWEsRUFBRSxPQUFnQjtRQUMxQyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFbkMsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVuQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFO1lBQ3pCLE9BQU87U0FDUjtRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELEdBQUcsQ0FBQyxPQUFlLEVBQUUsS0FBYzs7UUFDakMsTUFBQSxNQUFBLElBQUksQ0FBQyxPQUFPLEVBQUMsR0FBRyxtREFBRyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUFHLElBQWU7UUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0NBQ0YsQ0FBQTt3QkFwRFksYUFBYTtJQU56QixJQUFBLGFBQU0sRUFBQztRQUNOLFNBQVMsRUFBRTtZQUNULHNCQUFZO1lBQ1osdUJBQWE7U0FDZDtLQUNGLENBQUM7SUFlRyxXQUFBLElBQUEsV0FBTSxFQUFDLGlCQUFVLENBQUMsQ0FBQTtJQUNsQixXQUFBLElBQUEsV0FBTSxFQUFDLHlCQUFlLENBQUMsQ0FBQTs2Q0FBa0IsbUNBQXlCO1FBQzVDLHVCQUFhO0dBaEIzQixhQUFhLENBb0R6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCB9IGZyb20gJ0BkZWNvcmF0b3JzL2RpJztcblxuaW1wb3J0IHsgQVBQX1NFUlZFUiwgQ2xhc3NDb25zdHJ1Y3RvciwgTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBTZXJ2ZXIgfSBmcm9tICcuLi8uLi9jb3JlJztcbmltcG9ydCB7IEV2ZW50SGFuZGxlciwgRXZlbnRSZXNvbHZlciwgU09DS0VUU19BREFQVEVSLCBTb2NrZXRzQXBwbGljYXRpb25BZGFwdGVyIH0gZnJvbSAnLi9oZWxwZXJzJztcblxuQE1vZHVsZSh7XG4gIHByb3ZpZGVyczogW1xuICAgIEV2ZW50SGFuZGxlcixcbiAgICBFdmVudFJlc29sdmVyLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTb2NrZXRzTW9kdWxlIHtcbiAgc3RhdGljIGNyZWF0ZShcbiAgICBhZGFwdGVyOiBDbGFzc0NvbnN0cnVjdG9yPFNvY2tldHNBcHBsaWNhdGlvbkFkYXB0ZXI+IHwgSW5zdGFuY2VUeXBlPENsYXNzQ29uc3RydWN0b3I8U29ja2V0c0FwcGxpY2F0aW9uQWRhcHRlcj4+LFxuICApIHtcbiAgICByZXR1cm4ge1xuICAgICAgbW9kdWxlOiBTb2NrZXRzTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbe1xuICAgICAgICBwcm92aWRlOiBTT0NLRVRTX0FEQVBURVIsXG4gICAgICAgIC4uLihhZGFwdGVyIGluc3RhbmNlb2YgU29ja2V0c0FwcGxpY2F0aW9uQWRhcHRlciA/IHsgdXNlVmFsdWU6IGFkYXB0ZXIgfSA6IHsgdXNlQ2xhc3M6IGFkYXB0ZXIgfSksXG4gICAgICB9XSxcbiAgICB9IGFzIE1vZHVsZVdpdGhQcm92aWRlcnM7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEFQUF9TRVJWRVIpIHByaXZhdGUgc2VydmVyOiBTZXJ2ZXIsXG4gICAgQEluamVjdChTT0NLRVRTX0FEQVBURVIpIHByaXZhdGUgYWRhcHRlcjogU29ja2V0c0FwcGxpY2F0aW9uQWRhcHRlcixcbiAgICBwcml2YXRlIGV2ZW50UmVzb2x2ZXI6IEV2ZW50UmVzb2x2ZXIsXG4gICkge1xuICAgIHRoaXMuYWRhcHRlci5hdHRhY2hTZXJ2ZXIodGhpcy5zZXJ2ZXIpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWRhcHRlci5jbG9zZSgpO1xuICB9XG5cbiAgZ2V0QWRhcHRlcjxBZGFwdGVyIGV4dGVuZHMgU29ja2V0c0FwcGxpY2F0aW9uQWRhcHRlcj4oKSB7XG4gICAgcmV0dXJuIHRoaXMuYWRhcHRlciBhcyBBZGFwdGVyO1xuICB9XG5cbiAgZ2V0SHR0cFNlcnZlcigpIHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2ZXI7XG4gIH1cblxuICBhc3luYyBsaXN0ZW4ocG9ydD86IG51bWJlciwgb3B0aW9ucz86IG9iamVjdCkge1xuICAgIGF3YWl0IHRoaXMuZXZlbnRSZXNvbHZlci5yZXNvbHZlKCk7XG5cbiAgICBhd2FpdCB0aGlzLmFkYXB0ZXIubGlzdGVuKG9wdGlvbnMpO1xuXG4gICAgaWYgKHRoaXMuc2VydmVyLmxpc3RlbmluZykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnNlcnZlci5saXN0ZW4ocG9ydCk7XG4gIH1cblxuICBzZXQoc2V0dGluZzogc3RyaW5nLCB2YWx1ZTogdW5rbm93bikge1xuICAgIHRoaXMuYWRhcHRlci5zZXQ/LihzZXR0aW5nLCB2YWx1ZSk7XG4gIH1cblxuICB1c2UoLi4uYXJnczogdW5rbm93bltdKSB7XG4gICAgdGhpcy5hZGFwdGVyLnVzZSguLi5hcmdzKTtcbiAgfVxufVxuIl19