This is an automated email from the ASF dual-hosted git repository.
duanzhengqiang 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 d6cdd82 Refactor ComposedContainer (#15402)
d6cdd82 is described below
commit d6cdd82e72b705b2f512ee9240336c8537e33ae0
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Feb 14 17:05:55 2022 +0800
Refactor ComposedContainer (#15402)
---
.../shardingsphere/test/integration/engine/BaseITCase.java | 2 +-
.../framework/container/compose/ComposedContainer.java | 10 +++-------
.../container/compose/ComposedContainerRegistry.java | 6 +++++-
.../container/compose/mode/ClusterComposedContainer.java | 12 ++++++++++--
.../container/compose/mode/MemoryComposedContainer.java | 12 ++++++++++--
5 files changed, 29 insertions(+), 13 deletions(-)
diff --git
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/BaseITCase.java
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/BaseITCase.java
index 4bd0031..54dddc9 100644
---
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/BaseITCase.java
+++
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/BaseITCase.java
@@ -70,7 +70,7 @@ public abstract class BaseITCase {
@Before
public void setUp() {
- composedContainer.getContainers().start();
+ composedContainer.start();
actualDataSourceMap = composedContainer.getActualDataSourceMap();
targetDataSource = composedContainer.getTargetDataSource();
}
diff --git
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/ComposedContainer.java
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/ComposedContainer.java
index e37ad04..78665fc 100644
---
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/ComposedContainer.java
+++
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/ComposedContainer.java
@@ -17,22 +17,18 @@
package org.apache.shardingsphere.test.integration.framework.container.compose;
-import
org.apache.shardingsphere.test.integration.framework.container.atomic.AtomicContainers;
-
import javax.sql.DataSource;
import java.util.Map;
/**
* Composed container.
*/
-public interface ComposedContainer {
+public interface ComposedContainer extends AutoCloseable {
/**
- * Get containers.
- *
- * @return containers
+ * Start composed container.
*/
- AtomicContainers getContainers();
+ void start();
/**
* Get actual data source map.
diff --git
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/ComposedContainerRegistry.java
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/ComposedContainerRegistry.java
index 567e0c7..5949d44 100644
---
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/ComposedContainerRegistry.java
+++
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/ComposedContainerRegistry.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.test.integration.framework.container.compose;
+import lombok.SneakyThrows;
import
org.apache.shardingsphere.test.integration.framework.container.compose.mode.ClusterComposedContainer;
import
org.apache.shardingsphere.test.integration.framework.container.compose.mode.MemoryComposedContainer;
import
org.apache.shardingsphere.test.integration.framework.param.model.ParameterizedArray;
@@ -59,7 +60,10 @@ public final class ComposedContainerRegistry implements
AutoCloseable {
}
@Override
+ @SneakyThrows
public void close() {
- composedContainers.values().forEach(each ->
each.getContainers().close());
+ for (ComposedContainer each : composedContainers.values()) {
+ each.close();
+ }
}
}
diff --git
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/mode/ClusterComposedContainer.java
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/mode/ClusterComposedContainer.java
index 6b3cf01..f32f138 100644
---
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/mode/ClusterComposedContainer.java
+++
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/mode/ClusterComposedContainer.java
@@ -17,7 +17,6 @@
package
org.apache.shardingsphere.test.integration.framework.container.compose.mode;
-import lombok.Getter;
import
org.apache.shardingsphere.test.integration.framework.container.atomic.AtomicContainers;
import
org.apache.shardingsphere.test.integration.framework.container.atomic.adapter.AdapterContainer;
import
org.apache.shardingsphere.test.integration.framework.container.atomic.adapter.AdapterContainerFactory;
@@ -36,7 +35,6 @@ import java.util.Map;
*/
public final class ClusterComposedContainer implements ComposedContainer {
- @Getter
private final AtomicContainers containers;
private final GovernanceContainer governanceContainer;
@@ -57,6 +55,11 @@ public final class ClusterComposedContainer implements
ComposedContainer {
}
@Override
+ public void start() {
+ containers.start();
+ }
+
+ @Override
public Map<String, DataSource> getActualDataSourceMap() {
return storageContainer.getActualDataSourceMap();
}
@@ -65,4 +68,9 @@ public final class ClusterComposedContainer implements
ComposedContainer {
public DataSource getTargetDataSource() {
return
adapterContainer.getTargetDataSource(governanceContainer.getServerLists());
}
+
+ @Override
+ public void close() {
+ containers.close();
+ }
}
diff --git
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/mode/MemoryComposedContainer.java
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/mode/MemoryComposedContainer.java
index d190de9..de74e58 100644
---
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/mode/MemoryComposedContainer.java
+++
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/container/compose/mode/MemoryComposedContainer.java
@@ -17,7 +17,6 @@
package
org.apache.shardingsphere.test.integration.framework.container.compose.mode;
-import lombok.Getter;
import
org.apache.shardingsphere.test.integration.framework.container.atomic.AtomicContainers;
import
org.apache.shardingsphere.test.integration.framework.container.atomic.adapter.AdapterContainer;
import
org.apache.shardingsphere.test.integration.framework.container.atomic.adapter.AdapterContainerFactory;
@@ -34,7 +33,6 @@ import java.util.Map;
*/
public final class MemoryComposedContainer implements ComposedContainer {
- @Getter
private final AtomicContainers containers;
private final StorageContainer storageContainer;
@@ -51,6 +49,11 @@ public final class MemoryComposedContainer implements
ComposedContainer {
}
@Override
+ public void start() {
+ containers.start();
+ }
+
+ @Override
public Map<String, DataSource> getActualDataSourceMap() {
return storageContainer.getActualDataSourceMap();
}
@@ -59,4 +62,9 @@ public final class MemoryComposedContainer implements
ComposedContainer {
public DataSource getTargetDataSource() {
return adapterContainer.getTargetDataSource(null);
}
+
+ @Override
+ public void close() {
+ containers.close();
+ }
}