Removed unnecessary inner class from EolExecutorService
diff --git a/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/execute/concurrent/executors/EolExecutorService.java b/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/execute/concurrent/executors/EolExecutorService.java
index f0fa7c9..4438a47 100644
--- a/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/execute/concurrent/executors/EolExecutorService.java
+++ b/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/execute/concurrent/executors/EolExecutorService.java
@@ -272,37 +272,36 @@
}
default void execute(CheckedRunnable<?> command) {
- execute((Runnable) new EolExecutorRunnable(this, command));
+ execute((Runnable) () -> {
+ try {
+ command.runThrows();
+ }
+ catch (Exception ex) {
+ handleException(ex);
+ }
+ });
}
default Future<?> submit(CheckedRunnable<?> task) {
- return submit((Runnable) new EolExecutorRunnable(this, task));
+ return submit((Runnable) (Runnable) () -> {
+ try {
+ task.runThrows();
+ }
+ catch (Exception ex) {
+ handleException(ex);
+ }
+ });
}
default <T> Future<T> submit(CheckedRunnable<?> task, T result) {
- return submit((Runnable) new EolExecutorRunnable(this, task), result);
+ return submit((Runnable) () -> {
+ try {
+ task.runThrows();
+ }
+ catch (Exception ex) {
+ handleException(ex);
+ }
+ }, result);
}
- /**
- * Convenience class for handling checked exceptions from submitted jobs.
- */
- class EolExecutorRunnable implements Runnable {
- final CheckedRunnable<?> delegate;
- final EolExecutorService executor;
- public EolExecutorRunnable(EolExecutorService executor, CheckedRunnable<?> runnable) {
- this.delegate = runnable;
- this.executor = executor;
- }
-
- @Override
- public void run() {
- try {
- delegate.runThrows();
- }
- catch (Exception exception) {
- executor.handleException(exception);
- }
- }
- }
-
}
diff --git a/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/execute/concurrent/executors/EolThreadPoolExecutor.java b/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/execute/concurrent/executors/EolThreadPoolExecutor.java
index 6511d9c..8dd63ee 100644
--- a/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/execute/concurrent/executors/EolThreadPoolExecutor.java
+++ b/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/execute/concurrent/executors/EolThreadPoolExecutor.java
@@ -11,7 +11,6 @@
import java.util.concurrent.*;
import org.eclipse.epsilon.common.concurrent.SingleConcurrentExecutionStatus;
-import org.eclipse.epsilon.common.function.CheckedRunnable;
import org.eclipse.epsilon.eol.execute.concurrent.EolThreadFactory;
import org.eclipse.epsilon.eol.execute.concurrent.executors.EolExecutorService;
import org.eclipse.epsilon.eol.execute.concurrent.executors.EolThreadPoolExecutor;
@@ -86,30 +85,4 @@
execStatus.completeSuccessfully();
}
}
-
- protected Runnable wrapCheckedRunnable(final CheckedRunnable<?> command) {
- return () -> {
- try {
- command.runThrows();
- }
- catch (Exception ex) {
- handleException(ex);
- }
- };
- }
-
- @Override
- public void execute(CheckedRunnable<?> command) {
- execute(wrapCheckedRunnable(command));
- }
-
- @Override
- public Future<?> submit(CheckedRunnable<?> task) {
- return submit(wrapCheckedRunnable(task));
- }
-
- @Override
- public <T> Future<T> submit(CheckedRunnable<?> task, T result) {
- return submit(wrapCheckedRunnable(task), result);
- }
}