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

zhangliang 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 fc01defea57 Refactor ShardingSphereProxyStandaloneContainer (#36632)
fc01defea57 is described below

commit fc01defea5785e25fed640462fd0ffb58d6ece9f
Author: Liang Zhang <[email protected]>
AuthorDate: Fri Sep 19 19:08:04 2025 +0800

    Refactor ShardingSphereProxyStandaloneContainer (#36632)
    
    * Refactor usage of ProxyContainerConstants
    
    * Refactor ShardingSphereProxyStandaloneContainer
    
    * Refactor ShardingSphereProxyClusterContainer and 
ShardingSphereProxyStandaloneContainer
---
 .../e2e/env/container/adapter/AdapterContainerFactory.java  |  4 ++--
 ...java => ShardingSphereMultiProxiesClusterContainer.java} |  6 +++---
 .../adapter/impl/ShardingSphereProxyClusterContainer.java   |  8 +++-----
 .../impl/ShardingSphereProxyStandaloneContainer.java        | 13 ++++++-------
 4 files changed, 14 insertions(+), 17 deletions(-)

diff --git 
a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/AdapterContainerFactory.java
 
b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/AdapterContainerFactory.java
index 5876acd21f3..2596e4f09c2 100644
--- 
a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/AdapterContainerFactory.java
+++ 
b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/AdapterContainerFactory.java
@@ -24,7 +24,7 @@ import 
org.apache.shardingsphere.test.e2e.env.container.adapter.config.AdaptorCo
 import 
org.apache.shardingsphere.test.e2e.env.container.adapter.enums.AdapterMode;
 import 
org.apache.shardingsphere.test.e2e.env.container.adapter.enums.AdapterType;
 import 
org.apache.shardingsphere.test.e2e.env.container.adapter.impl.ShardingSphereJdbcEmbeddedContainer;
-import 
org.apache.shardingsphere.test.e2e.env.container.adapter.impl.ShardingSphereMultiProxyClusterContainer;
+import 
org.apache.shardingsphere.test.e2e.env.container.adapter.impl.ShardingSphereMultiProxiesClusterContainer;
 import 
org.apache.shardingsphere.test.e2e.env.container.adapter.impl.ShardingSphereProxyClusterContainer;
 import 
org.apache.shardingsphere.test.e2e.env.container.adapter.impl.ShardingSphereProxyEmbeddedContainer;
 import 
org.apache.shardingsphere.test.e2e.env.container.adapter.impl.ShardingSphereProxyStandaloneContainer;
@@ -57,7 +57,7 @@ public final class AdapterContainerFactory {
             case PROXY:
                 return newProxyInstance(mode, databaseType, containerConfig, 
envType);
             case PROXY_RANDOM:
-                return new 
ShardingSphereMultiProxyClusterContainer(databaseType, containerConfig);
+                return new 
ShardingSphereMultiProxiesClusterContainer(databaseType, containerConfig);
             case JDBC:
                 return new 
ShardingSphereJdbcEmbeddedContainer(storageContainer, new 
ScenarioCommonPath(scenario).getRuleConfigurationFile(databaseType));
             default:
diff --git 
a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereMultiProxyClusterContainer.java
 
b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereMultiProxiesClusterContainer.java
similarity index 94%
rename from 
test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereMultiProxyClusterContainer.java
rename to 
test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereMultiProxiesClusterContainer.java
index f93b85d4622..d0551e0ea2d 100644
--- 
a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereMultiProxyClusterContainer.java
+++ 
b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereMultiProxiesClusterContainer.java
@@ -39,15 +39,15 @@ import java.util.logging.Logger;
 import java.util.stream.Collectors;
 
 /**
- * ShardingSphere proxy container for cluster mode.
+ * ShardingSphere multi-proxies cluster container.
  */
-public final class ShardingSphereMultiProxyClusterContainer implements 
AdapterContainer, ComboITContainer {
+public final class ShardingSphereMultiProxiesClusterContainer implements 
AdapterContainer, ComboITContainer {
     
     private final AtomicReference<DataSource> targetDataSourceProvider = new 
AtomicReference<>();
     
     private final Collection<ShardingSphereProxyClusterContainer> 
proxyClusterContainers = new LinkedList<>();
     
-    public ShardingSphereMultiProxyClusterContainer(final DatabaseType 
databaseType, final AdaptorContainerConfiguration config) {
+    public ShardingSphereMultiProxiesClusterContainer(final DatabaseType 
databaseType, final AdaptorContainerConfiguration config) {
         ShardingSphereProxyClusterContainer proxy1 = new 
ShardingSphereProxyClusterContainer(databaseType, config);
         proxy1.setAbbreviation("proxy1");
         proxy1.setName("proxy1");
diff --git 
a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereProxyClusterContainer.java
 
b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereProxyClusterContainer.java
index bf42bad766a..2691304a19f 100644
--- 
a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereProxyClusterContainer.java
+++ 
b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereProxyClusterContainer.java
@@ -40,10 +40,10 @@ import java.util.concurrent.atomic.AtomicReference;
  */
 public final class ShardingSphereProxyClusterContainer extends 
DockerITContainer implements AdapterContainer {
     
-    private final DatabaseType databaseType;
-    
     private final AdaptorContainerConfiguration config;
     
+    private final DataSourceEnvironment dataSourceEnvironment;
+    
     private final AtomicReference<DataSource> targetDataSourceProvider = new 
AtomicReference<>();
     
     @Setter
@@ -51,8 +51,8 @@ public final class ShardingSphereProxyClusterContainer 
extends DockerITContainer
     
     public ShardingSphereProxyClusterContainer(final DatabaseType 
databaseType, final AdaptorContainerConfiguration config) {
         super(ProxyContainerConstants.PROXY_CONTAINER_NAME_PREFIX, 
config.getAdapterContainerImage());
-        this.databaseType = databaseType;
         this.config = config;
+        dataSourceEnvironment = 
DatabaseTypedSPILoader.getService(DataSourceEnvironment.class, databaseType);
     }
     
     @Override
@@ -66,7 +66,6 @@ public final class ShardingSphereProxyClusterContainer 
extends DockerITContainer
         }
         addEnv("TZ", "UTC");
         mapResources(config.getMountedResources());
-        DataSourceEnvironment dataSourceEnvironment = 
DatabaseTypedSPILoader.getService(DataSourceEnvironment.class, databaseType);
         setWaitStrategy(new JdbcConnectCheckingWaitStrategy(() -> 
DriverManager.getConnection(
                 dataSourceEnvironment.getURL(getHost(), getMappedPort(3307), 
config.getProxyDataSourceName()), ProxyContainerConstants.USER, 
ProxyContainerConstants.PASSWORD)));
         withStartupTimeout(Duration.of(120L, ChronoUnit.SECONDS));
@@ -76,7 +75,6 @@ public final class ShardingSphereProxyClusterContainer 
extends DockerITContainer
     public DataSource getTargetDataSource(final String serverLists) {
         DataSource dataSource = targetDataSourceProvider.get();
         if (null == dataSource) {
-            DataSourceEnvironment dataSourceEnvironment = 
DatabaseTypedSPILoader.getService(DataSourceEnvironment.class, databaseType);
             
targetDataSourceProvider.set(StorageContainerUtils.generateDataSource(
                     dataSourceEnvironment.getURL(getHost(), 
getMappedPort(3307), config.getProxyDataSourceName()), 
ProxyContainerConstants.USER, ProxyContainerConstants.PASSWORD, 2));
         }
diff --git 
a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereProxyStandaloneContainer.java
 
b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereProxyStandaloneContainer.java
index eeaeb76ff2e..01ea463ddde 100644
--- 
a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereProxyStandaloneContainer.java
+++ 
b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/adapter/impl/ShardingSphereProxyStandaloneContainer.java
@@ -32,35 +32,34 @@ import java.sql.DriverManager;
 import java.util.concurrent.atomic.AtomicReference;
 
 /**
- * ShardingSphere proxy container.
+ * ShardingSphere proxy container for standalone mode.
  */
 public final class ShardingSphereProxyStandaloneContainer extends 
DockerITContainer implements AdapterContainer {
     
-    private final DatabaseType databaseType;
-    
     private final AdaptorContainerConfiguration config;
     
+    private final DataSourceEnvironment dataSourceEnvironment;
+    
     private final AtomicReference<DataSource> targetDataSourceProvider = new 
AtomicReference<>();
     
     public ShardingSphereProxyStandaloneContainer(final DatabaseType 
databaseType, final AdaptorContainerConfiguration config) {
         super(ProxyContainerConstants.PROXY_CONTAINER_NAME_PREFIX, 
config.getAdapterContainerImage());
-        this.databaseType = databaseType;
         this.config = config;
+        dataSourceEnvironment = 
DatabaseTypedSPILoader.getService(DataSourceEnvironment.class, databaseType);
     }
     
     @Override
     protected void configure() {
         withExposedPorts(3307, 3308);
         mapResources(config.getMountedResources());
-        setWaitStrategy(new JdbcConnectCheckingWaitStrategy(() -> 
DriverManager.getConnection(DatabaseTypedSPILoader.getService(DataSourceEnvironment.class,
 databaseType)
-                .getURL(getHost(), getMappedPort(3307), 
config.getProxyDataSourceName()), ProxyContainerConstants.USER, 
ProxyContainerConstants.PASSWORD)));
+        setWaitStrategy(new JdbcConnectCheckingWaitStrategy(() -> 
DriverManager.getConnection(
+                dataSourceEnvironment.getURL(getHost(), getMappedPort(3307), 
config.getProxyDataSourceName()), ProxyContainerConstants.USER, 
ProxyContainerConstants.PASSWORD)));
     }
     
     @Override
     public DataSource getTargetDataSource(final String serverLists) {
         DataSource dataSource = targetDataSourceProvider.get();
         if (null == dataSource) {
-            DataSourceEnvironment dataSourceEnvironment = 
DatabaseTypedSPILoader.getService(DataSourceEnvironment.class, databaseType);
             
targetDataSourceProvider.set(StorageContainerUtils.generateDataSource(
                     dataSourceEnvironment.getURL(getHost(), 
getMappedPort(3307), config.getProxyDataSourceName()), 
ProxyContainerConstants.USER, ProxyContainerConstants.PASSWORD, 2));
         }

Reply via email to