From 49a993786c6435cc17780241dd205a2ca1a818a2 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Tue, 7 Jan 2020 15:34:57 +0100 Subject: Add TCP interface Supports password protection --- .../src/main/java/org/openslx/taskmanager/App.java | 26 +++++++++++++++++----- 1 file changed, 21 insertions(+), 5 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 6b281d6..d64929d 100644 --- a/daemon/src/main/java/org/openslx/taskmanager/App.java +++ b/daemon/src/main/java/org/openslx/taskmanager/App.java @@ -1,12 +1,14 @@ package org.openslx.taskmanager; -import java.net.SocketException; +import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.log4j.BasicConfigurator; +import org.apache.log4j.Logger; import org.openslx.taskmanager.main.Taskmanager; -import org.openslx.taskmanager.network.NetworkHandler; +import org.openslx.taskmanager.network.NetworkHandlerTcp; +import org.openslx.taskmanager.network.NetworkHandlerUdp; import org.openslx.taskmanager.network.RequestParser; /** @@ -15,18 +17,32 @@ import org.openslx.taskmanager.network.RequestParser; */ public class App { + + private static final Logger log = Logger.getLogger( App.class ); - public static void main( String[] args ) throws SocketException, InterruptedException + public static void main( String[] args ) throws InterruptedException, IOException { BasicConfigurator.configure(); + if (Global.PORT_UDP == -1 && Global.PORT_TCP == -1) { + log.fatal( "Neither UDP nor TCP configured" ); + System.exit( 1 ); + } // Load all task plugins Environment.load( "config/environment" ); List threads = new ArrayList<>(); Taskmanager tm = new Taskmanager(); RequestParser parser = new RequestParser( tm ); - NetworkHandler nh = new NetworkHandler( Global.LISTEN_PORT, Global.LISTEN_ADDRESS, parser ); + NetworkHandlerUdp udp = null; + NetworkHandlerTcp tcp = null; + if (Global.PORT_UDP != -1) { + udp = new NetworkHandlerUdp( Global.PORT_UDP, Global.LISTEN_ADDRESS, parser ); + threads.add( new Thread( udp ) ); + } + if (Global.PORT_TCP != -1) { + tcp = new NetworkHandlerTcp( Global.PORT_TCP, Global.LISTEN_ADDRESS, parser ); + threads.add( new Thread( tcp ) ); + } threads.add( new Thread( tm ) ); - threads.add( new Thread( nh ) ); // Wait for everything for (Thread t : threads) { t.start(); -- cgit v1.2.3-55-g7522