From fd3c703e5a31b4194ce32a8ef651bc13a3d03cf1 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Tue, 27 Jan 2015 15:48:22 +0100 Subject: Make taskmanager an instance, add callback for finished jobs, improve parent dependency handling --- .../src/main/java/org/openslx/taskmanager/App.java | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'daemon/src/main/java/org/openslx/taskmanager/App.java') diff --git a/daemon/src/main/java/org/openslx/taskmanager/App.java b/daemon/src/main/java/org/openslx/taskmanager/App.java index 86cae4d..c7dfa18 100644 --- a/daemon/src/main/java/org/openslx/taskmanager/App.java +++ b/daemon/src/main/java/org/openslx/taskmanager/App.java @@ -3,12 +3,13 @@ package org.openslx.taskmanager; import java.io.File; import java.io.IOException; import java.net.SocketException; - -import junit.runner.ClassPathTestCollector; +import java.util.ArrayList; +import java.util.List; import org.apache.log4j.BasicConfigurator; import org.openslx.taskmanager.main.Taskmanager; import org.openslx.taskmanager.network.NetworkHandler; +import org.openslx.taskmanager.network.RequestParser; import org.openslx.taskmanager.util.ClassLoaderHack; /** @@ -18,7 +19,7 @@ import org.openslx.taskmanager.util.ClassLoaderHack; public class App { - public static void main( String[] args ) throws SocketException + public static void main( String[] args ) throws SocketException, InterruptedException { BasicConfigurator.configure(); // Load all task plugins @@ -40,9 +41,18 @@ public class App } } Environment.load( "config/environment" ); - NetworkHandler.init(); - Taskmanager.run(); + List threads = new ArrayList<>(); + Taskmanager tm = new Taskmanager(); + RequestParser parser = new RequestParser( tm ); + NetworkHandler nh = new NetworkHandler( Global.LISTEN_PORT, Global.LISTEN_ADDRESS, parser ); + threads.add( new Thread( tm ) ); + threads.add( new Thread( nh ) ); // Wait for everything - NetworkHandler.join(); + for (Thread t : threads) { + t.start(); + } + for (Thread t : threads) { + t.join(); + } } } -- cgit v1.2.3-55-g7522