提交 3bc71fd8 编写于 作者: T terrymanu

for #2082, JDBCDriverURLRecognizer extends DatabaseTypeAwareSPI

上级 0064d983
......@@ -17,9 +17,7 @@
package org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.impl;
import org.apache.shardingsphere.core.database.DatabaseTypes;
import org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.spi.JDBCDriverURLRecognizer;
import org.apache.shardingsphere.spi.database.DatabaseType;
import java.util.Collection;
import java.util.Collections;
......@@ -32,8 +30,8 @@ import java.util.Collections;
public final class H2Recognizer implements JDBCDriverURLRecognizer {
@Override
public DatabaseType getDatabaseType() {
return DatabaseTypes.getActualDatabaseType("H2");
public String getDatabaseType() {
return "H2";
}
@Override
......
......@@ -17,9 +17,7 @@
package org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.impl;
import org.apache.shardingsphere.core.database.DatabaseTypes;
import org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.spi.JDBCDriverURLRecognizer;
import org.apache.shardingsphere.spi.database.DatabaseType;
import java.util.Collection;
import java.util.Collections;
......@@ -32,8 +30,8 @@ import java.util.Collections;
public final class MySQLRecognizer implements JDBCDriverURLRecognizer {
@Override
public DatabaseType getDatabaseType() {
return DatabaseTypes.getActualDatabaseType("MySQL");
public String getDatabaseType() {
return "MySQL";
}
@Override
......
......@@ -17,9 +17,7 @@
package org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.impl;
import org.apache.shardingsphere.core.database.DatabaseTypes;
import org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.spi.JDBCDriverURLRecognizer;
import org.apache.shardingsphere.spi.database.DatabaseType;
import java.util.Collection;
import java.util.Collections;
......@@ -32,8 +30,8 @@ import java.util.Collections;
public final class OracleRecognizer implements JDBCDriverURLRecognizer {
@Override
public DatabaseType getDatabaseType() {
return DatabaseTypes.getActualDatabaseType("Oracle");
public String getDatabaseType() {
return "Oracle";
}
@Override
......
......@@ -17,9 +17,7 @@
package org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.impl;
import org.apache.shardingsphere.core.database.DatabaseTypes;
import org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.spi.JDBCDriverURLRecognizer;
import org.apache.shardingsphere.spi.database.DatabaseType;
import java.util.Collection;
import java.util.Collections;
......@@ -32,8 +30,8 @@ import java.util.Collections;
public final class PostgreSQLRecognizer implements JDBCDriverURLRecognizer {
@Override
public DatabaseType getDatabaseType() {
return DatabaseTypes.getActualDatabaseType("PostgreSQL");
public String getDatabaseType() {
return "PostgreSQL";
}
@Override
......
......@@ -17,9 +17,7 @@
package org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.impl;
import org.apache.shardingsphere.core.database.DatabaseTypes;
import org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.spi.JDBCDriverURLRecognizer;
import org.apache.shardingsphere.spi.database.DatabaseType;
import java.util.Arrays;
import java.util.Collection;
......@@ -32,8 +30,8 @@ import java.util.Collection;
public final class SQLServerRecognizer implements JDBCDriverURLRecognizer {
@Override
public DatabaseType getDatabaseType() {
return DatabaseTypes.getActualDatabaseType("SQLServer");
public String getDatabaseType() {
return "SQLServer";
}
@Override
......
......@@ -17,7 +17,7 @@
package org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.recognizer.spi;
import org.apache.shardingsphere.spi.database.DatabaseType;
import org.apache.shardingsphere.spi.DatabaseTypeAwareSPI;
import java.util.Collection;
......@@ -26,14 +26,7 @@ import java.util.Collection;
*
* @author zhangliang
*/
public interface JDBCDriverURLRecognizer {
/**
* Get database type.
*
* @return database type
*/
DatabaseType getDatabaseType();
public interface JDBCDriverURLRecognizer extends DatabaseTypeAwareSPI {
/**
* Get JDBC URL prefixes.
......
......@@ -25,6 +25,7 @@ import org.apache.shardingsphere.api.config.RuleConfiguration;
import org.apache.shardingsphere.api.config.encryptor.EncryptRuleConfiguration;
import org.apache.shardingsphere.api.config.masterslave.MasterSlaveRuleConfiguration;
import org.apache.shardingsphere.api.config.sharding.ShardingRuleConfiguration;
import org.apache.shardingsphere.core.database.DatabaseTypes;
import org.apache.shardingsphere.orchestration.internal.eventbus.ShardingOrchestrationEventBus;
import org.apache.shardingsphere.orchestration.internal.registry.config.event.SchemaAddedEvent;
import org.apache.shardingsphere.orchestration.internal.registry.config.event.SchemaDeletedEvent;
......@@ -90,7 +91,8 @@ public final class LogicSchemas {
*/
public void init(final Collection<String> localSchemaNames, final Map<String, Map<String, YamlDataSourceParameter>> schemaDataSources,
final Map<String, RuleConfiguration> schemaRules, final boolean isUsingRegistry) {
databaseType = JDBCDriverURLRecognizerEngine.getJDBCDriverURLRecognizer(schemaDataSources.values().iterator().next().values().iterator().next().getUrl()).getDatabaseType();
databaseType = DatabaseTypes.getActualDatabaseType(
JDBCDriverURLRecognizerEngine.getJDBCDriverURLRecognizer(schemaDataSources.values().iterator().next().values().iterator().next().getUrl()).getDatabaseType());
initSchemas(localSchemaNames, schemaDataSources, schemaRules, isUsingRegistry);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册