Add configuration file for host and port

Change-Id: I54e3c1af23c440c21a725f1caaad6d65a4fdadaa
diff --git a/plugin/src/main/java/de/ids_mannheim/korap/plkexport/PluginServer.java b/plugin/src/main/java/de/ids_mannheim/korap/plkexport/PluginServer.java
index 6d157c9..96fe926 100644
--- a/plugin/src/main/java/de/ids_mannheim/korap/plkexport/PluginServer.java
+++ b/plugin/src/main/java/de/ids_mannheim/korap/plkexport/PluginServer.java
@@ -1,10 +1,15 @@
 package de.ids_mannheim.korap.plkexport;
 
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStream;
+import java.util.Properties;
+
 import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.server.ServerConnector;
 import org.eclipse.jetty.servlet.ServletContextHandler;
 import org.eclipse.jetty.servlet.ServletHolder;
 
-//TODO Set port and host through configuration file
 public class PluginServer {
     public static void main (String[] args) throws Exception {
 
@@ -13,10 +18,36 @@
                 ServletContextHandler.NO_SESSIONS);
         contextHandler.setContextPath("/");
 
-        Server jettyServer = new Server(7777);
+        Properties properties = new Properties();
+        File f = new File("exportPlugin.conf");
+        InputStream in = null;
+        
+        if (!f.exists()) {
+            String rootPath = Thread.currentThread().getContextClassLoader()
+                    .getResource("").getPath();
+            String appConfigPath = rootPath + "exportPlugin.conf";
+            in = new FileInputStream(appConfigPath);
+        }
+        else {
+            in = new FileInputStream(f);
+        }
+
+        properties.load(in);
+        in.close();
+        
+        //Default: Server is available under http://localhost:7070/
+        String portStr = properties.getProperty("server.port", "7070");
+        String host = properties.getProperty("server.host", "localhost");
+        int port = Integer.parseInt(portStr);
+
+        Server jettyServer = new Server();
+        ServerConnector connector = new ServerConnector(jettyServer);
+        connector.setPort(port);
+        connector.setHost(host);
+        connector.setIdleTimeout(60000);
+        jettyServer.addConnector(connector);
+
         jettyServer.setHandler(contextHandler);
-
-
         ServletHolder servletHolder = contextHandler.addServlet(
                 org.glassfish.jersey.servlet.ServletContainer.class, "/*");
         servletHolder.setInitOrder(0);
@@ -28,6 +59,7 @@
 
         try {
             jettyServer.start();
+            System.out.println("PluginServer available under: http://" + host+ ":" + portStr);
             jettyServer.join();
         }
         finally {