X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=runtime%2Forg.argeo.slc.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fcore%2Fexecution%2FProcessThread.java;h=98d715ece3962f5eb77669d912a44ffa28124e1c;hb=098e868d40b2130c6735b1547247c61a5d88da95;hp=1d333845d1e9bb1f7caa4996207b1b5c44533fb4;hpb=9b2422e7198df6f34282a805058dd5f497417318;p=gpl%2Fargeo-slc.git diff --git a/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/ProcessThread.java b/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/ProcessThread.java index 1d333845d..98d715ece 100644 --- a/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/ProcessThread.java +++ b/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/ProcessThread.java @@ -21,8 +21,6 @@ import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.concurrent.ArrayBlockingQueue; -import java.util.concurrent.BlockingQueue; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -34,6 +32,7 @@ import org.argeo.slc.process.RealizedFlow; import org.argeo.slc.process.SlcExecution; /** Thread of the SLC Process, starting the sub executions. */ +@SuppressWarnings("deprecation") public class ProcessThread extends Thread { private final static Log log = LogFactory.getLog(ProcessThread.class); @@ -47,10 +46,6 @@ public class ProcessThread extends Thread { private Boolean hadAnError = false; private Boolean killed = false; - private final static Integer STEPS_BUFFER_CAPACITY = 10000; - private BlockingQueue steps = new ArrayBlockingQueue( - STEPS_BUFFER_CAPACITY); - public ProcessThread(ThreadGroup processesThreadGroup, ExecutionModulesManager executionModulesManager, ExecutionProcess process) { @@ -62,6 +57,16 @@ public class ProcessThread extends Thread { } public final void run() { + // authenticate thread + // Authentication authentication = getProcessThreadGroup() + // .getAuthentication(); + // if (authentication == null) + // throw new SlcException("Can only execute authenticated threads"); + // SecurityContextHolder.getContext().setAuthentication(authentication); + + // log.info("\n##\n## SLC Process #" + process.getUuid() + + // " STARTED by " + // + authentication.getName() + "\n##\n"); log.info("\n##\n## SLC Process #" + process.getUuid() + " STARTED\n##\n"); @@ -130,7 +135,6 @@ public class ProcessThread extends Thread { * Implementation specific execution. To be overridden in order to deal with * custom process types. Default expects an {@link SlcExecution}. */ - @SuppressWarnings("deprecation") protected void process() throws InterruptedException { if (!(process instanceof SlcExecution)) throw new SlcException("Unsupported process type " @@ -182,13 +186,18 @@ public class ProcessThread extends Thread { } private class LoggingThread extends Thread { + + public LoggingThread() { + super("SLC Process Logger #" + process.getUuid()); + } + public void run() { boolean run = true; while (run) { List newSteps = new ArrayList(); processThreadGroup.getSteps().drainTo(newSteps); if (newSteps.size() > 0) { - //System.out.println(steps.size() + " steps"); + // System.out.println(steps.size() + " steps"); process.addSteps(newSteps); }