import IDatabaseDiscovery from "./interfaces/IDatabaseDiscovery"; import MSSQLDatabaseDiscovery from "./MSSQLDatabaseDiscovery"; export default class MySQLDatabaseDiscoveryAdapter implements IDatabaseDiscovery { private mssqlDataBaseDiscovery; constructor(mssqlDataBaseDiscovery: MSSQLDatabaseDiscovery) { this.mssqlDataBaseDiscovery = mssqlDataBaseDiscovery } extractSchema = () => { this.mssqlDataBaseDiscovery.extractMySQLSchema(); } extractDatabaseSchema = async() => { const tableNames = await this.mssqlDataBaseDiscovery.getTableNames(); //Create a node by geting the combined extracedMSSQLSchema from each table //inside already build the schemas const results = this.mssqlDataBaseDiscovery.extractMSSQLSchema(tableNames); return (results); } //Get foreign key references details for the table. getForeignKeyReferences = async (MSSQLConfiguration) => { return await this.mssqlDataBaseDiscovery.getForeignKeyReferences(MSSQLConfiguration); } }