Author: mes
Date: 2011-01-04 16:40:51 -0800 (Tue, 04 Jan 2011)
New Revision: 23299

Modified:
   core3/work-headless-impl/trunk/pom.xml
   
core3/work-headless-impl/trunk/src/main/java/org/cytoscape/work/internal/task/HeadlessTaskManager.java
Log:
updated work with new work-api

Modified: core3/work-headless-impl/trunk/pom.xml
===================================================================
--- core3/work-headless-impl/trunk/pom.xml      2011-01-05 00:40:31 UTC (rev 
23298)
+++ core3/work-headless-impl/trunk/pom.xml      2011-01-05 00:40:51 UTC (rev 
23299)
@@ -105,7 +105,7 @@
     <dependency>
       <groupId>org.cytoscape</groupId>
       <artifactId>work-api</artifactId>
-      <version>1.0-SNAPSHOT</version>
+      <version>3.0.0-alpha2-SNAPSHOT</version>
     </dependency>
     <dependency>
        <groupId>org.cytoscape</groupId>

Modified: 
core3/work-headless-impl/trunk/src/main/java/org/cytoscape/work/internal/task/HeadlessTaskManager.java
===================================================================
--- 
core3/work-headless-impl/trunk/src/main/java/org/cytoscape/work/internal/task/HeadlessTaskManager.java
      2011-01-05 00:40:31 UTC (rev 23298)
+++ 
core3/work-headless-impl/trunk/src/main/java/org/cytoscape/work/internal/task/HeadlessTaskManager.java
      2011-01-05 00:40:51 UTC (rev 23299)
@@ -4,7 +4,11 @@
 import java.io.PrintStream;
 import java.util.Timer;
 import java.util.TimerTask;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.Future;
 
+
 import org.cytoscape.work.AbstractTaskManager;
 import org.cytoscape.work.Task;
 import org.cytoscape.work.TaskFactory;
@@ -28,11 +32,12 @@
  */
 public class HeadlessTaskManager extends AbstractTaskManager {
        private final PrintStream output;
+       private final ExecutorService taskExecutorService;
 
        public HeadlessTaskManager(final PrintStream output, final 
TunableInterceptor tunableInterceptor) {
                super(tunableInterceptor);
-
                this.output = output;
+               this.taskExecutorService = Executors.newCachedThreadPool();
        }
 
        /**
@@ -43,7 +48,7 @@
        }
 
        @Override
-       public void execute(final TaskFactory factory) {
+       protected void execute(final TaskFactory factory, boolean wait) {
                final TaskIterator taskIterator = factory.getTaskIterator();
                final Timer timer = new Timer();
                final ConsoleTaskMonitor taskMonitor = new 
ConsoleTaskMonitor(timer);
@@ -72,8 +77,10 @@
                        }
                };
 
-               Thread thread = new Thread(runnable);
-               thread.start();
+               Future<?> future = taskExecutorService.submit(runnable);        
+
+               if ( wait )
+                       try { future.get(); } catch (Exception e) {}
        }
 
        class ConsoleTaskMonitor implements TaskMonitor

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to