Loading sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/jdbc/datasource/JDBCBackendDataSource.java +4 −3 Original line number Diff line number Diff line Loading @@ -51,9 +51,10 @@ public final class JDBCBackendDataSource implements BackendDataSource { for (Entry<String, DataSourceParameter> entry : dataSourceParameters.entrySet()) { try { result.put(entry.getKey(), getBackendDataSourceFactory(transactionType).build(entry.getKey(), entry.getValue())); } catch (Exception e) { // we just ignore the data source which can not be build. log.warn("can not build " + entry.getKey() + " failed with " + e); // CHECKSTYLE:OFF } catch (final Exception ex) { // CHECKSTYLE:ON log.warn("Can not build {} failed with {}", entry.getKey(), ex); } } return result; Loading sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/jdbc/datasource/JDBCBackendDataSourceFactory.java +1 −1 Original line number Diff line number Diff line Loading @@ -33,8 +33,8 @@ public interface JDBCBackendDataSourceFactory { * * @param dataSourceName data source name * @param dataSourceParameter data source connection parameter * @throws Exception when the data source can not be build * @return data source for connect backend databases * @throws Exception when the data source can not be build */ DataSource build(String dataSourceName, DataSourceParameter dataSourceParameter) throws Exception; } sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/jdbc/datasource/JDBCRawBackendDataSourceFactory.java +3 −1 Original line number Diff line number Diff line Loading @@ -31,10 +31,12 @@ import javax.sql.DataSource; */ public final class JDBCRawBackendDataSourceFactory implements JDBCBackendDataSourceFactory { private static final String DRIVER_CLASS_NAME = "com.mysql.jdbc.Driver"; @Override public DataSource build(final String dataSourceName, final DataSourceParameter dataSourceParameter) { HikariConfig config = new HikariConfig(); config.setDriverClassName("com.mysql.jdbc.Driver"); config.setDriverClassName(DRIVER_CLASS_NAME); config.setJdbcUrl(dataSourceParameter.getUrl()); config.setUsername(dataSourceParameter.getUsername()); config.setPassword(dataSourceParameter.getPassword()); Loading sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/jdbc/datasource/JDBCXABackendDataSourceFactory.java +4 −5 Original line number Diff line number Diff line Loading @@ -33,13 +33,12 @@ import javax.sql.XADataSource; */ public final class JDBCXABackendDataSourceFactory implements JDBCBackendDataSourceFactory { private static final String XA_DRIVER_CLASS_NAME = "com.mysql.jdbc.jdbc2.optional.MysqlXADataSource"; @Override public DataSource build(final String dataSourceName, final DataSourceParameter dataSourceParameter) throws Exception { String xaDataSourceClassName = "com.mysql.jdbc.jdbc2.optional.MysqlXADataSource"; XADataSource dataSource = (XADataSource) Class.forName(xaDataSourceClassName).newInstance(); XATransactionManager xaTransactionManager = (XATransactionManager) ShardingTransactionManagerRegistry.getInstance().getShardingTransactionManager(TransactionType.XA); XADataSource dataSource = (XADataSource) Class.forName(XA_DRIVER_CLASS_NAME).newInstance(); XATransactionManager xaTransactionManager = (XATransactionManager) ShardingTransactionManagerRegistry.getInstance().getShardingTransactionManager(TransactionType.XA); return xaTransactionManager.wrapDataSource(dataSource, dataSourceName, dataSourceParameter); } } sharding-transaction/src/main/java/io/shardingsphere/transaction/manager/xa/XATransactionManager.java +2 −1 Original line number Diff line number Diff line Loading @@ -30,14 +30,15 @@ import javax.sql.XADataSource; * @author zhangliang */ public interface XATransactionManager extends ShardingTransactionManager<XATransactionEvent> { /** * Wrap the specific {@link XADataSource} and enroll it with a JTA. * * @param dataSource the data source to wrap * @param dataSourceName the data source name * @param dataSourceParameter the data source parameter * @throws Exception if can not wrap the data source * @return the wrapped data source * @throws Exception if can not wrap the data source */ DataSource wrapDataSource(XADataSource dataSource, String dataSourceName, DataSourceParameter dataSourceParameter) throws Exception; } Loading
sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/jdbc/datasource/JDBCBackendDataSource.java +4 −3 Original line number Diff line number Diff line Loading @@ -51,9 +51,10 @@ public final class JDBCBackendDataSource implements BackendDataSource { for (Entry<String, DataSourceParameter> entry : dataSourceParameters.entrySet()) { try { result.put(entry.getKey(), getBackendDataSourceFactory(transactionType).build(entry.getKey(), entry.getValue())); } catch (Exception e) { // we just ignore the data source which can not be build. log.warn("can not build " + entry.getKey() + " failed with " + e); // CHECKSTYLE:OFF } catch (final Exception ex) { // CHECKSTYLE:ON log.warn("Can not build {} failed with {}", entry.getKey(), ex); } } return result; Loading
sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/jdbc/datasource/JDBCBackendDataSourceFactory.java +1 −1 Original line number Diff line number Diff line Loading @@ -33,8 +33,8 @@ public interface JDBCBackendDataSourceFactory { * * @param dataSourceName data source name * @param dataSourceParameter data source connection parameter * @throws Exception when the data source can not be build * @return data source for connect backend databases * @throws Exception when the data source can not be build */ DataSource build(String dataSourceName, DataSourceParameter dataSourceParameter) throws Exception; }
sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/jdbc/datasource/JDBCRawBackendDataSourceFactory.java +3 −1 Original line number Diff line number Diff line Loading @@ -31,10 +31,12 @@ import javax.sql.DataSource; */ public final class JDBCRawBackendDataSourceFactory implements JDBCBackendDataSourceFactory { private static final String DRIVER_CLASS_NAME = "com.mysql.jdbc.Driver"; @Override public DataSource build(final String dataSourceName, final DataSourceParameter dataSourceParameter) { HikariConfig config = new HikariConfig(); config.setDriverClassName("com.mysql.jdbc.Driver"); config.setDriverClassName(DRIVER_CLASS_NAME); config.setJdbcUrl(dataSourceParameter.getUrl()); config.setUsername(dataSourceParameter.getUsername()); config.setPassword(dataSourceParameter.getPassword()); Loading
sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/jdbc/datasource/JDBCXABackendDataSourceFactory.java +4 −5 Original line number Diff line number Diff line Loading @@ -33,13 +33,12 @@ import javax.sql.XADataSource; */ public final class JDBCXABackendDataSourceFactory implements JDBCBackendDataSourceFactory { private static final String XA_DRIVER_CLASS_NAME = "com.mysql.jdbc.jdbc2.optional.MysqlXADataSource"; @Override public DataSource build(final String dataSourceName, final DataSourceParameter dataSourceParameter) throws Exception { String xaDataSourceClassName = "com.mysql.jdbc.jdbc2.optional.MysqlXADataSource"; XADataSource dataSource = (XADataSource) Class.forName(xaDataSourceClassName).newInstance(); XATransactionManager xaTransactionManager = (XATransactionManager) ShardingTransactionManagerRegistry.getInstance().getShardingTransactionManager(TransactionType.XA); XADataSource dataSource = (XADataSource) Class.forName(XA_DRIVER_CLASS_NAME).newInstance(); XATransactionManager xaTransactionManager = (XATransactionManager) ShardingTransactionManagerRegistry.getInstance().getShardingTransactionManager(TransactionType.XA); return xaTransactionManager.wrapDataSource(dataSource, dataSourceName, dataSourceParameter); } }
sharding-transaction/src/main/java/io/shardingsphere/transaction/manager/xa/XATransactionManager.java +2 −1 Original line number Diff line number Diff line Loading @@ -30,14 +30,15 @@ import javax.sql.XADataSource; * @author zhangliang */ public interface XATransactionManager extends ShardingTransactionManager<XATransactionEvent> { /** * Wrap the specific {@link XADataSource} and enroll it with a JTA. * * @param dataSource the data source to wrap * @param dataSourceName the data source name * @param dataSourceParameter the data source parameter * @throws Exception if can not wrap the data source * @return the wrapped data source * @throws Exception if can not wrap the data source */ DataSource wrapDataSource(XADataSource dataSource, String dataSourceName, DataSourceParameter dataSourceParameter) throws Exception; }