Add config option to set source verbatim, e.g. when behind a proxy

Change-Id: Ibeae6f417c13c778d9f7bb29cd9d915dff312f43
diff --git a/src/main/java/de/ids_mannheim/korap/plkexport/Exporter.java b/src/main/java/de/ids_mannheim/korap/plkexport/Exporter.java
index 62cf5c3..c779cc1 100644
--- a/src/main/java/de/ids_mannheim/korap/plkexport/Exporter.java
+++ b/src/main/java/de/ids_mannheim/korap/plkexport/Exporter.java
@@ -31,6 +31,7 @@
     public void setCorpusQueryString (String s);
     public String getSource ();
     public void setSource (String h, String p);
+    public void setSource (String v);
     public int getTotalResults ();
     public boolean hasTimeExceeded ();
     public void setMaxResults (int m);
diff --git a/src/main/java/de/ids_mannheim/korap/plkexport/MatchAggregator.java b/src/main/java/de/ids_mannheim/korap/plkexport/MatchAggregator.java
index f2898a9..1f324f3 100644
--- a/src/main/java/de/ids_mannheim/korap/plkexport/MatchAggregator.java
+++ b/src/main/java/de/ids_mannheim/korap/plkexport/MatchAggregator.java
@@ -169,6 +169,14 @@
         this.src = s.toString();
     };
 
+
+    /**
+     * Set the source information verbose.
+     */
+    public void setSource (String src) {
+        this.src = src;
+    };
+    
     
     /**
      * Get the source information.
diff --git a/src/main/java/de/ids_mannheim/korap/plkexport/Service.java b/src/main/java/de/ids_mannheim/korap/plkexport/Service.java
index 0f5d4f1..9b509fc 100644
--- a/src/main/java/de/ids_mannheim/korap/plkexport/Service.java
+++ b/src/main/java/de/ids_mannheim/korap/plkexport/Service.java
@@ -60,7 +60,6 @@
  * TODO for release:
  * - Rename to "Kalamar-Plugin-Export".
  * - Improve Readme.
- * - Add opaque source, in case source is an internal IP.
  * - Add screenshot.
  *
  * TODO:
@@ -178,6 +177,7 @@
         String port    = prop.getProperty("api.port", "8089");
         String host    = prop.getProperty("api.host", "localhost");
         String path    = prop.getProperty("api.path", "");
+        String source  = prop.getProperty("api.source");
         int pageSize   = Integer.parseInt(prop.getProperty("conf.page_size", "5"));
         int maxResults = Integer.parseInt(prop.getProperty("conf.max_exp_limit", "10000"));
 
@@ -244,7 +244,10 @@
         exp.setMaxResults(maxResults);
         exp.setQueryString(q);
         exp.setCorpusQueryString(cq);
-        exp.setSource(host, path);
+        if (source != null)
+            exp.setSource(source);
+        else
+            exp.setSource(host, path);
        
         // Set filename
         if (fname != null)
diff --git a/src/main/resources/exportPlugin.conf b/src/main/resources/exportPlugin.conf
index a76c44d..fc64329 100644
--- a/src/main/resources/exportPlugin.conf
+++ b/src/main/resources/exportPlugin.conf
@@ -12,6 +12,10 @@
 api.host=korap.ids-mannheim.de
 api.scheme=https
 
+# Overwrite to set source to a string,
+# especially useful when run behind a proxy.
+# api.source = korap.ids-mannheim.de
+
 # Asset Configuration
 asset.host=korap.ids-mannheim.de
 asset.scheme=https