mirror of
https://github.com/CodePhiliaX/Chat2DB.git
synced 2025-07-28 10:12:39 +08:00
Support for custom drivers
This commit is contained in:
23
chat2db-server/chat2db-plugins/chat2db-mongodb/pom.xml
Normal file
23
chat2db-server/chat2db-plugins/chat2db-mongodb/pom.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>ai.chat2db</groupId>
|
||||
<artifactId>chat2db-plugins</artifactId>
|
||||
<version>${revision}</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>ai.chat2db</groupId>
|
||||
<artifactId>chat2db-spi</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<artifactId>chat2db-mongodb</artifactId>
|
||||
|
||||
|
||||
</project>
|
@ -0,0 +1,45 @@
|
||||
package ai.chat2db.plugin.mongodb;
|
||||
|
||||
import ai.chat2db.spi.DBManage;
|
||||
|
||||
public class MongodbManage implements DBManage {
|
||||
@Override
|
||||
public void connectDatabase(String database) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void modifyDatabase(String databaseName, String newDatabaseName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createDatabase(String databaseName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dropDatabase(String databaseName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createSchema(String databaseName, String schemaName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dropSchema(String databaseName, String schemaName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void modifySchema(String databaseName, String schemaName, String newSchemaName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dropTable(String databaseName, String schemaName, String tableName) {
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
package ai.chat2db.plugin.mongodb;
|
||||
|
||||
import ai.chat2db.spi.MetaData;
|
||||
import ai.chat2db.spi.jdbc.DefaultMetaService;
|
||||
|
||||
public class MongodbMetaData extends DefaultMetaService implements MetaData {
|
||||
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
package ai.chat2db.plugin.mongodb;
|
||||
|
||||
import ai.chat2db.plugin.mongodb.builder.DBConfigBuilder;
|
||||
import ai.chat2db.spi.DBManage;
|
||||
import ai.chat2db.spi.MetaData;
|
||||
import ai.chat2db.spi.Plugin;
|
||||
import ai.chat2db.spi.config.DBConfig;
|
||||
|
||||
public class MongodbPlugin implements Plugin {
|
||||
@Override
|
||||
public DBConfig getDBConfig() {
|
||||
return DBConfigBuilder.buildDBConfig();
|
||||
}
|
||||
|
||||
@Override
|
||||
public MetaData getMetaData() {
|
||||
return new MongodbMetaData();
|
||||
}
|
||||
|
||||
@Override
|
||||
public DBManage getDBManage() {
|
||||
return new MongodbManage();
|
||||
}
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
package ai.chat2db.plugin.mongodb.builder;
|
||||
|
||||
import ai.chat2db.spi.config.DBConfig;
|
||||
import ai.chat2db.spi.config.DriverConfig;
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
public class DBConfigBuilder {
|
||||
public static DBConfig buildDBConfig() {
|
||||
DBConfig dbConfig = new DBConfig();
|
||||
dbConfig.setName("Mongodb");
|
||||
dbConfig.setDbType("MONGODB");
|
||||
DriverConfig driverConfig = new DriverConfig();
|
||||
driverConfig.setJdbcDriver("mongo-jdbc-standalone-1.18.jar");
|
||||
driverConfig.setJdbcDriverClass("com.dbschema.MongoJdbcDriver");
|
||||
driverConfig.setDownloadJdbcDriverUrls(Lists.newArrayList("https://oss-chat2db.alibaba.com/lib/mongo-jdbc-standalone-1.18.jar"));
|
||||
driverConfig.setName(driverConfig.getJdbcDriver() + ":" + driverConfig.getJdbcDriverClass());
|
||||
dbConfig.setDefaultDriverConfig(driverConfig);
|
||||
dbConfig.setDriverConfigList(Lists.newArrayList(driverConfig));
|
||||
return dbConfig;
|
||||
}
|
||||
}
|
@ -0,0 +1 @@
|
||||
ai.chat2db.plugin.mongodb.MongodbPlugin
|
Reference in New Issue
Block a user