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 d33818c1bf7 Refactor : add container id for further refactor to 
support launching multiple proxy container(#20404) (#20420)
d33818c1bf7 is described below

commit d33818c1bf75b802a4a9ed1564fa63a161111020
Author: 孙念君 Nianjun Sun <[email protected]>
AuthorDate: Wed Aug 24 13:50:27 2022 +0800

    Refactor : add container id for further refactor to support launching 
multiple proxy container(#20404) (#20420)
    
    * Refactor : add container id for further refactor to support launching 
multiple proxy container(#20404)
    
    * Add : add final descriptor for class ProxyContainerUtil
---
 .../config/AdaptorContainerConfiguration.java       |  3 +++
 .../impl/ShardingSphereProxyClusterContainer.java   |  4 ++--
 .../ShardingSphereProxyStandaloneContainer.java     |  4 ++--
 .../atomic/constants/ProxyContainerConstants.java   |  6 ++++++
 .../ProxyContainerUtil.java}                        | 21 ++++++++++++++-------
 5 files changed, 27 insertions(+), 11 deletions(-)

diff --git 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/config/AdaptorContainerConfiguration.java
 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/config/AdaptorContainerConfiguration.java
index b83c492c82b..d2839aded09 100644
--- 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/config/AdaptorContainerConfiguration.java
+++ 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/config/AdaptorContainerConfiguration.java
@@ -19,6 +19,7 @@ package 
org.apache.shardingsphere.test.integration.env.container.atomic.adapter.
 
 import lombok.Getter;
 import lombok.RequiredArgsConstructor;
+import 
org.apache.shardingsphere.test.integration.env.container.atomic.util.ProxyContainerUtil;
 
 import java.util.Map;
 
@@ -32,4 +33,6 @@ public final class AdaptorContainerConfiguration {
     private final String proxyDataSourceName;
     
     private final Map<String, String> mountedResources;
+    
+    private final int containerId = ProxyContainerUtil.generateContainerId();
 }
diff --git 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/impl/ShardingSphereProxyClusterContainer.java
 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/impl/ShardingSphereProxyClusterContainer.java
index d1b5ed4ac2d..423cbf26c6c 100644
--- 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/impl/ShardingSphereProxyClusterContainer.java
+++ 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/impl/ShardingSphereProxyClusterContainer.java
@@ -46,7 +46,7 @@ public final class ShardingSphereProxyClusterContainer 
extends DockerITContainer
     private final AtomicReference<DataSource> targetDataSourceProvider = new 
AtomicReference<>();
     
     public ShardingSphereProxyClusterContainer(final DatabaseType 
databaseType, final AdaptorContainerConfiguration config) {
-        super("ShardingSphere-Proxy", "apache/shardingsphere-proxy-test");
+        super(ProxyContainerConstants.PROXY_CONTAINER_NAME_PREFIX, 
ProxyContainerConstants.PROXY_CONTAINER_IMAGE);
         this.databaseType = databaseType;
         this.config = config;
     }
@@ -97,6 +97,6 @@ public final class ShardingSphereProxyClusterContainer 
extends DockerITContainer
     
     @Override
     public String getAbbreviation() {
-        return "proxy";
+        return ProxyContainerConstants.PROXY_CONTAINER_ABBREVIATION;
     }
 }
diff --git 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/impl/ShardingSphereProxyStandaloneContainer.java
 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/impl/ShardingSphereProxyStandaloneContainer.java
index 31db855f11e..72f5a99eae2 100644
--- 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/impl/ShardingSphereProxyStandaloneContainer.java
+++ 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/adapter/impl/ShardingSphereProxyStandaloneContainer.java
@@ -48,7 +48,7 @@ public final class ShardingSphereProxyStandaloneContainer 
extends DockerITContai
     private final AtomicReference<DataSource> targetDataSourceProvider = new 
AtomicReference<>();
     
     public ShardingSphereProxyStandaloneContainer(final DatabaseType 
databaseType, final AdaptorContainerConfiguration config) {
-        super("ShardingSphere-Proxy", "apache/shardingsphere-proxy-test");
+        super(ProxyContainerConstants.PROXY_CONTAINER_NAME_PREFIX, 
ProxyContainerConstants.PROXY_CONTAINER_IMAGE);
         this.databaseType = databaseType;
         this.config = config;
     }
@@ -99,6 +99,6 @@ public final class ShardingSphereProxyStandaloneContainer 
extends DockerITContai
     
     @Override
     public String getAbbreviation() {
-        return "proxy";
+        return ProxyContainerConstants.PROXY_CONTAINER_ABBREVIATION;
     }
 }
diff --git 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/constants/ProxyContainerConstants.java
 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/constants/ProxyContainerConstants.java
index d8ec478e691..45b94c17a25 100644
--- 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/constants/ProxyContainerConstants.java
+++ 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/constants/ProxyContainerConstants.java
@@ -31,4 +31,10 @@ public class ProxyContainerConstants {
     public static final String PASSWORD = "Proxy@123";
     
     public static final String AGENT_HOME_IN_CONTAINER = 
"/usr/local/shardingsphere-agent";
+    
+    public static final String PROXY_CONTAINER_NAME_PREFIX = 
"ShardingSphere-Proxy";
+    
+    public static final String PROXY_CONTAINER_IMAGE = 
"apache/shardingsphere-proxy-test";
+    
+    public static final String PROXY_CONTAINER_ABBREVIATION = "proxy";
 }
diff --git 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/constants/ProxyContainerConstants.java
 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/util/ProxyContainerUtil.java
similarity index 69%
copy from 
shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/constants/ProxyContainerConstants.java
copy to 
shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/util/ProxyContainerUtil.java
index d8ec478e691..e8b516ad021 100644
--- 
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/constants/ProxyContainerConstants.java
+++ 
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-env/src/test/java/org/apache/shardingsphere/test/integration/env/container/atomic/util/ProxyContainerUtil.java
@@ -15,20 +15,27 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.test.integration.env.container.atomic.constants;
+package org.apache.shardingsphere.test.integration.env.container.atomic.util;
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 
+import java.util.concurrent.atomic.AtomicInteger;
+
 /**
- * Proxy container constants.
+ * Proxy container util.
  */
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class ProxyContainerConstants {
-    
-    public static final String USERNAME = "proxy";
+public final class ProxyContainerUtil {
     
-    public static final String PASSWORD = "Proxy@123";
+    private static final AtomicInteger ATOMIC_PROXY_CONTAINER_ID = new 
AtomicInteger(1);
     
-    public static final String AGENT_HOME_IN_CONTAINER = 
"/usr/local/shardingsphere-agent";
+    /**
+     * Generate a unique proxy container id.
+     *
+     * @return unique proxy container id
+     */
+    public static int generateContainerId() {
+        return ATOMIC_PROXY_CONTAINER_ID.getAndIncrement();
+    }
 }

Reply via email to