refactor: simplify plugin registration by removing unnecessary object structure
This commit is contained in:
@ -81,9 +81,7 @@ export class QueryExecuterService {
|
|||||||
throw new Error(`Plugin ${plugin.name} not found`);
|
throw new Error(`Plugin ${plugin.name} not found`);
|
||||||
}
|
}
|
||||||
|
|
||||||
plugins.push(
|
plugins.push(await registeredPlugins[plugin.name](this, query));
|
||||||
await registeredPlugins[plugin.name].initMethod(this, query)
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const vm = new Vm({
|
const vm = new Vm({
|
||||||
|
|||||||
@ -3,20 +3,17 @@ import { DatabasePlugin } from "./plugins/database.plugin";
|
|||||||
import { Query } from "src/query/entities/query.entity";
|
import { Query } from "src/query/entities/query.entity";
|
||||||
|
|
||||||
export const registeredPlugins = {
|
export const registeredPlugins = {
|
||||||
db: {
|
db: async (service: QueryExecuterService, query: Query) => {
|
||||||
class: DatabasePlugin,
|
const databaseConnection =
|
||||||
initMethod: async (service: QueryExecuterService, query: Query) => {
|
await service.databaseManagerService.getConnectionOptions(
|
||||||
const databaseConnection =
|
query.project.id
|
||||||
await service.databaseManagerService.getConnectionOptions(
|
);
|
||||||
query.project.id
|
|
||||||
);
|
|
||||||
|
|
||||||
if (!databaseConnection) {
|
if (!databaseConnection) {
|
||||||
throw new Error("Database connection not found");
|
throw new Error("Database connection not found");
|
||||||
}
|
}
|
||||||
|
|
||||||
return DatabasePlugin.init("db", databaseConnection);
|
return DatabasePlugin.init("db", databaseConnection);
|
||||||
},
|
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user