This is an automated email from the ASF dual-hosted git repository.
panjuan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new 8b206f9ef5f Refactor XADataSourceDefinition (#26904)
8b206f9ef5f is described below
commit 8b206f9ef5f0d7a110d2f9f22565b39f58fe6ef4
Author: Liang Zhang <[email protected]>
AuthorDate: Tue Jul 11 18:33:50 2023 +0800
Refactor XADataSourceDefinition (#26904)
* Refactor XADataSourceDefinition
* Refactor XADataSourceDefinition
---
.../transaction/xa/jta/datasource/XATransactionDataSource.java | 3 ++-
.../xa/jta/datasource/properties/XADataSourceDefinition.java | 4 ++--
.../jta/datasource/properties/dialect/H2XADataSourceDefinition.java | 2 +-
.../datasource/properties/dialect/MariaDBXADataSourceDefinition.java | 2 +-
.../datasource/properties/dialect/MySQLXADataSourceDefinition.java | 2 +-
.../properties/dialect/OpenGaussXADataSourceDefinition.java | 2 +-
.../datasource/properties/dialect/OracleXADataSourceDefinition.java | 2 +-
.../properties/dialect/PostgreSQLXADataSourceDefinition.java | 2 +-
.../properties/dialect/SQLServerXADataSourceDefinition.java | 2 +-
.../apache/shardingsphere/transaction/xa/fixture/DataSourceUtils.java | 4 ++--
.../xa/jta/connection/dialect/H2XAConnectionWrapperTest.java | 3 ++-
.../xa/jta/connection/dialect/MariaDBXAConnectionWrapperTest.java | 3 ++-
.../xa/jta/connection/dialect/MySQLXAConnectionWrapperTest.java | 3 ++-
.../xa/jta/connection/dialect/OpenGaussXAConnectionWrapperTest.java | 3 ++-
.../xa/jta/connection/dialect/PostgreSQLXAConnectionWrapperTest.java | 3 ++-
15 files changed, 23 insertions(+), 17 deletions(-)
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/XATransactionDataSource.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/XATransactionDataSource.java
index 3c402f04a10..f99769a7a62 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/XATransactionDataSource.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/XATransactionDataSource.java
@@ -18,6 +18,7 @@
package org.apache.shardingsphere.transaction.xa.jta.datasource;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
+import org.apache.shardingsphere.infra.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.util.reflection.ReflectionUtils;
import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
import
org.apache.shardingsphere.transaction.xa.jta.connection.XAConnectionWrapper;
@@ -64,7 +65,7 @@ public final class XATransactionDataSource implements
AutoCloseable {
this.resourceName = resourceName;
this.dataSource = dataSource;
if
(!CONTAINER_DATASOURCE_NAMES.contains(dataSource.getClass().getSimpleName())) {
- xaDataSource = new
DataSourceSwapper(TypedSPILoader.getService(XADataSourceDefinition.class,
databaseType.getType())).swap(dataSource);
+ xaDataSource = new
DataSourceSwapper(DatabaseTypedSPILoader.getService(XADataSourceDefinition.class,
databaseType)).swap(dataSource);
xaConnectionWrapper =
TypedSPILoader.getService(XAConnectionWrapper.class, databaseType.getType());
this.xaTransactionManagerProvider = xaTransactionManagerProvider;
xaTransactionManagerProvider.registerRecoveryResource(resourceName,
xaDataSource);
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/XADataSourceDefinition.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/XADataSourceDefinition.java
index c44256949f3..1c89937f654 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/XADataSourceDefinition.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/XADataSourceDefinition.java
@@ -17,8 +17,8 @@
package org.apache.shardingsphere.transaction.xa.jta.datasource.properties;
+import org.apache.shardingsphere.infra.spi.DatabaseTypedSPI;
import org.apache.shardingsphere.infra.util.spi.annotation.SingletonSPI;
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
import java.util.Collection;
@@ -26,7 +26,7 @@ import java.util.Collection;
* XA data source definition.
*/
@SingletonSPI
-public interface XADataSourceDefinition extends TypedSPI {
+public interface XADataSourceDefinition extends DatabaseTypedSPI {
/**
* Get XA driver class names.
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/H2XADataSourceDefinition.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/H2XADataSourceDefinition.java
index 564bdc5f954..26fe03f6f2a 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/H2XADataSourceDefinition.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/H2XADataSourceDefinition.java
@@ -33,7 +33,7 @@ public final class H2XADataSourceDefinition implements
XADataSourceDefinition {
}
@Override
- public String getType() {
+ public String getDatabaseType() {
return "H2";
}
}
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/MariaDBXADataSourceDefinition.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/MariaDBXADataSourceDefinition.java
index 8e9ff67bced..0a0b5608235 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/MariaDBXADataSourceDefinition.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/MariaDBXADataSourceDefinition.java
@@ -33,7 +33,7 @@ public final class MariaDBXADataSourceDefinition implements
XADataSourceDefiniti
}
@Override
- public String getType() {
+ public String getDatabaseType() {
return "MariaDB";
}
}
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/MySQLXADataSourceDefinition.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/MySQLXADataSourceDefinition.java
index 3cfde3c7aec..ef18a3dd301 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/MySQLXADataSourceDefinition.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/MySQLXADataSourceDefinition.java
@@ -33,7 +33,7 @@ public final class MySQLXADataSourceDefinition implements
XADataSourceDefinition
}
@Override
- public String getType() {
+ public String getDatabaseType() {
return "MySQL";
}
}
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/OpenGaussXADataSourceDefinition.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/OpenGaussXADataSourceDefinition.java
index e5a52c548d3..3c4c2c4da17 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/OpenGaussXADataSourceDefinition.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/OpenGaussXADataSourceDefinition.java
@@ -33,7 +33,7 @@ public final class OpenGaussXADataSourceDefinition implements
XADataSourceDefini
}
@Override
- public String getType() {
+ public String getDatabaseType() {
return "openGauss";
}
}
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/OracleXADataSourceDefinition.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/OracleXADataSourceDefinition.java
index 01333bd87b9..5967eaea712 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/OracleXADataSourceDefinition.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/OracleXADataSourceDefinition.java
@@ -33,7 +33,7 @@ public final class OracleXADataSourceDefinition implements
XADataSourceDefinitio
}
@Override
- public String getType() {
+ public String getDatabaseType() {
return "Oracle";
}
}
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/PostgreSQLXADataSourceDefinition.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/PostgreSQLXADataSourceDefinition.java
index 20f16a9c0ff..1be167c8dc1 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/PostgreSQLXADataSourceDefinition.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/PostgreSQLXADataSourceDefinition.java
@@ -33,7 +33,7 @@ public final class PostgreSQLXADataSourceDefinition
implements XADataSourceDefin
}
@Override
- public String getType() {
+ public String getDatabaseType() {
return "PostgreSQL";
}
}
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/SQLServerXADataSourceDefinition.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/SQLServerXADataSourceDefinition.java
index 0e896c7bd99..3e132853a9c 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/SQLServerXADataSourceDefinition.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/jta/datasource/properties/dialect/SQLServerXADataSourceDefinition.java
@@ -33,7 +33,7 @@ public final class SQLServerXADataSourceDefinition implements
XADataSourceDefini
}
@Override
- public String getType() {
+ public String getDatabaseType() {
return "SQLServer";
}
}
diff --git
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/fixture/DataSourceUtils.java
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/fixture/DataSourceUtils.java
index d8004825d80..090720a6a0d 100644
---
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/fixture/DataSourceUtils.java
+++
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/fixture/DataSourceUtils.java
@@ -22,8 +22,8 @@ import com.zaxxer.hikari.HikariDataSource;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
+import org.apache.shardingsphere.infra.spi.DatabaseTypedSPILoader;
import
org.apache.shardingsphere.infra.util.exception.external.sql.type.generic.UnsupportedSQLOperationException;
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
import
org.apache.shardingsphere.transaction.xa.jta.datasource.properties.XADataSourceDefinition;
import
org.apache.shardingsphere.transaction.xa.jta.datasource.swapper.DataSourceSwapper;
@@ -69,7 +69,7 @@ public final class DataSourceUtils {
private static AtomikosDataSourceBean createAtomikosDataSourceBean(final
DatabaseType databaseType, final DataSource dataSource, final String
databaseName) {
AtomikosDataSourceBean result = new AtomikosDataSourceBean();
result.setUniqueResourceName(databaseName);
- result.setXaDataSource(new
DataSourceSwapper(TypedSPILoader.getService(XADataSourceDefinition.class,
databaseType.getType())).swap(dataSource));
+ result.setXaDataSource(new
DataSourceSwapper(DatabaseTypedSPILoader.getService(XADataSourceDefinition.class,
databaseType)).swap(dataSource));
return result;
}
diff --git
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/H2XAConnectionWrapperTest.java
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/H2XAConnectionWrapperTest.java
index 931a3dc0d81..1623988e910 100644
---
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/H2XAConnectionWrapperTest.java
+++
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/H2XAConnectionWrapperTest.java
@@ -19,6 +19,7 @@ package
org.apache.shardingsphere.transaction.xa.jta.connection.dialect;
import com.zaxxer.hikari.HikariDataSource;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
+import org.apache.shardingsphere.infra.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.transaction.xa.fixture.DataSourceUtils;
import
org.apache.shardingsphere.transaction.xa.jta.connection.XAConnectionWrapper;
@@ -51,7 +52,7 @@ class H2XAConnectionWrapperTest {
private XADataSource createXADataSource() {
DataSource dataSource = DataSourceUtils.build(HikariDataSource.class,
databaseType, "foo_ds");
- return new
DataSourceSwapper(TypedSPILoader.getService(XADataSourceDefinition.class,
databaseType.getType())).swap(dataSource);
+ return new
DataSourceSwapper(DatabaseTypedSPILoader.getService(XADataSourceDefinition.class,
databaseType)).swap(dataSource);
}
private Connection mockConnection() throws SQLException {
diff --git
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/MariaDBXAConnectionWrapperTest.java
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/MariaDBXAConnectionWrapperTest.java
index d2eccdb45e6..8c3cf9c1790 100644
---
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/MariaDBXAConnectionWrapperTest.java
+++
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/MariaDBXAConnectionWrapperTest.java
@@ -19,6 +19,7 @@ package
org.apache.shardingsphere.transaction.xa.jta.connection.dialect;
import com.zaxxer.hikari.HikariDataSource;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
+import org.apache.shardingsphere.infra.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.transaction.xa.fixture.DataSourceUtils;
import
org.apache.shardingsphere.transaction.xa.jta.connection.XAConnectionWrapper;
@@ -51,7 +52,7 @@ class MariaDBXAConnectionWrapperTest {
private XADataSource createXADataSource() {
DataSource dataSource = DataSourceUtils.build(HikariDataSource.class,
databaseType, "foo_ds");
- return new
DataSourceSwapper(TypedSPILoader.getService(XADataSourceDefinition.class,
databaseType.getType())).swap(dataSource);
+ return new
DataSourceSwapper(DatabaseTypedSPILoader.getService(XADataSourceDefinition.class,
databaseType)).swap(dataSource);
}
private Connection mockConnection() throws SQLException {
diff --git
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/MySQLXAConnectionWrapperTest.java
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/MySQLXAConnectionWrapperTest.java
index b8af059a221..2aa6e244252 100644
---
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/MySQLXAConnectionWrapperTest.java
+++
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/MySQLXAConnectionWrapperTest.java
@@ -20,6 +20,7 @@ package
org.apache.shardingsphere.transaction.xa.jta.connection.dialect;
import com.mysql.jdbc.jdbc2.optional.JDBC4MysqlXAConnection;
import com.zaxxer.hikari.HikariDataSource;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
+import org.apache.shardingsphere.infra.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.transaction.xa.fixture.DataSourceUtils;
import
org.apache.shardingsphere.transaction.xa.jta.connection.XAConnectionWrapper;
@@ -50,7 +51,7 @@ class MySQLXAConnectionWrapperTest {
private XADataSource createXADataSource() {
DataSource dataSource = DataSourceUtils.build(HikariDataSource.class,
databaseType, "foo_ds");
- return new
DataSourceSwapper(TypedSPILoader.getService(XADataSourceDefinition.class,
databaseType.getType())).swap(dataSource);
+ return new
DataSourceSwapper(DatabaseTypedSPILoader.getService(XADataSourceDefinition.class,
databaseType)).swap(dataSource);
}
private Connection mockConnection() throws SQLException {
diff --git
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/OpenGaussXAConnectionWrapperTest.java
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/OpenGaussXAConnectionWrapperTest.java
index 90cbe20e509..a018ce5b275 100644
---
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/OpenGaussXAConnectionWrapperTest.java
+++
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/OpenGaussXAConnectionWrapperTest.java
@@ -19,6 +19,7 @@ package
org.apache.shardingsphere.transaction.xa.jta.connection.dialect;
import com.zaxxer.hikari.HikariDataSource;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
+import org.apache.shardingsphere.infra.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.transaction.xa.fixture.DataSourceUtils;
import
org.apache.shardingsphere.transaction.xa.jta.connection.XAConnectionWrapper;
@@ -51,7 +52,7 @@ class OpenGaussXAConnectionWrapperTest {
private XADataSource createXADataSource() {
DataSource dataSource = DataSourceUtils.build(HikariDataSource.class,
databaseType, "foo_ds");
- return new
DataSourceSwapper(TypedSPILoader.getService(XADataSourceDefinition.class,
databaseType.getType())).swap(dataSource);
+ return new
DataSourceSwapper(DatabaseTypedSPILoader.getService(XADataSourceDefinition.class,
databaseType)).swap(dataSource);
}
private Connection mockConnection() throws SQLException {
diff --git
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/PostgreSQLXAConnectionWrapperTest.java
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/PostgreSQLXAConnectionWrapperTest.java
index 73ae6b5e06b..3dc5de9e633 100644
---
a/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/PostgreSQLXAConnectionWrapperTest.java
+++
b/kernel/transaction/type/xa/core/src/test/java/org/apache/shardingsphere/transaction/xa/jta/connection/dialect/PostgreSQLXAConnectionWrapperTest.java
@@ -19,6 +19,7 @@ package
org.apache.shardingsphere.transaction.xa.jta.connection.dialect;
import com.zaxxer.hikari.HikariDataSource;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
+import org.apache.shardingsphere.infra.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.transaction.xa.fixture.DataSourceUtils;
import
org.apache.shardingsphere.transaction.xa.jta.connection.XAConnectionWrapper;
@@ -51,7 +52,7 @@ class PostgreSQLXAConnectionWrapperTest {
private XADataSource createXADataSource() {
DataSource dataSource = DataSourceUtils.build(HikariDataSource.class,
databaseType, "foo_ds");
- return new
DataSourceSwapper(TypedSPILoader.getService(XADataSourceDefinition.class,
databaseType.getType())).swap(dataSource);
+ return new
DataSourceSwapper(DatabaseTypedSPILoader.getService(XADataSourceDefinition.class,
databaseType)).swap(dataSource);
}
private Connection mockConnection() throws SQLException {