@objectstack/metadata 4.0.3 → 4.0.4
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.
- package/dist/index.cjs +30 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +30 -11
- package/dist/index.js.map +1 -1
- package/dist/node.cjs +30 -11
- package/dist/node.cjs.map +1 -1
- package/dist/node.js +30 -11
- package/dist/node.js.map +1 -1
- package/package.json +4 -4
package/dist/index.cjs
CHANGED
|
@@ -2606,21 +2606,40 @@ var MetadataPlugin = class {
|
|
|
2606
2606
|
totalItems: totalLoaded,
|
|
2607
2607
|
registeredTypes: sortedTypes.length
|
|
2608
2608
|
});
|
|
2609
|
+
let driverBridged = false;
|
|
2609
2610
|
try {
|
|
2610
|
-
const
|
|
2611
|
-
|
|
2612
|
-
|
|
2613
|
-
|
|
2614
|
-
|
|
2611
|
+
const ql = ctx.getService("objectql");
|
|
2612
|
+
if (ql) {
|
|
2613
|
+
const tableName = this.manager["config"]?.tableName ?? "sys_metadata";
|
|
2614
|
+
const driver = ql.getDriverForObject?.(tableName);
|
|
2615
|
+
if (driver) {
|
|
2616
|
+
ctx.logger.info("[MetadataPlugin] Bridging driver to MetadataManager via ObjectQL routing", {
|
|
2617
|
+
tableName,
|
|
2618
|
+
driver: driver.name
|
|
2615
2619
|
});
|
|
2616
|
-
this.manager.setDatabaseDriver(
|
|
2617
|
-
|
|
2620
|
+
this.manager.setDatabaseDriver(driver);
|
|
2621
|
+
driverBridged = true;
|
|
2622
|
+
} else {
|
|
2623
|
+
ctx.logger.debug("[MetadataPlugin] ObjectQL could not resolve driver for metadata table", { tableName });
|
|
2618
2624
|
}
|
|
2619
2625
|
}
|
|
2620
|
-
} catch
|
|
2621
|
-
|
|
2622
|
-
|
|
2623
|
-
|
|
2626
|
+
} catch {
|
|
2627
|
+
}
|
|
2628
|
+
if (!driverBridged) {
|
|
2629
|
+
try {
|
|
2630
|
+
const services = ctx.getServices();
|
|
2631
|
+
for (const [serviceName, service] of services) {
|
|
2632
|
+
if (serviceName.startsWith("driver.") && service) {
|
|
2633
|
+
ctx.logger.info("[MetadataPlugin] Bridging driver to MetadataManager (fallback: first driver)", {
|
|
2634
|
+
driverService: serviceName
|
|
2635
|
+
});
|
|
2636
|
+
this.manager.setDatabaseDriver(service);
|
|
2637
|
+
break;
|
|
2638
|
+
}
|
|
2639
|
+
}
|
|
2640
|
+
} catch (e) {
|
|
2641
|
+
ctx.logger.debug("[MetadataPlugin] No driver service found", { error: e.message });
|
|
2642
|
+
}
|
|
2624
2643
|
}
|
|
2625
2644
|
try {
|
|
2626
2645
|
const realtimeService = ctx.getService("realtime");
|