This is an automated email from the ASF dual-hosted git repository.

zhonghongsheng 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 0c544c125ff Remove useless codes of DataSourcePoolFieldMetaData 
(#28029)
0c544c125ff is described below

commit 0c544c125ffd5c8d8d39eb2f7194734cd66237fc
Author: Liang Zhang <[email protected]>
AuthorDate: Fri Aug 11 09:37:25 2023 +0800

    Remove useless codes of DataSourcePoolFieldMetaData (#28029)
    
    * Remove useless codes of DataSourcePoolFieldMetaData
    
    * Rename DataSourcePoolMetaDataFixture
    
    * Move DefaultDataSourcePoolFieldMetaData
    
    * Remove MockedDataSourcePoolFieldMetaData
    
    * Refactor C3P0DataSourcePoolMetaData
    
    * Remove MockedDataSourcePoolMetaData
    
    * Add default impl on DataSourcePoolMetaData
    
    * Refactor DataSourcePoolMetaData
    
    * Refactor DataSourcePoolMetaDataReflection
    
    * Refactor DataSourcePropertiesValidator
---
 .../pool/creator/DataSourcePoolCreator.java        |  3 +-
 .../pool/creator/DataSourceReflection.java         |  2 +-
 .../pool/metadata/DataSourcePoolFieldMetaData.java | 14 ----
 .../pool/metadata/DataSourcePoolMetaData.java      |  5 +-
 .../metadata/DataSourcePoolMetaDataReflection.java |  9 ++-
 .../DataSourcePoolPropertiesValidator.java         |  6 +-
 .../DefaultDataSourcePoolPropertiesValidator.java  | 30 ---------
 .../DefaultDataSourcePoolFieldMetaData.java        | 14 +---
 .../pool/props/DataSourcePropertiesValidator.java  | 14 ++--
 ...va => DataSourcePoolActiveDetectorFixture.java} |  2 +-
 ...ava => DataSourcePoolFieldMetaDataFixture.java} | 12 +---
 ...ata.java => DataSourcePoolMetaDataFixture.java} | 13 +---
 ...destroyer.detector.DataSourcePoolActiveDetector |  2 +-
 ...datasource.pool.metadata.DataSourcePoolMetaData |  2 +-
 .../metadata/C3P0DataSourcePoolFieldMetaData.java  | 10 ---
 .../c3p0/metadata/C3P0DataSourcePoolMetaData.java  |  7 --
 .../metadata/DBCPDataSourcePoolFieldMetaData.java  | 10 ---
 .../dbcp/metadata/DBCPDataSourcePoolMetaData.java  |  7 --
 .../metadata/DruidDataSourcePoolFieldMetaData.java | 10 ---
 .../metadata/DruidDataSourcePoolMetaData.java      |  7 --
 .../HikariDataSourcePoolFieldMetaData.java         | 10 ---
 .../metadata/HikariDataSourcePoolMetaData.java     |  5 +-
 .../HikariDataSourcePoolPropertiesValidator.java   |  2 +-
 .../resources/yaml/persist/data-source-foo.yaml    |  1 +
 .../storage/unit/ShowStorageUnitExecutorTest.java  |  4 +-
 .../MockedDataSourcePoolFieldMetaData.java         | 46 -------------
 .../metadata/MockedDataSourcePoolMetaData.java     | 75 ----------------------
 ...datasource.pool.metadata.DataSourcePoolMetaData | 18 ------
 28 files changed, 36 insertions(+), 304 deletions(-)

diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourcePoolCreator.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourcePoolCreator.java
index 11d77b62592..26ecf9b22b0 100644
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourcePoolCreator.java
+++ 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourcePoolCreator.java
@@ -266,8 +266,7 @@ public final class DataSourcePoolCreator {
         if (null != jdbcUrlPropertiesFieldName && 
customDataSourceProps.getProperties().containsKey(jdbcUrlPropertiesFieldName)) {
             Map<String, Object> jdbcUrlProps = (Map<String, Object>) 
customDataSourceProps.getProperties().get(jdbcUrlPropertiesFieldName);
             DataSourcePoolMetaDataReflection dataSourcePoolMetaDataReflection 
= new DataSourcePoolMetaDataReflection(targetDataSource, 
poolMetaData.getFieldMetaData());
-            Optional<Properties> jdbcConnectionPropOptional = 
dataSourcePoolMetaDataReflection.getJdbcConnectionProperties();
-            jdbcConnectionPropOptional.ifPresent(optional -> 
setJdbcUrlProperties(dataSourceReflection, optional, jdbcUrlProps, 
jdbcUrlPropertiesFieldName));
+            
dataSourcePoolMetaDataReflection.getJdbcConnectionProperties().ifPresent(optional
 -> setJdbcUrlProperties(dataSourceReflection, optional, jdbcUrlProps, 
jdbcUrlPropertiesFieldName));
         }
     }
     
diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourceReflection.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourceReflection.java
index be88be7bbc5..d74630d6b94 100644
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourceReflection.java
+++ 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourceReflection.java
@@ -25,7 +25,7 @@ import 
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropert
 import 
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
 import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData;
 import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaDataReflection;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DefaultDataSourcePoolFieldMetaData;
+import 
org.apache.shardingsphere.infra.datasource.pool.metadata.impl.DefaultDataSourcePoolFieldMetaData;
 import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
 
 import javax.sql.DataSource;
diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolFieldMetaData.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolFieldMetaData.java
index 8877d130e94..dce6efa55c0 100644
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolFieldMetaData.java
+++ 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolFieldMetaData.java
@@ -22,20 +22,6 @@ package 
org.apache.shardingsphere.infra.datasource.pool.metadata;
  */
 public interface DataSourcePoolFieldMetaData {
     
-    /**
-     * Get username field name.
-     *
-     * @return username field name
-     */
-    String getUsernameFieldName();
-    
-    /**
-     * Get password field name.
-     *
-     * @return password field name
-     */
-    String getPasswordFieldName();
-    
     /**
      * Get JDBC URL field name.
      *
diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolMetaData.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolMetaData.java
index 25ebbec04f6..a1cc0d93552 100644
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolMetaData.java
+++ 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolMetaData.java
@@ -22,6 +22,7 @@ import 
org.apache.shardingsphere.infra.spi.type.typed.TypedSPI;
 
 import java.util.Collection;
 import java.util.Map;
+import java.util.Optional;
 
 /**
  * Data source pool meta data.
@@ -69,6 +70,8 @@ public interface DataSourcePoolMetaData extends TypedSPI {
      * 
      * @return data source pool properties validator
      */
-    DataSourcePoolPropertiesValidator getDataSourcePoolPropertiesValidator();
+    default Optional<DataSourcePoolPropertiesValidator> 
getDataSourcePoolPropertiesValidator() {
+        return Optional.empty();
+    }
     
 }
diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolMetaDataReflection.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolMetaDataReflection.java
index 9f728527789..26a48847849 100644
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolMetaDataReflection.java
+++ 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolMetaDataReflection.java
@@ -54,11 +54,10 @@ public final class DataSourcePoolMetaDataReflection {
      * @return JDBC connection properties
      */
     public Optional<Properties> getJdbcConnectionProperties() {
-        Optional<Properties> properties = 
ReflectionUtils.getFieldValue(targetDataSource, 
dataSourcePoolFieldMetaData.getJdbcUrlPropertiesFieldName());
-        if (properties.isPresent()) {
-            return properties;
-        } else {
-            return ReflectionUtils.getFieldValueByGetMethod(targetDataSource, 
dataSourcePoolFieldMetaData.getJdbcUrlPropertiesFieldName());
+        if (null == 
dataSourcePoolFieldMetaData.getJdbcUrlPropertiesFieldName()) {
+            return Optional.empty();
         }
+        Optional<Properties> properties = 
ReflectionUtils.getFieldValue(targetDataSource, 
dataSourcePoolFieldMetaData.getJdbcUrlPropertiesFieldName());
+        return properties.isPresent() ? properties : 
ReflectionUtils.getFieldValueByGetMethod(targetDataSource, 
dataSourcePoolFieldMetaData.getJdbcUrlPropertiesFieldName());
     }
 }
diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolPropertiesValidator.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolPropertiesValidator.java
index ace867d2c55..2d107bc975a 100644
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolPropertiesValidator.java
+++ 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DataSourcePoolPropertiesValidator.java
@@ -25,9 +25,9 @@ import 
org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePropertie
 public interface DataSourcePoolPropertiesValidator {
     
     /**
-     * Check properties.
+     * Validate data source properties.
      * 
-     * @param dataSourceProps Data source properties
+     * @param dataSourceProps data source properties
      */
-    void validateProperties(DataSourceProperties dataSourceProps);
+    void validate(DataSourceProperties dataSourceProps);
 }
diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DefaultDataSourcePoolPropertiesValidator.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DefaultDataSourcePoolPropertiesValidator.java
deleted file mode 100644
index e47ba3e2907..00000000000
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DefaultDataSourcePoolPropertiesValidator.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.infra.datasource.pool.metadata;
-
-import 
org.apache.shardingsphere.infra.datasource.pool.props.DataSourceProperties;
-
-/**
- * Default data source pool properties validator.
- */
-public final class DefaultDataSourcePoolPropertiesValidator implements 
DataSourcePoolPropertiesValidator {
-    
-    @Override
-    public void validateProperties(final DataSourceProperties dataSourceProps) 
{
-    }
-}
diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DefaultDataSourcePoolFieldMetaData.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/impl/DefaultDataSourcePoolFieldMetaData.java
similarity index 86%
rename from 
infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DefaultDataSourcePoolFieldMetaData.java
rename to 
infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/impl/DefaultDataSourcePoolFieldMetaData.java
index 08a4fe39ce6..d2e37ce7ff2 100644
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/DefaultDataSourcePoolFieldMetaData.java
+++ 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/metadata/impl/DefaultDataSourcePoolFieldMetaData.java
@@ -15,23 +15,15 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.datasource.pool.metadata;
+package org.apache.shardingsphere.infra.datasource.pool.metadata.impl;
+
+import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolFieldMetaData;
 
 /**
  * Default data source pool field meta data.
  */
 public final class DefaultDataSourcePoolFieldMetaData implements 
DataSourcePoolFieldMetaData {
     
-    @Override
-    public String getUsernameFieldName() {
-        return "username";
-    }
-    
-    @Override
-    public String getPasswordFieldName() {
-        return "password";
-    }
-    
     @Override
     public String getJdbcUrlFieldName() {
         return "url";
diff --git 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/props/DataSourcePropertiesValidator.java
 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/props/DataSourcePropertiesValidator.java
index 63259f5fd07..0906f5c196c 100644
--- 
a/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/props/DataSourcePropertiesValidator.java
+++ 
b/infra/datasource/core/src/main/java/org/apache/shardingsphere/infra/datasource/pool/props/DataSourcePropertiesValidator.java
@@ -20,7 +20,6 @@ package org.apache.shardingsphere.infra.datasource.pool.props;
 import 
org.apache.shardingsphere.infra.datasource.pool.creator.DataSourcePoolCreator;
 import 
org.apache.shardingsphere.infra.datasource.pool.destroyer.DataSourcePoolDestroyer;
 import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolPropertiesValidator;
 import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
 
 import javax.sql.DataSource;
@@ -40,12 +39,12 @@ public final class DataSourcePropertiesValidator {
     /**
      * Validate data source properties map.
      * 
-     * @param dataSourcePropertiesMap data source properties map
+     * @param dataSourcePropsMap data source properties map
      * @return error messages
      */
-    public Collection<String> validate(final Map<String, DataSourceProperties> 
dataSourcePropertiesMap) {
+    public Collection<String> validate(final Map<String, DataSourceProperties> 
dataSourcePropsMap) {
         Collection<String> result = new LinkedList<>();
-        for (Entry<String, DataSourceProperties> entry : 
dataSourcePropertiesMap.entrySet()) {
+        for (Entry<String, DataSourceProperties> entry : 
dataSourcePropsMap.entrySet()) {
             try {
                 validateProperties(entry.getKey(), entry.getValue());
                 validateConnection(entry.getKey(), entry.getValue());
@@ -57,13 +56,12 @@ public final class DataSourcePropertiesValidator {
     }
     
     private void validateProperties(final String dataSourceName, final 
DataSourceProperties dataSourceProps) throws 
InvalidDataSourcePropertiesException {
-        Optional<DataSourcePoolMetaData> poolMetaData = 
TypedSPILoader.findService(DataSourcePoolMetaData.class, 
dataSourceProps.getDataSourceClassName());
-        if (!poolMetaData.isPresent()) {
+        Optional<DataSourcePoolMetaData> metaData = 
TypedSPILoader.findService(DataSourcePoolMetaData.class, 
dataSourceProps.getDataSourceClassName());
+        if (!metaData.isPresent()) {
             return;
         }
         try {
-            DataSourcePoolPropertiesValidator propertiesValidator = 
poolMetaData.get().getDataSourcePoolPropertiesValidator();
-            propertiesValidator.validateProperties(dataSourceProps);
+            
metaData.get().getDataSourcePoolPropertiesValidator().ifPresent(optional -> 
optional.validate(dataSourceProps));
         } catch (final IllegalArgumentException ex) {
             throw new InvalidDataSourcePropertiesException(dataSourceName, 
ex.getMessage());
         }
diff --git 
a/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/destroyer/fixture/MockedDataSourcePoolActiveDetector.java
 
b/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/destroyer/fixture/DataSourcePoolActiveDetectorFixture.java
similarity index 93%
rename from 
infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/destroyer/fixture/MockedDataSourcePoolActiveDetector.java
rename to 
infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/destroyer/fixture/DataSourcePoolActiveDetectorFixture.java
index 3f3bd387ff9..8b7fe843c0d 100644
--- 
a/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/destroyer/fixture/MockedDataSourcePoolActiveDetector.java
+++ 
b/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/destroyer/fixture/DataSourcePoolActiveDetectorFixture.java
@@ -24,7 +24,7 @@ import 
org.apache.shardingsphere.test.fixture.jdbc.MockedDataSource;
 import javax.sql.DataSource;
 import java.sql.SQLException;
 
-public final class MockedDataSourcePoolActiveDetector implements 
DataSourcePoolActiveDetector {
+public final class DataSourcePoolActiveDetectorFixture implements 
DataSourcePoolActiveDetector {
     
     @SneakyThrows(SQLException.class)
     @Override
diff --git 
a/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/MockedDataSourcePoolFieldMetaData.java
 
b/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/DataSourcePoolFieldMetaDataFixture.java
similarity index 80%
rename from 
infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/MockedDataSourcePoolFieldMetaData.java
rename to 
infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/DataSourcePoolFieldMetaDataFixture.java
index a88e5666b93..9fdffd7562f 100644
--- 
a/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/MockedDataSourcePoolFieldMetaData.java
+++ 
b/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/DataSourcePoolFieldMetaDataFixture.java
@@ -19,17 +19,7 @@ package 
org.apache.shardingsphere.infra.datasource.pool.metadata.fixture;
 
 import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolFieldMetaData;
 
-public final class MockedDataSourcePoolFieldMetaData implements 
DataSourcePoolFieldMetaData {
-    
-    @Override
-    public String getUsernameFieldName() {
-        return "username";
-    }
-    
-    @Override
-    public String getPasswordFieldName() {
-        return "password";
-    }
+public final class DataSourcePoolFieldMetaDataFixture implements 
DataSourcePoolFieldMetaData {
     
     @Override
     public String getJdbcUrlFieldName() {
diff --git 
a/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/MockedDataSourcePoolMetaData.java
 
b/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/DataSourcePoolMetaDataFixture.java
similarity index 77%
rename from 
infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/MockedDataSourcePoolMetaData.java
rename to 
infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/DataSourcePoolMetaDataFixture.java
index 459ada86677..732a64c0723 100644
--- 
a/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/MockedDataSourcePoolMetaData.java
+++ 
b/infra/datasource/core/src/test/java/org/apache/shardingsphere/infra/datasource/pool/metadata/fixture/DataSourcePoolMetaDataFixture.java
@@ -18,15 +18,13 @@
 package org.apache.shardingsphere.infra.datasource.pool.metadata.fixture;
 
 import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolPropertiesValidator;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DefaultDataSourcePoolPropertiesValidator;
 
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
-public final class MockedDataSourcePoolMetaData implements 
DataSourcePoolMetaData {
+public final class DataSourcePoolMetaDataFixture implements 
DataSourcePoolMetaData {
     
     @Override
     public Map<String, Object> getDefaultProperties() {
@@ -55,13 +53,8 @@ public final class MockedDataSourcePoolMetaData implements 
DataSourcePoolMetaDat
     }
     
     @Override
-    public MockedDataSourcePoolFieldMetaData getFieldMetaData() {
-        return new MockedDataSourcePoolFieldMetaData();
-    }
-    
-    @Override
-    public DataSourcePoolPropertiesValidator 
getDataSourcePoolPropertiesValidator() {
-        return new DefaultDataSourcePoolPropertiesValidator();
+    public DataSourcePoolFieldMetaDataFixture getFieldMetaData() {
+        return new DataSourcePoolFieldMetaDataFixture();
     }
     
     @Override
diff --git 
a/infra/datasource/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.destroyer.detector.DataSourcePoolActiveDetector
 
b/infra/datasource/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.destroyer.detector.DataSourcePoolActiveDetector
index 260927a6ce7..7c4633c0f0a 100644
--- 
a/infra/datasource/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.destroyer.detector.DataSourcePoolActiveDetector
+++ 
b/infra/datasource/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.destroyer.detector.DataSourcePoolActiveDetector
@@ -15,4 +15,4 @@
 # limitations under the License.
 #
 
-org.apache.shardingsphere.infra.datasource.pool.destroyer.fixture.MockedDataSourcePoolActiveDetector
+org.apache.shardingsphere.infra.datasource.pool.destroyer.fixture.DataSourcePoolActiveDetectorFixture
diff --git 
a/infra/datasource/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData
 
b/infra/datasource/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData
index 0b4c9b84954..047818918ec 100644
--- 
a/infra/datasource/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData
+++ 
b/infra/datasource/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData
@@ -15,4 +15,4 @@
 # limitations under the License.
 #
 
-org.apache.shardingsphere.infra.datasource.pool.metadata.fixture.MockedDataSourcePoolMetaData
+org.apache.shardingsphere.infra.datasource.pool.metadata.fixture.DataSourcePoolMetaDataFixture
diff --git 
a/infra/datasource/type/c3p0/src/main/java/org/apache/shardingsphere/infra/datasource/c3p0/metadata/C3P0DataSourcePoolFieldMetaData.java
 
b/infra/datasource/type/c3p0/src/main/java/org/apache/shardingsphere/infra/datasource/c3p0/metadata/C3P0DataSourcePoolFieldMetaData.java
index e75df600e64..550a9ff703e 100644
--- 
a/infra/datasource/type/c3p0/src/main/java/org/apache/shardingsphere/infra/datasource/c3p0/metadata/C3P0DataSourcePoolFieldMetaData.java
+++ 
b/infra/datasource/type/c3p0/src/main/java/org/apache/shardingsphere/infra/datasource/c3p0/metadata/C3P0DataSourcePoolFieldMetaData.java
@@ -24,16 +24,6 @@ import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolFi
  */
 public final class C3P0DataSourcePoolFieldMetaData implements 
DataSourcePoolFieldMetaData {
     
-    @Override
-    public String getUsernameFieldName() {
-        return "user";
-    }
-    
-    @Override
-    public String getPasswordFieldName() {
-        return "password";
-    }
-    
     @Override
     public String getJdbcUrlFieldName() {
         return "jdbcUrl";
diff --git 
a/infra/datasource/type/c3p0/src/main/java/org/apache/shardingsphere/infra/datasource/c3p0/metadata/C3P0DataSourcePoolMetaData.java
 
b/infra/datasource/type/c3p0/src/main/java/org/apache/shardingsphere/infra/datasource/c3p0/metadata/C3P0DataSourcePoolMetaData.java
index b379acfcc57..4972c28cf86 100644
--- 
a/infra/datasource/type/c3p0/src/main/java/org/apache/shardingsphere/infra/datasource/c3p0/metadata/C3P0DataSourcePoolMetaData.java
+++ 
b/infra/datasource/type/c3p0/src/main/java/org/apache/shardingsphere/infra/datasource/c3p0/metadata/C3P0DataSourcePoolMetaData.java
@@ -18,8 +18,6 @@
 package org.apache.shardingsphere.infra.datasource.c3p0.metadata;
 
 import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolPropertiesValidator;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DefaultDataSourcePoolPropertiesValidator;
 
 import java.util.Collection;
 import java.util.HashMap;
@@ -102,9 +100,4 @@ public final class C3P0DataSourcePoolMetaData implements 
DataSourcePoolMetaData
     public String getType() {
         return "com.mchange.v2.c3p0.ComboPooledDataSource";
     }
-    
-    @Override
-    public DataSourcePoolPropertiesValidator 
getDataSourcePoolPropertiesValidator() {
-        return new DefaultDataSourcePoolPropertiesValidator();
-    }
 }
diff --git 
a/infra/datasource/type/dbcp/src/main/java/org/apache/shardingsphere/infra/datasource/dbcp/metadata/DBCPDataSourcePoolFieldMetaData.java
 
b/infra/datasource/type/dbcp/src/main/java/org/apache/shardingsphere/infra/datasource/dbcp/metadata/DBCPDataSourcePoolFieldMetaData.java
index 53f5004d8ec..823cb75666d 100644
--- 
a/infra/datasource/type/dbcp/src/main/java/org/apache/shardingsphere/infra/datasource/dbcp/metadata/DBCPDataSourcePoolFieldMetaData.java
+++ 
b/infra/datasource/type/dbcp/src/main/java/org/apache/shardingsphere/infra/datasource/dbcp/metadata/DBCPDataSourcePoolFieldMetaData.java
@@ -24,16 +24,6 @@ import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolFi
  */
 public final class DBCPDataSourcePoolFieldMetaData implements 
DataSourcePoolFieldMetaData {
     
-    @Override
-    public String getUsernameFieldName() {
-        return "username";
-    }
-    
-    @Override
-    public String getPasswordFieldName() {
-        return "password";
-    }
-    
     @Override
     public String getJdbcUrlFieldName() {
         return "url";
diff --git 
a/infra/datasource/type/dbcp/src/main/java/org/apache/shardingsphere/infra/datasource/dbcp/metadata/DBCPDataSourcePoolMetaData.java
 
b/infra/datasource/type/dbcp/src/main/java/org/apache/shardingsphere/infra/datasource/dbcp/metadata/DBCPDataSourcePoolMetaData.java
index ecf0987d293..882cd49883f 100644
--- 
a/infra/datasource/type/dbcp/src/main/java/org/apache/shardingsphere/infra/datasource/dbcp/metadata/DBCPDataSourcePoolMetaData.java
+++ 
b/infra/datasource/type/dbcp/src/main/java/org/apache/shardingsphere/infra/datasource/dbcp/metadata/DBCPDataSourcePoolMetaData.java
@@ -18,8 +18,6 @@
 package org.apache.shardingsphere.infra.datasource.dbcp.metadata;
 
 import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolPropertiesValidator;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DefaultDataSourcePoolPropertiesValidator;
 
 import java.util.Arrays;
 import java.util.Collection;
@@ -76,9 +74,4 @@ public final class DBCPDataSourcePoolMetaData implements 
DataSourcePoolMetaData
     public Collection<Object> getTypeAliases() {
         return Arrays.asList("org.apache.commons.dbcp.BasicDataSource", 
"org.apache.tomcat.dbcp.dbcp2.BasicDataSource");
     }
-    
-    @Override
-    public DataSourcePoolPropertiesValidator 
getDataSourcePoolPropertiesValidator() {
-        return new DefaultDataSourcePoolPropertiesValidator();
-    }
 }
diff --git 
a/infra/datasource/type/druid/src/main/java/org/apache/shardingsphere/infra/datasource/druid/metadata/DruidDataSourcePoolFieldMetaData.java
 
b/infra/datasource/type/druid/src/main/java/org/apache/shardingsphere/infra/datasource/druid/metadata/DruidDataSourcePoolFieldMetaData.java
index 41124f6bf30..6ef71105baa 100644
--- 
a/infra/datasource/type/druid/src/main/java/org/apache/shardingsphere/infra/datasource/druid/metadata/DruidDataSourcePoolFieldMetaData.java
+++ 
b/infra/datasource/type/druid/src/main/java/org/apache/shardingsphere/infra/datasource/druid/metadata/DruidDataSourcePoolFieldMetaData.java
@@ -24,16 +24,6 @@ import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolFi
  */
 public final class DruidDataSourcePoolFieldMetaData implements 
DataSourcePoolFieldMetaData {
     
-    @Override
-    public String getUsernameFieldName() {
-        return "username";
-    }
-    
-    @Override
-    public String getPasswordFieldName() {
-        return "password";
-    }
-    
     @Override
     public String getJdbcUrlFieldName() {
         return "url";
diff --git 
a/infra/datasource/type/druid/src/main/java/org/apache/shardingsphere/infra/datasource/druid/metadata/DruidDataSourcePoolMetaData.java
 
b/infra/datasource/type/druid/src/main/java/org/apache/shardingsphere/infra/datasource/druid/metadata/DruidDataSourcePoolMetaData.java
index 4ff4697479f..32e8f033d56 100644
--- 
a/infra/datasource/type/druid/src/main/java/org/apache/shardingsphere/infra/datasource/druid/metadata/DruidDataSourcePoolMetaData.java
+++ 
b/infra/datasource/type/druid/src/main/java/org/apache/shardingsphere/infra/datasource/druid/metadata/DruidDataSourcePoolMetaData.java
@@ -18,8 +18,6 @@
 package org.apache.shardingsphere.infra.datasource.druid.metadata;
 
 import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolPropertiesValidator;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DefaultDataSourcePoolPropertiesValidator;
 
 import java.util.Collection;
 import java.util.Collections;
@@ -66,11 +64,6 @@ public final class DruidDataSourcePoolMetaData implements 
DataSourcePoolMetaData
         return new DruidDataSourcePoolFieldMetaData();
     }
     
-    @Override
-    public DataSourcePoolPropertiesValidator 
getDataSourcePoolPropertiesValidator() {
-        return new DefaultDataSourcePoolPropertiesValidator();
-    }
-    
     @Override
     public String getType() {
         return "com.alibaba.druid.pool.DruidDataSource";
diff --git 
a/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolFieldMetaData.java
 
b/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolFieldMetaData.java
index e53373dd308..0ee711e1121 100644
--- 
a/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolFieldMetaData.java
+++ 
b/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolFieldMetaData.java
@@ -24,16 +24,6 @@ import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolFi
  */
 public final class HikariDataSourcePoolFieldMetaData implements 
DataSourcePoolFieldMetaData {
     
-    @Override
-    public String getUsernameFieldName() {
-        return "username";
-    }
-    
-    @Override
-    public String getPasswordFieldName() {
-        return "password";
-    }
-    
     @Override
     public String getJdbcUrlFieldName() {
         return "jdbcUrl";
diff --git 
a/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolMetaData.java
 
b/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolMetaData.java
index 9afe20a85fb..12c43f56425 100644
--- 
a/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolMetaData.java
+++ 
b/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolMetaData.java
@@ -24,6 +24,7 @@ import java.util.Collection;
 import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.Map;
+import java.util.Optional;
 
 /**
  * Hikari data source pool meta data.
@@ -101,8 +102,8 @@ public final class HikariDataSourcePoolMetaData implements 
DataSourcePoolMetaDat
     }
     
     @Override
-    public DataSourcePoolPropertiesValidator 
getDataSourcePoolPropertiesValidator() {
-        return new HikariDataSourcePoolPropertiesValidator();
+    public Optional<DataSourcePoolPropertiesValidator> 
getDataSourcePoolPropertiesValidator() {
+        return Optional.of(new HikariDataSourcePoolPropertiesValidator());
     }
     
     @Override
diff --git 
a/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolPropertiesValidator.java
 
b/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolPropertiesValidator.java
index f3b890b5c20..a79122e6dbb 100644
--- 
a/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolPropertiesValidator.java
+++ 
b/infra/datasource/type/hikari/src/main/java/org/apache/shardingsphere/infra/datasource/hikari/metadata/HikariDataSourcePoolPropertiesValidator.java
@@ -35,7 +35,7 @@ public final class HikariDataSourcePoolPropertiesValidator 
implements DataSource
     private static final long KEEP_ALIVE_TIME_FLOOR = 
TimeUnit.SECONDS.toMillis(30);
     
     @Override
-    public void validateProperties(final DataSourceProperties dataSourceProps) 
{
+    public void validate(final DataSourceProperties dataSourceProps) {
         validateConnectionTimeout(dataSourceProps);
         validateIdleTimeout(dataSourceProps);
         validateMaxLifetime(dataSourceProps);
diff --git 
a/kernel/metadata/core/src/test/resources/yaml/persist/data-source-foo.yaml 
b/kernel/metadata/core/src/test/resources/yaml/persist/data-source-foo.yaml
index 00e18cb08db..00107256be7 100644
--- a/kernel/metadata/core/src/test/resources/yaml/persist/data-source-foo.yaml
+++ b/kernel/metadata/core/src/test/resources/yaml/persist/data-source-foo.yaml
@@ -17,6 +17,7 @@
 
 foo_ds:
   password: root
+  closed: false
   dataSourceClassName: 
org.apache.shardingsphere.test.fixture.jdbc.MockedDataSource
   connectionInitSqls:
 # No spaces after conversion
diff --git 
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rql/storage/unit/ShowStorageUnitExecutorTest.java
 
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rql/storage/unit/ShowStorageUnitExecutorTest.java
index 4bcd6b4cf17..97fef2bfe9b 100644
--- 
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rql/storage/unit/ShowStorageUnitExecutorTest.java
+++ 
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rql/storage/unit/ShowStorageUnitExecutorTest.java
@@ -129,7 +129,7 @@ class ShowStorageUnitExecutorTest {
             assertThat(data.getCell(9), is("100"));
             assertThat(data.getCell(10), is("10"));
             assertThat(data.getCell(11), is(""));
-            assertThat(data.getCell(12), is("{\"openedConnections\":[]}"));
+            assertThat(data.getCell(12), 
is("{\"openedConnections\":[],\"closed\":false}"));
             index++;
         }
     }
@@ -153,7 +153,7 @@ class ShowStorageUnitExecutorTest {
         assertThat(data.getCell(9), is("100"));
         assertThat(data.getCell(10), is("10"));
         assertThat(data.getCell(11), is(""));
-        assertThat(data.getCell(12), is("{\"openedConnections\":[]}"));
+        assertThat(data.getCell(12), 
is("{\"openedConnections\":[],\"closed\":false}"));
     }
     
     @Test
diff --git 
a/test/fixture/infra/src/main/java/org/apache/shardingsphere/test/fixture/infra/datasource/pool/metadata/MockedDataSourcePoolFieldMetaData.java
 
b/test/fixture/infra/src/main/java/org/apache/shardingsphere/test/fixture/infra/datasource/pool/metadata/MockedDataSourcePoolFieldMetaData.java
deleted file mode 100644
index fa195221c63..00000000000
--- 
a/test/fixture/infra/src/main/java/org/apache/shardingsphere/test/fixture/infra/datasource/pool/metadata/MockedDataSourcePoolFieldMetaData.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.test.fixture.infra.datasource.pool.metadata;
-
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolFieldMetaData;
-
-/**
- * Mocked data source pool field meta data.
- */
-public final class MockedDataSourcePoolFieldMetaData implements 
DataSourcePoolFieldMetaData {
-    
-    @Override
-    public String getUsernameFieldName() {
-        return "username";
-    }
-    
-    @Override
-    public String getPasswordFieldName() {
-        return "password";
-    }
-    
-    @Override
-    public String getJdbcUrlFieldName() {
-        return "url";
-    }
-    
-    @Override
-    public String getJdbcUrlPropertiesFieldName() {
-        return "jdbcUrlProperties";
-    }
-}
diff --git 
a/test/fixture/infra/src/main/java/org/apache/shardingsphere/test/fixture/infra/datasource/pool/metadata/MockedDataSourcePoolMetaData.java
 
b/test/fixture/infra/src/main/java/org/apache/shardingsphere/test/fixture/infra/datasource/pool/metadata/MockedDataSourcePoolMetaData.java
deleted file mode 100644
index bd8f994d481..00000000000
--- 
a/test/fixture/infra/src/main/java/org/apache/shardingsphere/test/fixture/infra/datasource/pool/metadata/MockedDataSourcePoolMetaData.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.test.fixture.infra.datasource.pool.metadata;
-
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolFieldMetaData;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolPropertiesValidator;
-import 
org.apache.shardingsphere.infra.datasource.pool.metadata.DefaultDataSourcePoolPropertiesValidator;
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * Mocked data source pool meta data.
- */
-public final class MockedDataSourcePoolMetaData implements 
DataSourcePoolMetaData {
-    
-    @Override
-    public Map<String, Object> getDefaultProperties() {
-        return Collections.singletonMap("maxPoolSize", 100);
-    }
-    
-    @Override
-    public Map<String, Object> getInvalidProperties() {
-        Map<String, Object> result = new HashMap<>(2, 1F);
-        result.put("maxPoolSize", -1);
-        result.put("minPoolSize", -1);
-        return result;
-    }
-    
-    @Override
-    public Map<String, String> getPropertySynonyms() {
-        Map<String, String> result = new HashMap<>(2, 1F);
-        result.put("maxPoolSize", "maxPoolSize");
-        result.put("minPoolSize", "minPoolSize");
-        return result;
-    }
-    
-    @Override
-    public Collection<String> getTransientFieldNames() {
-        return Collections.singleton("closed");
-    }
-    
-    @Override
-    public DataSourcePoolFieldMetaData getFieldMetaData() {
-        return new MockedDataSourcePoolFieldMetaData();
-    }
-    
-    @Override
-    public DataSourcePoolPropertiesValidator 
getDataSourcePoolPropertiesValidator() {
-        return new DefaultDataSourcePoolPropertiesValidator();
-    }
-    
-    @Override
-    public String getType() {
-        return "org.apache.shardingsphere.test.fixture.jdbc.MockedDataSource";
-    }
-}
diff --git 
a/test/fixture/infra/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData
 
b/test/fixture/infra/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData
deleted file mode 100644
index 52f43df55b2..00000000000
--- 
a/test/fixture/infra/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-org.apache.shardingsphere.test.fixture.infra.datasource.pool.metadata.MockedDataSourcePoolMetaData


Reply via email to