exodus-framework 2.0.896 → 2.0.897
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.
@@ -9,6 +9,7 @@ declare class SequelizeService extends Service {
|
|
9
9
|
models: StaticServiceModel<any>[];
|
10
10
|
connections: Map<string, Sequelize>;
|
11
11
|
initializedModels: Map<string, ModelStatic<any>>;
|
12
|
+
initializingdModels: Map<string, boolean>;
|
12
13
|
relations: Map<string, EnvDBHost>;
|
13
14
|
private isReconnecting;
|
14
15
|
private isMasterConnected;
|
@@ -36,6 +37,7 @@ declare class SequelizeService extends Service {
|
|
36
37
|
getRelation(tenantId: string): Promise<EnvDBHost>;
|
37
38
|
getModel<M extends ServiceModel<Model>>(model: StaticServiceModel<M>, tenantId: string): Promise<ModelStatic<M>>;
|
38
39
|
static registerModels(models: StaticServiceModel<any>[]): void;
|
40
|
+
initModels(): Promise<void>;
|
39
41
|
}
|
40
42
|
export default SequelizeService;
|
41
43
|
//# sourceMappingURL=sequelize.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sequelize.d.ts","sourceRoot":"","sources":["../../src/services/sequelize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAsB,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,OAAO,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAgB,MAAM,WAAW,CAAC;AAKpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAUlD,cAAM,gBAAiB,SAAQ,OAAO;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACzC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,kBAAkB,CAAS;IAGtB,aAAa;
|
1
|
+
{"version":3,"file":"sequelize.d.ts","sourceRoot":"","sources":["../../src/services/sequelize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAsB,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,OAAO,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAgB,MAAM,WAAW,CAAC;AAKpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAUlD,cAAM,gBAAiB,SAAQ,OAAO;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACzC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,kBAAkB,CAAS;IAGtB,aAAa;IAkBb,OAAO;IAaP,WAAW;IAMX,gBAAgB;IA+BhB,KAAK,CAAC,QAAQ,EAAE,MAAM;IAe7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IA8BhC,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAsBpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAiBvC,MAAM,CAAC,QAAQ,EAAE,MAAM;IA6BvB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS;IAkBpE,SAAS,CAAC,QAAQ,EAAE,MAAM;IAK1B,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,SAAI;IAe/B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IA2CpD,cAAc,CAAC,IAAI,EAAE;QAChC,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;KAClB;IA4BY,WAAW,CAAC,QAAQ,EAAE,MAAM;IAe5B,QAAQ,CAAC,CAAC,SAAS,YAAY,CAAC,KAAK,CAAC,EACjD,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC5B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;WAWZ,cAAc,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE;IAGjD,UAAU;CAOxB;AAED,eAAe,gBAAgB,CAAC"}
|
@@ -26,6 +26,7 @@ class SequelizeService extends _service.default {
|
|
26
26
|
models;
|
27
27
|
connections;
|
28
28
|
initializedModels;
|
29
|
+
initializingdModels;
|
29
30
|
relations;
|
30
31
|
isReconnecting = false; // Flag para evitar múltiplas tentativas simultâneas de reconexão
|
31
32
|
isMasterConnected = false; // Flag para controlar o estado da conexão
|
@@ -39,6 +40,7 @@ class SequelizeService extends _service.default {
|
|
39
40
|
this.masterDB = _database.masterDB;
|
40
41
|
this.connections = new Map();
|
41
42
|
this.initializedModels = new Map();
|
43
|
+
this.initializingdModels = new Map();
|
42
44
|
this.relations = new Map();
|
43
45
|
this.models = [...this.models, ..._models.NativeModels];
|
44
46
|
this.startAttemptDelay = 5 * 1000;
|
@@ -46,7 +48,13 @@ class SequelizeService extends _service.default {
|
|
46
48
|
}
|
47
49
|
async onStart() {
|
48
50
|
await super.onStart();
|
49
|
-
|
51
|
+
if (await this.connectDatabases()) {
|
52
|
+
this.log(`⌛️ Inicializando models`);
|
53
|
+
await this.initModels();
|
54
|
+
this.log(`✅ Models inicializados`);
|
55
|
+
return true;
|
56
|
+
}
|
57
|
+
return false;
|
50
58
|
}
|
51
59
|
async onStartFail() {
|
52
60
|
await super.onStartFail();
|
@@ -303,5 +311,13 @@ class SequelizeService extends _service.default {
|
|
303
311
|
static registerModels(models) {
|
304
312
|
this.getService().models = models;
|
305
313
|
}
|
314
|
+
async initModels() {
|
315
|
+
const tenants = await _models.EnvDBHost.findAll({
|
316
|
+
attributes: ['envUuid']
|
317
|
+
});
|
318
|
+
for (const model of this.models) {
|
319
|
+
tenants.forEach(async t => await this.getModel(model, t.envUuid));
|
320
|
+
}
|
321
|
+
}
|
306
322
|
}
|
307
323
|
var _default = exports.default = SequelizeService;
|