server: simplify service manager, fixes dangling ref

This commit is contained in:
Jesse Chan
2021-05-09 03:34:42 +08:00
parent 28fe3afc03
commit aacca10475
7 changed files with 72 additions and 167 deletions
+3 -3
View File
@@ -3,13 +3,13 @@ import type TypedEmitter from 'typed-emitter';
import type {UserInDatabase} from '@shared/schema/Auth';
import type {UserServices} from '.';
import type {ServiceInstances} from '.';
class BaseService<E = unknown> extends (EventEmitter as {
new <T>(): TypedEmitter<T>;
})<E> {
user: UserInDatabase;
services?: UserServices;
services?: ServiceInstances;
constructor(user: UserInDatabase) {
super();
@@ -28,7 +28,7 @@ class BaseService<E = unknown> extends (EventEmitter as {
this.user = user;
}
updateServices(service?: UserServices) {
updateServices(service?: ServiceInstances) {
this.services = service;
this.onServicesUpdated();
}