You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by wu...@apache.org on 2021/10/01 10:01:23 UTC
[shardingsphere] branch master updated: Move argument null check
from inner ShardingSphereDataSource to ShardingSphereDataSourceFactory
(#12870)
This is an automated email from the ASF dual-hosted git repository.
wuweijie 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 f660e46 Move argument null check from inner ShardingSphereDataSource to ShardingSphereDataSourceFactory (#12870)
f660e46 is described below
commit f660e463e2d0ffc2d910af77b330ddefee0c699d
Author: Liang Zhang <te...@163.com>
AuthorDate: Fri Oct 1 18:00:50 2021 +0800
Move argument null check from inner ShardingSphereDataSource to ShardingSphereDataSourceFactory (#12870)
---
.../shardingsphere/driver/api/ShardingSphereDataSourceFactory.java | 2 ++
.../driver/jdbc/core/datasource/ShardingSphereDataSource.java | 7 +++----
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/api/ShardingSphereDataSourceFactory.java b/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/api/ShardingSphereDataSourceFactory.java
index 098debc..76485a3 100644
--- a/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/api/ShardingSphereDataSourceFactory.java
+++ b/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/api/ShardingSphereDataSourceFactory.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.driver.api;
+import com.google.common.base.Preconditions;
import com.google.common.base.Strings;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
@@ -74,6 +75,7 @@ public final class ShardingSphereDataSourceFactory {
*/
public static DataSource createDataSource(final String schemaName, final ModeConfiguration modeConfig,
final Map<String, DataSource> dataSourceMap, final Collection<RuleConfiguration> configs, final Properties props) throws SQLException {
+ Preconditions.checkArgument(null != configs && !configs.isEmpty(), "ShardingSphere rule configuration cannot be null or empty.");
return new ShardingSphereDataSource(Strings.isNullOrEmpty(schemaName) ? DefaultSchema.LOGIC_NAME : schemaName, modeConfig, dataSourceMap, configs, props);
}
diff --git a/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/datasource/ShardingSphereDataSource.java b/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/datasource/ShardingSphereDataSource.java
index 0364d9e..9f6d14d 100644
--- a/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/datasource/ShardingSphereDataSource.java
+++ b/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/datasource/ShardingSphereDataSource.java
@@ -17,7 +17,6 @@
package org.apache.shardingsphere.driver.jdbc.core.datasource;
-import com.google.common.base.Preconditions;
import lombok.Getter;
import org.apache.shardingsphere.driver.jdbc.unsupported.AbstractUnsupportedOperationDataSource;
import org.apache.shardingsphere.driver.state.DriverStateContext;
@@ -35,9 +34,9 @@ import java.sql.Connection;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Collections;
-import java.util.Map;
import java.util.HashMap;
import java.util.LinkedList;
+import java.util.Map;
import java.util.Properties;
import java.util.stream.Collectors;
@@ -63,9 +62,9 @@ public final class ShardingSphereDataSource extends AbstractUnsupportedOperation
contextManager = createContextManager(schemaName, modeConfig, dataSourceMap, ruleConfigs, props, null == modeConfig || modeConfig.isOverwrite());
}
+ @SuppressWarnings("unchecked")
private void checkRuleConfiguration(final String schemaName, final Collection<RuleConfiguration> ruleConfigs) {
- Preconditions.checkArgument(null != ruleConfigs && !ruleConfigs.isEmpty(), "ShardingSphere rule configuration cannot be null or empty");
- ruleConfigs.forEach(each -> RuleConfigurationCheckerFactory.newInstance(each).ifPresent(checker -> checker.check(schemaName, each)));
+ ruleConfigs.forEach(each -> RuleConfigurationCheckerFactory.newInstance(each).ifPresent(optional -> optional.check(schemaName, each)));
}
private ContextManager createContextManager(final String schemaName, final ModeConfiguration modeConfig, final Map<String, DataSource> dataSourceMap,