@decorators/server
Version:
node decorators - decorators for express library
73 lines • 7.13 kB
JavaScript
;
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