From 179731de58f2030d14511cf26b94fdf01f334e71 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Fri, 2 Feb 2018 19:37:11 +0100 Subject: [PATCH] External executor service --- .../argeo/slc/core/execution/http/RunnerServlet.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/org.argeo.slc.core/src/org/argeo/slc/core/execution/http/RunnerServlet.java b/org.argeo.slc.core/src/org/argeo/slc/core/execution/http/RunnerServlet.java index 5bbf243fb..c3f22ccb4 100644 --- a/org.argeo.slc.core/src/org/argeo/slc/core/execution/http/RunnerServlet.java +++ b/org.argeo.slc.core/src/org/argeo/slc/core/execution/http/RunnerServlet.java @@ -16,7 +16,6 @@ import java.util.Map; import java.util.UUID; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; import java.util.concurrent.Future; import javax.jcr.Node; @@ -57,10 +56,10 @@ public class RunnerServlet extends HttpServlet { private BundleContext bc; private ExecutorService executor; - public RunnerServlet(BundleContext bc, Path baseDir) { + public RunnerServlet(BundleContext bc, Path baseDir, ExecutorService executor) { this.bc = bc; this.baseDir = baseDir; - this.executor = Executors.newFixedThreadPool(20); + this.executor = executor; } @Override @@ -177,10 +176,10 @@ public class RunnerServlet extends HttpServlet { if (log.isTraceEnabled()) log.trace(session.getUserID() + " " + workgroup + " " + flowName); - try { + try (ServiceChannel serviceChannel = new ServiceChannel(Channels.newChannel(in), Channels.newChannel(out), + executor)) { resp.setHeader("Content-Type", "application/json"); - ServiceChannel serviceChannel = new ServiceChannel(Channels.newChannel(in), Channels.newChannel(out), - executor); + Callable task; if (ext.equals("api")) { String uri = Files.readAllLines(baseDir.resolve(flowName)).get(0); -- 2.39.2