mira-app-core 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,14 +1,19 @@
1
1
  import { LibraryServerDataSQLite } from "mira-storage-sqlite";
2
2
  import { MiraBackend } from "./MiraBackend";
3
+ import { ServerPluginManager } from "./ServerPluginManager";
4
+ import { EventManager } from "./event-manager";
3
5
  export declare class LibraryStorage {
4
- libraryServices: LibraryServerDataSQLite[];
6
+ libraries: Record<string, {
7
+ libraryService?: LibraryServerDataSQLite;
8
+ pluginManager?: ServerPluginManager;
9
+ eventManager?: EventManager;
10
+ }>;
5
11
  backend: MiraBackend;
6
12
  constructor(backend: MiraBackend);
7
- all(): LibraryServerDataSQLite[];
8
13
  load(dbConfig: Record<string, any>): Promise<LibraryServerDataSQLite>;
9
14
  loadAll(): Promise<number>;
10
- get(libraryId: string): LibraryServerDataSQLite | undefined;
15
+ clear(): void;
16
+ get(libraryId: string): Record<string, any> | undefined;
11
17
  exists(libraryId: string): boolean;
12
- find(libraryId: string): LibraryServerDataSQLite | undefined;
13
18
  }
14
19
  //# sourceMappingURL=LibraryStorage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LibraryStorage.d.ts","sourceRoot":"","sources":["../src/LibraryStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,qBAAa,cAAc;IACzB,eAAe,EAAE,uBAAuB,EAAE,CAAM;IAChD,OAAO,EAAE,WAAW,CAAC;gBAET,OAAO,EAAE,WAAW;IAIhC,GAAG,IAAI,uBAAuB,EAAE;IAI1B,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAYrE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAchC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS;IAM3D,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAMlC,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS;CAK7D"}
1
+ {"version":3,"file":"LibraryStorage.d.ts","sourceRoot":"","sources":["../src/LibraryStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,qBAAa,cAAc;IACzB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QACxB,cAAc,CAAC,EAAE,uBAAuB,CAAC;QACzC,aAAa,CAAC,EAAE,mBAAmB,CAAC;QACpC,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B,CAAC,CAAM;IAER,OAAO,EAAE,WAAW,CAAC;gBAET,OAAO,EAAE,WAAW;IAI1B,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAiBrE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAchC,KAAK;IAKL,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS;IAIvD,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;CAInC"}
@@ -4,21 +4,23 @@ exports.LibraryStorage = void 0;
4
4
  const mira_storage_sqlite_1 = require("mira-storage-sqlite");
5
5
  const LibraryList_1 = require("./LibraryList");
6
6
  const ServerPluginManager_1 = require("./ServerPluginManager");
7
+ const event_manager_1 = require("./event-manager");
7
8
  class LibraryStorage {
8
9
  constructor(backend) {
9
- this.libraryServices = [];
10
+ this.libraries = {};
10
11
  this.backend = backend;
11
12
  }
12
- all() {
13
- return this.libraryServices;
14
- }
15
13
  async load(dbConfig) {
14
+ const libraryId = dbConfig.id;
16
15
  const dbServer = new mira_storage_sqlite_1.LibraryServerDataSQLite(dbConfig, { webSocketServer: this.backend.webSocketServer, httpServer: this.backend.httpServer });
16
+ this.libraries[libraryId] = {
17
+ libraryService: dbServer,
18
+ eventManager: new event_manager_1.EventManager()
19
+ };
17
20
  await dbServer.initialize();
18
21
  const pluginManager = new ServerPluginManager_1.ServerPluginManager({ server: this.backend.webSocketServer, dbService: dbServer, httpServer: this.backend.httpServer, pluginsDir: dbConfig.pluginsDir });
22
+ this.libraries[libraryId].pluginManager = pluginManager;
19
23
  await pluginManager.loadPlugins();
20
- dbServer.pluginManager = pluginManager;
21
- this.libraryServices.push(dbServer);
22
24
  return dbServer;
23
25
  }
24
26
  async loadAll() {
@@ -35,14 +37,16 @@ class LibraryStorage {
35
37
  }
36
38
  return success;
37
39
  }
40
+ clear() {
41
+ Object.values(this.libraries).forEach(lib => lib.libraryService.close());
42
+ this.libraries = {};
43
+ }
38
44
  get(libraryId) {
39
- return this.libraryServices.find((library) => library.getLibraryId() === libraryId);
45
+ return this.libraries[libraryId];
46
+ ;
40
47
  }
41
48
  exists(libraryId) {
42
- return this.libraryServices.some((library) => library.getLibraryId() === libraryId);
43
- }
44
- find(libraryId) {
45
- return this.libraryServices.find((library) => library.getLibraryId() === libraryId);
49
+ return libraryId in this.libraries;
46
50
  }
47
51
  }
48
52
  exports.LibraryStorage = LibraryStorage;
@@ -1 +1 @@
1
- {"version":3,"file":"LibraryStorage.js","sourceRoot":"","sources":["../src/LibraryStorage.ts"],"names":[],"mappings":";;;AAAA,6DAA8D;AAE9D,+CAAgD;AAChD,+DAA4D;AAE5D,MAAa,cAAc;IAIzB,YAAY,OAAoB;QAHhC,oBAAe,GAA8B,EAAE,CAAC;QAI9C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,GAAG;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAA6B;QACtC,MAAM,QAAQ,GAAG,IAAI,6CAAuB,CAAC,QAAQ,EAAE,EAAC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAC,CAAE,CAAC;QAC9I,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,aAAa,GAAG,IAAI,yCAAmB,CACzC,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CACpI,CAAC;QACJ,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC;QAClC,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC;QACvC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,OAAO,IAAI,MAAM,IAAA,6BAAe,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnE,IAAI,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC9C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzB,OAAO,EAAE,CAAC;YACZ,CAAC;YAAC,OAAM,GAAG,EAAC,CAAC;gBACX,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAClB,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,GAAG,CAAC,SAAiB;QACnB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAC9B,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,SAAS,CAClD,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,SAAiB;QACtB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAC9B,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,SAAS,CAClD,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,SAAiB;QACpB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,SAAS,CAAC,CAAC;IACtF,CAAC;CAGF;AAvDD,wCAuDC"}
1
+ {"version":3,"file":"LibraryStorage.js","sourceRoot":"","sources":["../src/LibraryStorage.ts"],"names":[],"mappings":";;;AAAA,6DAA8D;AAE9D,+CAAgD;AAChD,+DAA4D;AAC5D,mDAA+C;AAE/C,MAAa,cAAc;IASzB,YAAY,OAAoB;QARhC,cAAS,GAIJ,EAAE,CAAC;QAKN,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAA6B;QACtC,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,6CAAuB,CAAC,QAAQ,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAC/I,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG;YAC1B,cAAc,EAAE,QAAQ;YACxB,YAAY,EAAE,IAAI,4BAAY,EAAE;SAEjC,CAAA;QACD,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,aAAa,GAAG,IAAI,yCAAmB,CAC3C,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CACpI,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,aAAa,GAAG,aAAa,CAAC;QACxD,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC;QAClC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,OAAO,IAAI,MAAM,IAAA,6BAAe,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnE,IAAI,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC9C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzB,OAAO,EAAE,CAAC;YACZ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAClB,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK;QACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,cAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,GAAG,CAAC,SAAiB;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAAA,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,SAAiB;QACtB,OAAO,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;IACrC,CAAC;CAEF;AAzDD,wCAyDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ServerPluginManager.d.ts","sourceRoot":"","sources":["../src/ServerPluginManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAIxD,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,mBAAmB;IAC3B,UAAU,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,aAAa,CAA+B;IACpD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAM;gBAEvB,EAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAC,EAAE;QAAC,MAAM,EAAE,mBAAmB,CAAC;QAAC,SAAS,EAAE,kBAAkB,CAAC;QAAC,UAAU,EAAE,cAAc,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAC;IAmBtK,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAIlC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBlC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI;IAMnD,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAQ/C,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAInC,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;CAkBvD"}
1
+ {"version":3,"file":"ServerPluginManager.d.ts","sourceRoot":"","sources":["../src/ServerPluginManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAKxD,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,mBAAmB;IAC3B,UAAU,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,aAAa,CAA+B;IACpD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAM;gBAEvB,EAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAC,EAAE;QAAC,MAAM,EAAE,mBAAmB,CAAC;QAAC,SAAS,EAAE,kBAAkB,CAAC;QAAC,UAAU,EAAE,cAAc,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAC;IAmBtK,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAIlC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBlC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI;IAMnD,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAQ/C,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAInC,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;CAkBvD"}
@@ -1 +1 @@
1
- {"version":3,"file":"ServerPluginManager.js","sourceRoot":"","sources":["../src/ServerPluginManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,uCAAyB;AACzB,2CAA6B;AAQ7B,MAAa,mBAAmB;IAS5B,YAAY,EAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAgH;QAH9J,kBAAa,GAAqB,IAAI,GAAG,EAAE,CAAC;QACpD,WAAM,GAA0B,EAAE,CAAC;QAG/B,IAAI,CAAC,UAAU,GAAG,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAEpE,kCAAkC;QAClC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,8CAA8C;QAC9C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACzC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC;IACL,CAAC;IAED,eAAe;IACf,YAAY,CAAC,UAAkB;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,MAAM,GAAmB,IAAI,CAAC,KAAK,CACrC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,CACnD,CAAC;QAEF,KAAK,MAAM,YAAY,IAAI,MAAM,EAAE,CAAC;YAChC,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACvB,IAAI,CAAC;oBACD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;oBACjE,OAAO,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;oBAClD,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;oBACzC,IAAI,OAAO,YAAY,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBAC1C,MAAM,YAAY,CAAC,IAAI,CACvB,EAAC,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAC,CAAC,CAAA;oBACvG,CAAC;oBACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;oBACxD,OAAO,CAAC,GAAG,CAAC,kBAAkB,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;gBACvD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,OAAO,CAAC,KAAK,CAAC,yBAAyB,YAAY,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;gBACtE,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,cAAc,CAAC,MAA6B;QACxC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IAED,aAAa,CAAC,KAA0B;QACpC,IAAI,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAC,GAAG,KAAK,CAAC;QAC7C,IAAG,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,SAAS,CAAI,IAAY;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAoB;QAChC,MAAM,aAAa,GAAmB,IAAI,CAAC,KAAK,CAC5C,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,CACnD,CAAC;QAEF,MAAM,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3E,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;YACrB,aAAa,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC;QAC1C,CAAC;aAAM,CAAC;YACJ,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QAED,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAEjF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;CACJ;AA5FD,kDA4FC"}
1
+ {"version":3,"file":"ServerPluginManager.js","sourceRoot":"","sources":["../src/ServerPluginManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocketServer.d.ts","sourceRoot":"","sources":["../src/WebSocketServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,SAAS,EAAE,MAAM,IAAI,CAAC;AAM5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,GAAG,CAAC,CAAW;IACvB,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,EAAE,WAAW,CAAC;gBAET,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;IAOxC,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqC5C,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAgB3E,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAO3E,qBAAqB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAUrE,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAK/D,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAkBpF,OAAO,CAAC,gBAAgB;YA4BV,aAAa;IA4C3B,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAWtF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAK5B"}
1
+ {"version":3,"file":"WebSocketServer.d.ts","sourceRoot":"","sources":["../src/WebSocketServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,SAAS,EAAE,MAAM,IAAI,CAAC;AAM5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,GAAG,CAAC,CAAW;IACvB,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,EAAE,WAAW,CAAC;gBAET,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;IAOxC,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqC5C,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAa3E,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAO3E,qBAAqB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAUrE,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAK/D,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAepF,OAAO,CAAC,gBAAgB;YA4BV,aAAa;IAyC3B,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAWtF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAK5B"}
@@ -45,9 +45,9 @@ class MiraWebsocketServer {
45
45
  console.log(`[!]Serving at ws://localhost:${this.port}`);
46
46
  }
47
47
  broadcastToClients(eventName, eventData) {
48
- const dbService = this.libraries.all().find((library) => library.getLibraryId() === eventData.libraryId);
49
- if (dbService) {
50
- const eventManager = dbService.eventManager;
48
+ const obj = this.libraries.get(eventData.libraryId);
49
+ if (obj) {
50
+ const eventManager = obj.eventManager;
51
51
  if (eventManager) {
52
52
  eventManager.broadcast(eventName, new event_manager_1.EventArgs(eventName, eventData));
53
53
  }
@@ -74,9 +74,9 @@ class MiraWebsocketServer {
74
74
  }
75
75
  broadcastPluginEvent(eventName, data) {
76
76
  const libraryId = data?.libraryId ?? data?.message?.libraryId;
77
- const dbService = this.libraries.all().find((library) => library.getLibraryId() === libraryId);
78
- if (dbService) {
79
- const eventManager = dbService.eventManager;
77
+ const obj = this.libraries.get(libraryId);
78
+ if (obj) {
79
+ const eventManager = obj.eventManager;
80
80
  if (eventManager) {
81
81
  return eventManager.broadcast(eventName, new event_manager_1.EventArgs(eventName, data));
82
82
  }
@@ -123,15 +123,15 @@ class MiraWebsocketServer {
123
123
  });
124
124
  return;
125
125
  }
126
- const dbService = this.libraries.all().find((library) => library.getLibraryId() === libraryId);
127
- if (!dbService) {
126
+ const obj = this.libraries.get(libraryId);
127
+ if (!obj) {
128
128
  this.sendToWebsocket(ws, {
129
129
  status: 'error',
130
130
  msg: 'Library service not found'
131
131
  });
132
132
  return;
133
133
  }
134
- const handler = await WebSocketRouter_1.WebSocketRouter.route(this, dbService, ws, {
134
+ const handler = await WebSocketRouter_1.WebSocketRouter.route(this, obj.libraryService, ws, {
135
135
  ...row,
136
136
  ...payload
137
137
  });
@@ -157,7 +157,7 @@ class MiraWebsocketServer {
157
157
  }
158
158
  }
159
159
  async stop() {
160
- this.libraries.all().map(dbService => dbService.close());
160
+ this.libraries.clear();
161
161
  this.wss?.close();
162
162
  console.log('WebSocket server stopped');
163
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocketServer.js","sourceRoot":"","sources":["../src/WebSocketServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebSocketServer.js","sourceRoot":"","sources":["../src/WebSocketServer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LibraryHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/LibraryHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,qBAAa,cAAe,SAAQ,cAAc;gBAE9C,MAAM,EAAE,mBAAmB,EAC3B,SAAS,EAAE,kBAAkB,EAC7B,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,gBAAgB;IAKrB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAsC9B"}
1
+ {"version":3,"file":"LibraryHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/LibraryHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,qBAAa,cAAe,SAAQ,cAAc;gBAE9C,MAAM,EAAE,mBAAmB,EAC3B,SAAS,EAAE,kBAAkB,EAC7B,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,gBAAgB;IAKrB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAuC9B"}
@@ -14,9 +14,10 @@ class LibraryHandler extends MessageHandler_1.MessageHandler {
14
14
  let result;
15
15
  switch (action) {
16
16
  case 'open':
17
+ const obj = this.server.libraries.get(libraryId);
17
18
  // 初次握手,发送服务器所需字段信息
18
19
  this.server.sendToWebsocket(this.ws, { eventName: 'try_connect', data: {
19
- fields: this.dbService.pluginManager.fields, // 所有插件所需字段信息
20
+ fields: obj.pluginManager.fields, // 所有插件所需字段信息
20
21
  } });
21
22
  break;
22
23
  case 'connect':
@@ -1 +1 @@
1
- {"version":3,"file":"LibraryHandler.js","sourceRoot":"","sources":["../../src/handlers/LibraryHandler.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAMlD,MAAa,cAAe,SAAQ,+BAAc;IAChD,YACE,MAA2B,EAC3B,SAA6B,EAC7B,EAAa,EACb,OAAyB;QAEzB,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YACzC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;YACzB,MAAM,SAAS,GAAI,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;YACjD,IAAI,MAAM,CAAC;YACX,QAAO,MAAM,EAAE,CAAC;gBACd,KAAK,MAAM;oBACT,mBAAmB;oBACnB,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE;4BACrE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,aAAc,CAAC,MAAM,EAAE,aAAa;yBAC5D,EAAC,CAAC,CAAC;oBACJ,MAAM;gBACR,KAAK,SAAS;oBACZ,SAAS;oBACT,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,wBAAwB,EAAE;wBACzD,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,EAAE,EAAE,IAAI,CAAC,EAAE;qBACZ,CAAC,CAAC,IAAI,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;wBACjB,IAAG,EAAE,EAAC,CAAC;4BACL,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,gBAAgB;4BACpE,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;4BAC7E,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;wBACvE,CAAC;oBACH,CAAC,CAAC,CAAC;oBACH,MAAM;gBACR,KAAK,OAAO;oBACV,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;oBAC7C,MAAM;gBACR;oBACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;CACF;AAhDD,wCAgDC"}
1
+ {"version":3,"file":"LibraryHandler.js","sourceRoot":"","sources":["../../src/handlers/LibraryHandler.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAMlD,MAAa,cAAe,SAAQ,+BAAc;IAChD,YACE,MAA2B,EAC3B,SAA6B,EAC7B,EAAa,EACb,OAAyB;QAEzB,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YACzC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;YAChD,IAAI,MAAM,CAAC;YACX,QAAO,MAAM,EAAE,CAAC;gBACd,KAAK,MAAM;oBACT,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBACjD,mBAAmB;oBACnB,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE;4BACrE,MAAM,EAAE,GAAI,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa;yBACjD,EAAC,CAAC,CAAC;oBACJ,MAAM;gBACR,KAAK,SAAS;oBACZ,SAAS;oBACT,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,wBAAwB,EAAE;wBACzD,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,EAAE,EAAE,IAAI,CAAC,EAAE;qBACZ,CAAC,CAAC,IAAI,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;wBACjB,IAAG,EAAE,EAAC,CAAC;4BACL,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,gBAAgB;4BACpE,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;4BAC7E,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;wBACvE,CAAC;oBACH,CAAC,CAAC,CAAC;oBACH,MAAM;gBACR,KAAK,OAAO;oBACV,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;oBAC7C,MAAM;gBACR;oBACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;CACF;AAjDD,wCAiDC"}
package/package.json CHANGED
@@ -1,37 +1,37 @@
1
- {
2
- "name": "mira-app-core",
3
- "version": "1.0.2",
4
- "description": "Core library for Mira TypeScript project - provides base functionality without auto-execution",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "scripts": {
8
- "build": "tsc",
9
- "dev": "ts-node src/index.ts",
10
- "start:ts": "ts-node src/index.ts"
11
- },
12
- "keywords": [
13
- "mira",
14
- "core",
15
- "library"
16
- ],
17
- "author": "hunmer",
18
- "license": "ISC",
19
- "publishConfig": {
20
- "access": "public"
21
- },
22
- "devDependencies": {
23
- "@types/express": "^5.0.3",
24
- "@types/ws": "^8.18.1",
25
- "typescript": "^5.3.3",
26
- "ts-node": "^10.9.2"
27
- },
28
- "dependencies": {
29
- "@types/multer": "^2.0.0",
30
- "axios": "^1.11.0",
31
- "express": "^5.1.0",
32
- "mira-storage-sqlite": "^1.0.4",
33
- "multer": "^2.0.2",
34
- "queue": "^7.0.0",
35
- "ws": "^8.18.3"
36
- }
37
- }
1
+ {
2
+ "name": "mira-app-core",
3
+ "version": "1.0.3",
4
+ "description": "Core library for Mira TypeScript project - provides base functionality without auto-execution",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "scripts": {
8
+ "build": "tsc",
9
+ "dev": "ts-node src/index.ts",
10
+ "start:ts": "ts-node src/index.ts"
11
+ },
12
+ "keywords": [
13
+ "mira",
14
+ "core",
15
+ "library"
16
+ ],
17
+ "author": "hunmer",
18
+ "license": "ISC",
19
+ "publishConfig": {
20
+ "access": "public"
21
+ },
22
+ "devDependencies": {
23
+ "@types/express": "^5.0.3",
24
+ "@types/ws": "^8.18.1",
25
+ "typescript": "^5.3.3",
26
+ "ts-node": "^10.9.2"
27
+ },
28
+ "dependencies": {
29
+ "@types/multer": "^2.0.0",
30
+ "axios": "^1.11.0",
31
+ "express": "^5.1.0",
32
+ "mira-storage-sqlite": "file:D:/mira_typescript/packages/mira-storage-sqlite/",
33
+ "multer": "^2.0.2",
34
+ "queue": "^7.0.0",
35
+ "ws": "^8.18.3"
36
+ }
37
+ }
@@ -2,28 +2,35 @@ import { LibraryServerDataSQLite } from "mira-storage-sqlite";
2
2
  import { MiraBackend } from "./MiraBackend";
3
3
  import { getLibrarysJson } from './LibraryList';
4
4
  import { ServerPluginManager } from "./ServerPluginManager";
5
+ import { EventManager } from "./event-manager";
5
6
 
6
7
  export class LibraryStorage {
7
- libraryServices: LibraryServerDataSQLite[] = [];
8
+ libraries: Record<string, {
9
+ libraryService?: LibraryServerDataSQLite;
10
+ pluginManager?: ServerPluginManager;
11
+ eventManager?: EventManager;
12
+ }> = {};
13
+
8
14
  backend: MiraBackend;
9
15
 
10
16
  constructor(backend: MiraBackend) {
11
17
  this.backend = backend;
12
18
  }
13
19
 
14
- all(): LibraryServerDataSQLite[] {
15
- return this.libraryServices;
16
- }
17
-
18
20
  async load(dbConfig: Record<string, any>): Promise<LibraryServerDataSQLite> {
19
- const dbServer = new LibraryServerDataSQLite(dbConfig, {webSocketServer: this.backend.webSocketServer, httpServer: this.backend.httpServer} );
21
+ const libraryId = dbConfig.id;
22
+ const dbServer = new LibraryServerDataSQLite(dbConfig, { webSocketServer: this.backend.webSocketServer, httpServer: this.backend.httpServer });
23
+ this.libraries[libraryId] = {
24
+ libraryService: dbServer,
25
+ eventManager: new EventManager()
26
+
27
+ }
20
28
  await dbServer.initialize();
21
29
  const pluginManager = new ServerPluginManager(
22
- { server: this.backend.webSocketServer, dbService: dbServer, httpServer: this.backend.httpServer, pluginsDir: dbConfig.pluginsDir }
23
- );
30
+ { server: this.backend.webSocketServer, dbService: dbServer, httpServer: this.backend.httpServer, pluginsDir: dbConfig.pluginsDir }
31
+ );
32
+ this.libraries[libraryId].pluginManager = pluginManager;
24
33
  await pluginManager.loadPlugins();
25
- dbServer.pluginManager = pluginManager;
26
- this.libraryServices.push(dbServer);
27
34
  return dbServer;
28
35
  }
29
36
 
@@ -34,28 +41,24 @@ export class LibraryStorage {
34
41
  console.log('loading library ', library.name);
35
42
  await this.load(library);
36
43
  success++;
37
- } catch(err){
44
+ } catch (err) {
38
45
  console.log(err)
39
46
  }
40
47
  }
41
48
  return success;
42
49
  }
43
50
 
44
- get(libraryId: string): LibraryServerDataSQLite | undefined {
45
- return this.libraryServices.find(
46
- (library) => library.getLibraryId() === libraryId
47
- );
51
+ clear() {
52
+ Object.values(this.libraries).forEach(lib => lib.libraryService!.close());
53
+ this.libraries = {};
48
54
  }
49
55
 
50
- exists(libraryId: string): boolean {
51
- return this.libraryServices.some(
52
- (library) => library.getLibraryId() === libraryId
53
- );
56
+ get(libraryId: string): Record<string, any> | undefined {
57
+ return this.libraries[libraryId];;
54
58
  }
55
59
 
56
- find(libraryId: string): LibraryServerDataSQLite | undefined {
57
- return this.libraryServices.find((library) => library.getLibraryId() === libraryId);
60
+ exists(libraryId: string): boolean {
61
+ return libraryId in this.libraries;
58
62
  }
59
63
 
60
-
61
64
  }
@@ -4,6 +4,7 @@ import { ILibraryServerData } from 'mira-storage-sqlite';
4
4
  import { MiraWebsocketServer } from './WebSocketServer';
5
5
  import * as fs from 'fs';
6
6
  import * as path from 'path';
7
+ import { EventManager } from './event-manager';
7
8
 
8
9
  export interface PluginConfig {
9
10
  name: string;
@@ -56,7 +57,7 @@ export class ServerPluginManager {
56
57
  const pluginModule = require(pluginPath);
57
58
  if (typeof pluginModule.init === 'function') {
58
59
  await pluginModule.init(
59
- {pluginManager: this, server: this.server, dbService: this.dbService, httpServer: this.httpServer})
60
+ { pluginManager: this, server: this.server, dbService: this.dbService, httpServer: this.httpServer})
60
61
  }
61
62
  this.loadedPlugins.set(pluginConfig.name, pluginModule);
62
63
  console.log(`Loaded plugin: ${pluginConfig.name}`);
@@ -66,18 +66,15 @@ export class MiraWebsocketServer {
66
66
  }
67
67
 
68
68
  broadcastToClients(eventName: string, eventData: Record<string, any>): void {
69
- const dbService = this.libraries.all().find(
70
- (library) => library.getLibraryId() === eventData.libraryId
71
- );
72
- if (dbService) {
73
- const eventManager = dbService.eventManager;
69
+ const obj = this.libraries.get( eventData.libraryId);
70
+ if (obj) {
71
+ const eventManager = obj.eventManager;
74
72
  if (eventManager) {
75
73
  eventManager.broadcast(
76
74
  eventName,
77
75
  new EventArgs(eventName, eventData)
78
76
  );
79
77
  }
80
-
81
78
  }
82
79
  }
83
80
 
@@ -105,18 +102,15 @@ export class MiraWebsocketServer {
105
102
 
106
103
  broadcastPluginEvent(eventName: string, data: Record<string, any>): Promise<boolean> {
107
104
  const libraryId = data?.libraryId ?? data?.message?.libraryId;
108
- const dbService = this.libraries.all().find(
109
- (library) => library.getLibraryId() === libraryId
110
- );
111
- if (dbService) {
112
- const eventManager = dbService.eventManager;
105
+ const obj = this.libraries.get( libraryId);
106
+ if (obj) {
107
+ const eventManager = obj.eventManager;
113
108
  if (eventManager) {
114
109
  return eventManager.broadcast(
115
110
  eventName,
116
111
  new EventArgs(eventName, data)
117
112
  );
118
113
  }
119
-
120
114
  }
121
115
  return Promise.resolve(false);
122
116
  }
@@ -165,11 +159,8 @@ export class MiraWebsocketServer {
165
159
  return;
166
160
  }
167
161
 
168
- const dbService = this.libraries.all().find(
169
- (library) => library.getLibraryId() === libraryId
170
- );
171
-
172
- if (!dbService) {
162
+ const obj = this.libraries.get( libraryId);
163
+ if (!obj) {
173
164
  this.sendToWebsocket(ws, {
174
165
  status: 'error',
175
166
  msg: 'Library service not found'
@@ -177,7 +168,7 @@ export class MiraWebsocketServer {
177
168
  return;
178
169
  }
179
170
 
180
- const handler = await WebSocketRouter.route(this, dbService, ws, {
171
+ const handler = await WebSocketRouter.route(this, obj.libraryService, ws, {
181
172
  ...row,
182
173
  ...payload
183
174
  });
@@ -205,7 +196,7 @@ export class MiraWebsocketServer {
205
196
  }
206
197
 
207
198
  async stop(): Promise<void> {
208
- this.libraries.all().map(dbService => dbService.close());
199
+ this.libraries.clear();
209
200
  this.wss?.close();
210
201
  console.log('WebSocket server stopped');
211
202
  }
@@ -18,13 +18,14 @@ export class LibraryHandler extends MessageHandler {
18
18
  try {
19
19
  const { action, payload } = this.message;
20
20
  const { data } = payload;
21
- const libraryId = this.dbService.getLibraryId();
21
+ const libraryId = this.dbService.getLibraryId();
22
22
  let result;
23
23
  switch(action) {
24
24
  case 'open':
25
+ const obj = this.server.libraries.get(libraryId);
25
26
  // 初次握手,发送服务器所需字段信息
26
27
  this.server.sendToWebsocket(this.ws, { eventName: 'try_connect', data: {
27
- fields: this.dbService.pluginManager!.fields, // 所有插件所需字段信息
28
+ fields: obj!.pluginManager.fields, // 所有插件所需字段信息
28
29
  }});
29
30
  break;
30
31
  case 'connect':