@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/node.js
CHANGED
|
@@ -2561,21 +2561,40 @@ var MetadataPlugin = class {
|
|
|
2561
2561
|
totalItems: totalLoaded,
|
|
2562
2562
|
registeredTypes: sortedTypes.length
|
|
2563
2563
|
});
|
|
2564
|
+
let driverBridged = false;
|
|
2564
2565
|
try {
|
|
2565
|
-
const
|
|
2566
|
-
|
|
2567
|
-
|
|
2568
|
-
|
|
2569
|
-
|
|
2566
|
+
const ql = ctx.getService("objectql");
|
|
2567
|
+
if (ql) {
|
|
2568
|
+
const tableName = this.manager["config"]?.tableName ?? "sys_metadata";
|
|
2569
|
+
const driver = ql.getDriverForObject?.(tableName);
|
|
2570
|
+
if (driver) {
|
|
2571
|
+
ctx.logger.info("[MetadataPlugin] Bridging driver to MetadataManager via ObjectQL routing", {
|
|
2572
|
+
tableName,
|
|
2573
|
+
driver: driver.name
|
|
2570
2574
|
});
|
|
2571
|
-
this.manager.setDatabaseDriver(
|
|
2572
|
-
|
|
2575
|
+
this.manager.setDatabaseDriver(driver);
|
|
2576
|
+
driverBridged = true;
|
|
2577
|
+
} else {
|
|
2578
|
+
ctx.logger.debug("[MetadataPlugin] ObjectQL could not resolve driver for metadata table", { tableName });
|
|
2573
2579
|
}
|
|
2574
2580
|
}
|
|
2575
|
-
} catch
|
|
2576
|
-
|
|
2577
|
-
|
|
2578
|
-
|
|
2581
|
+
} catch {
|
|
2582
|
+
}
|
|
2583
|
+
if (!driverBridged) {
|
|
2584
|
+
try {
|
|
2585
|
+
const services = ctx.getServices();
|
|
2586
|
+
for (const [serviceName, service] of services) {
|
|
2587
|
+
if (serviceName.startsWith("driver.") && service) {
|
|
2588
|
+
ctx.logger.info("[MetadataPlugin] Bridging driver to MetadataManager (fallback: first driver)", {
|
|
2589
|
+
driverService: serviceName
|
|
2590
|
+
});
|
|
2591
|
+
this.manager.setDatabaseDriver(service);
|
|
2592
|
+
break;
|
|
2593
|
+
}
|
|
2594
|
+
}
|
|
2595
|
+
} catch (e) {
|
|
2596
|
+
ctx.logger.debug("[MetadataPlugin] No driver service found", { error: e.message });
|
|
2597
|
+
}
|
|
2579
2598
|
}
|
|
2580
2599
|
try {
|
|
2581
2600
|
const realtimeService = ctx.getService("realtime");
|