You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2022/11/28 15:27:23 UTC

[shardingsphere] branch master updated: Refactor ParallelRunnerExecutorFactory.finishAllExecutors() (#22488)

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

zhaojinchao 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 11d850801f4 Refactor ParallelRunnerExecutorFactory.finishAllExecutors() (#22488)
11d850801f4 is described below

commit 11d850801f4f2d21793bf6f10488aa18f867aa8e
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Mon Nov 28 23:27:15 2022 +0800

    Refactor ParallelRunnerExecutorFactory.finishAllExecutors() (#22488)
---
 .../test/runner/executor/ParallelRunnerExecutorFactory.java |  8 ++------
 .../executor/impl/DefaultParallelRunnerExecutorFactory.java | 13 ++++++-------
 .../test/runner/scheduler/ParallelRunnerScheduler.java      |  3 +--
 3 files changed, 9 insertions(+), 15 deletions(-)

diff --git a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/ParallelRunnerExecutorFactory.java b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/ParallelRunnerExecutorFactory.java
index c68bcbc83c0..7658160702c 100644
--- a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/ParallelRunnerExecutorFactory.java
+++ b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/ParallelRunnerExecutorFactory.java
@@ -19,8 +19,6 @@ package org.apache.shardingsphere.test.runner.executor;
 
 import org.apache.shardingsphere.test.runner.ParallelRunningStrategy.ParallelLevel;
 
-import java.util.Collection;
-
 /**
  * Parallel Runner Executor factory.
  * 
@@ -46,9 +44,7 @@ public interface ParallelRunnerExecutorFactory<T> {
     ParallelRunnerExecutor getExecutor(ParallelLevel parallelLevel);
     
     /**
-     * Get all executors.
-     *
-     * @return all executors
+     * Finish all executors.
      */
-    Collection<ParallelRunnerExecutor> getAllExecutors();
+    void finishAllExecutors();
 }
diff --git a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/impl/DefaultParallelRunnerExecutorFactory.java b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/impl/DefaultParallelRunnerExecutorFactory.java
index 982f204d072..8a77277075a 100644
--- a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/impl/DefaultParallelRunnerExecutorFactory.java
+++ b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/impl/DefaultParallelRunnerExecutorFactory.java
@@ -21,8 +21,6 @@ import org.apache.shardingsphere.test.runner.ParallelRunningStrategy.ParallelLev
 import org.apache.shardingsphere.test.runner.executor.ParallelRunnerExecutor;
 import org.apache.shardingsphere.test.runner.executor.ParallelRunnerExecutorFactory;
 
-import java.util.Collection;
-import java.util.LinkedList;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -62,7 +60,7 @@ public class DefaultParallelRunnerExecutorFactory<T> implements ParallelRunnerEx
         if (null == defaultExecutor) {
             synchronized (DefaultParallelRunnerExecutorFactory.class) {
                 if (null == defaultExecutor) {
-                    defaultExecutor = new DefaultParallelRunnerExecutor();
+                    defaultExecutor = new DefaultParallelRunnerExecutor<>();
                 }
             }
         }
@@ -70,11 +68,12 @@ public class DefaultParallelRunnerExecutorFactory<T> implements ParallelRunnerEx
     }
     
     @Override
-    public final Collection<ParallelRunnerExecutor> getAllExecutors() {
-        Collection<ParallelRunnerExecutor> result = new LinkedList<>(executors.values());
+    public final void finishAllExecutors() {
+        for (ParallelRunnerExecutor<?> each : executors.values()) {
+            each.finished();
+        }
         if (null != defaultExecutor) {
-            result.add(defaultExecutor);
+            defaultExecutor.finished();
         }
-        return result;
     }
 }
diff --git a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/scheduler/ParallelRunnerScheduler.java b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/scheduler/ParallelRunnerScheduler.java
index 5b854289667..078dd5b2708 100644
--- a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/scheduler/ParallelRunnerScheduler.java
+++ b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/scheduler/ParallelRunnerScheduler.java
@@ -20,7 +20,6 @@ package org.apache.shardingsphere.test.runner.scheduler;
 import lombok.Getter;
 import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.test.runner.ParallelRunningStrategy.ParallelLevel;
-import org.apache.shardingsphere.test.runner.executor.ParallelRunnerExecutor;
 import org.apache.shardingsphere.test.runner.executor.ParallelRunnerExecutorFactory;
 import org.junit.runners.model.RunnerScheduler;
 
@@ -42,6 +41,6 @@ public class ParallelRunnerScheduler implements RunnerScheduler {
     
     @Override
     public final void finished() {
-        executorFactory.getAllExecutors().forEach(each -> ((ParallelRunnerExecutor) each).finished());
+        executorFactory.finishAllExecutors();
     }
 }