changeset 431:83b92b475d9d

Moved config file for queries and read the file via stream from resources.
author Raimund Renkert <raimund.renkert@intevation.de>
date Fri, 06 Feb 2015 12:21:32 +0100
parents 5fe37b00ed41
children a86d9c01c1ac
files src/main/java/de/intevation/lada/query/QueryTools.java src/main/resources/META-INF/queryconf.json src/main/resources/queryconf.json
diffstat 3 files changed, 89 insertions(+), 90 deletions(-) [+]
line wrap: on
line diff
--- a/src/main/java/de/intevation/lada/query/QueryTools.java	Fri Feb 06 12:20:10 2015 +0100
+++ b/src/main/java/de/intevation/lada/query/QueryTools.java	Fri Feb 06 12:21:32 2015 +0100
@@ -8,12 +8,8 @@
 package de.intevation.lada.query;
 
 import java.io.IOException;
+import java.io.InputStream;
 import java.io.StringReader;
-import java.net.URL;
-import java.nio.ByteBuffer;
-import java.nio.charset.Charset;
-import java.nio.file.Files;
-import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -31,7 +27,7 @@
  */
 public class QueryTools
 {
-    private static String FILE = "/META-INF/queryconf.json";
+    private static String FILE = "/queryconf.json";
     /**
      * Read the config file using the system property
      * "de.intevation.lada.sqlconfig".
@@ -40,10 +36,13 @@
      */
     public static String readConfigFile() {
         try {
-            URL path = QueryConfig.class.getResource(FILE);
-            byte[] encoded = Files.readAllBytes(Paths.get(path.getPath()));
-            Charset encoding = Charset.defaultCharset();
-            return encoding.decode(ByteBuffer.wrap(encoded)).toString();
+            InputStream inputStream = QueryConfig.class.getResourceAsStream(FILE);
+            int ch;
+            StringBuilder builder = new StringBuilder();
+            while((ch = inputStream.read()) != -1) {
+                builder.append((char)ch);
+            }
+            return builder.toString();
         }
         catch (IOException ioe) {
             ioe.printStackTrace();
--- a/src/main/resources/META-INF/queryconf.json	Fri Feb 06 12:20:10 2015 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,80 +0,0 @@
-[
-{   "id": 1,
-    "name": "Kein Filter",
-    "description": "Abfrage der Proben ohne Filter",
-    "sql": "select probe_id, mst_id, umw_id from l_probe",
-    "result": [
-        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
-        {"dataIndex": "mstId", "header": "MST", "width": 100},
-        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100}
-    ],
-    "filters": [
-    ]
-},
-{   "id": 2,
-    "name": "MST und UMW",
-    "description": "Abfrage der Proben gefiltert nach Messtellen ID und ID des Umweltbereichs",
-    "sql": "select probe_id, mst_id, umw_id from l_probe where (mst_id = :mst_id OR '' = :mst_id) and (umw_id = :umw_id OR '' = :umw_id)",
-    "result": [
-        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
-        {"dataIndex": "mstId", "header": "MST", "width": 100},
-        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100}
-    ],
-    "filters": [
-        {"dataIndex": "mst_id", "type": "listmst", "label": "Messstelle"},
-        {"dataIndex": "umw_id", "type": "listumw", "label": "Umweltbereich"}
-    ]
-},
-{   "id": 3,
-    "name": "Proben pro Land",
-    "description": "Detailiertere Beschreibung der Abfrage",
-    "sql": "select probe_id, netzbetreiber_id, mst_id, umw_id, hauptproben_nr from l_probe where (netzbetreiber_id = :netz OR '' = :netz)",
-    "result": [
-        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
-        {"dataIndex": "netzbetreiberId", "header": "Land", "width": 100},
-        {"dataIndex": "mstId", "header": "MST", "width": 100},
-        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100},
-        {"dataIndex": "hauptprobenNr", "header": "Proben-Nr", "width": 100}
-    ],
-    "filters": [
-        {"dataIndex": "netz", "type": "listnetz", "label": "Land"}
-    ]
-},
-{   "id": 4,
-    "name": "alle Proben mit Ort",
-    "description": "alle Proben mit Entnahmeort",
-    "sql": "select lp.probe_id, lp.netzbetreiber_id, lp.mst_id, lp.umw_id, lp.hauptproben_nr, ort.gem_id, s_verwaltungseinheit.bezeichnung from l_probe left outer join l_ort on (lp.probe_id = l_ort.probe_id) left outer join ort on (l_ort.ort_id = ort.ort_id) left outer join s_verwaltungseinheit on (ort.gem_id = s_verwaltungseinheit.gem_id) where l_ort.orts_typ = 'E' or l_ort.orts_typ is null",
-    "result": [
-        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
-        {"dataIndex": "netzbetreiberId", "header": "Land", "width": 50},
-        {"dataIndex": "mstId", "header": "MST", "width": 60},
-        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100},
-        {"dataIndex": "hauptprobenNr", "header": "Proben-Nr", "width": 100},
-        {"dataIndex": "gemId", "header": "Gem-ID", "width": 100},
-        {"dataIndex": "bezeichnung", "header": "Gemeinde", "flex": 1}
-    ],
-    "filters": [
-    ]
-},
-{   "id": 5,
-    "name": "Proben pro Land und UMW (Multiselect)",
-    "description": "Abfrage aller Proben gefiltert pro Land und Umweltbereich (mit Mehrfachauswahl)",
-    "sql": "select lp.probe_id, lp.netzbetreiber_id, lp.mst_id, to_char(lp.probeentnahme_beginn,'YYYY-mm-dd HH24:MI') entnahme_von, to_char(lp.probeentnahme_ende,'YYYY-mm-dd HH24:MI') entnahme_bis, lp.umw_id, lp.hauptproben_nr, l_ort.orts_typ, ort.gem_id, s_verwaltungseinheit.bezeichnung from l_probe left outer join l_ort on (lp.probe_id = l_ort.probe_id) left outer join ort on (l_ort.ort_id = ort.ort_id) left outer join s_verwaltungseinheit on (ort.gem_id = s_verwaltungseinheit.gem_id) where (l_ort.orts_typ = 'E' or l_ort.orts_typ is null) and lp.netzbetreiber_id = :netz and (umw_id similar to (:umw_id) OR '' = :umw_id)",
-    "result": [
-        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
-        {"dataIndex": "netzbetreiberId", "header": "Land", "width": 50},
-        {"dataIndex": "mstId", "header": "MST", "width": 50},
-        {"dataIndex": "entnahmeVon", "header": "Entnahme von", "width": 120},
-        {"dataIndex": "entnahmeBis", "header": "Entnahme bis", "width": 120},
-        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100},
-        {"dataIndex": "hauptprobenNr", "header": "Proben-Nr", "width": 100},
-        {"dataIndex": "ortsTyp", "header": "Ortstyp", "width": 50},
-        {"dataIndex": "genId", "header": "Gemeinde-ID", "width": 100},
-        {"dataIndex": "bezeichnung", "header": "Gemeinde", "flex": 1}
-    ],
-    "filters": [
-        {"dataIndex": "netz", "type": "listnetz", "label": "Land"},
-        {"dataIndex": "umw_id", "type": "listumw", "label": "Umweltbereich", "multiselect":true}
-    ]
-}
-]
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/resources/queryconf.json	Fri Feb 06 12:21:32 2015 +0100
@@ -0,0 +1,80 @@
+[
+{   "id": 1,
+    "name": "Kein Filter",
+    "description": "Abfrage der Proben ohne Filter",
+    "sql": "select probe_id, mst_id, umw_id from l_probe",
+    "result": [
+        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
+        {"dataIndex": "mstId", "header": "MST", "width": 100},
+        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100}
+    ],
+    "filters": [
+    ]
+},
+{   "id": 2,
+    "name": "MST und UMW",
+    "description": "Abfrage der Proben gefiltert nach Messtellen ID und ID des Umweltbereichs",
+    "sql": "select probe_id, mst_id, umw_id from l_probe where (mst_id = :mst_id OR '' = :mst_id) and (umw_id = :umw_id OR '' = :umw_id)",
+    "result": [
+        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
+        {"dataIndex": "mstId", "header": "MST", "width": 100},
+        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100}
+    ],
+    "filters": [
+        {"dataIndex": "mst_id", "type": "listmst", "label": "Messstelle"},
+        {"dataIndex": "umw_id", "type": "listumw", "label": "Umweltbereich"}
+    ]
+},
+{   "id": 3,
+    "name": "Proben pro Land",
+    "description": "Detailiertere Beschreibung der Abfrage",
+    "sql": "select probe_id, netzbetreiber_id, mst_id, umw_id, hauptproben_nr from l_probe where (netzbetreiber_id = :netz OR '' = :netz)",
+    "result": [
+        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
+        {"dataIndex": "netzbetreiberId", "header": "Land", "width": 100},
+        {"dataIndex": "mstId", "header": "MST", "width": 100},
+        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100},
+        {"dataIndex": "hauptprobenNr", "header": "Proben-Nr", "width": 100}
+    ],
+    "filters": [
+        {"dataIndex": "netz", "type": "listnetz", "label": "Land"}
+    ]
+},
+{   "id": 4,
+    "name": "alle Proben mit Ort",
+    "description": "alle Proben mit Entnahmeort",
+    "sql": "select lp.probe_id, lp.netzbetreiber_id, lp.mst_id, lp.umw_id, lp.hauptproben_nr, ort.gem_id, s_verwaltungseinheit.bezeichnung from l_probe left outer join l_ort on (lp.probe_id = l_ort.probe_id) left outer join ort on (l_ort.ort_id = ort.ort_id) left outer join s_verwaltungseinheit on (ort.gem_id = s_verwaltungseinheit.gem_id) where l_ort.orts_typ = 'E' or l_ort.orts_typ is null",
+    "result": [
+        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
+        {"dataIndex": "netzbetreiberId", "header": "Land", "width": 50},
+        {"dataIndex": "mstId", "header": "MST", "width": 60},
+        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100},
+        {"dataIndex": "hauptprobenNr", "header": "Proben-Nr", "width": 100},
+        {"dataIndex": "gemId", "header": "Gem-ID", "width": 100},
+        {"dataIndex": "bezeichnung", "header": "Gemeinde", "flex": 1}
+    ],
+    "filters": [
+    ]
+},
+{   "id": 5,
+    "name": "Proben pro Land und UMW (Multiselect)",
+    "description": "Abfrage aller Proben gefiltert pro Land und Umweltbereich (mit Mehrfachauswahl)",
+    "sql": "select lp.probe_id, lp.netzbetreiber_id, lp.mst_id, to_char(lp.probeentnahme_beginn,'YYYY-mm-dd HH24:MI') entnahme_von, to_char(lp.probeentnahme_ende,'YYYY-mm-dd HH24:MI') entnahme_bis, lp.umw_id, lp.hauptproben_nr, l_ort.orts_typ, ort.gem_id, s_verwaltungseinheit.bezeichnung from l_probe left outer join l_ort on (lp.probe_id = l_ort.probe_id) left outer join ort on (l_ort.ort_id = ort.ort_id) left outer join s_verwaltungseinheit on (ort.gem_id = s_verwaltungseinheit.gem_id) where (l_ort.orts_typ = 'E' or l_ort.orts_typ is null) and lp.netzbetreiber_id = :netz and (umw_id similar to (:umw_id) OR '' = :umw_id)",
+    "result": [
+        {"dataIndex": "probeId", "header": "ProbeId", "width": 100},
+        {"dataIndex": "netzbetreiberId", "header": "Land", "width": 50},
+        {"dataIndex": "mstId", "header": "MST", "width": 50},
+        {"dataIndex": "entnahmeVon", "header": "Entnahme von", "width": 120},
+        {"dataIndex": "entnahmeBis", "header": "Entnahme bis", "width": 120},
+        {"dataIndex": "umwId", "header": "Umweltbereich", "width": 100},
+        {"dataIndex": "hauptprobenNr", "header": "Proben-Nr", "width": 100},
+        {"dataIndex": "ortsTyp", "header": "Ortstyp", "width": 50},
+        {"dataIndex": "genId", "header": "Gemeinde-ID", "width": 100},
+        {"dataIndex": "bezeichnung", "header": "Gemeinde", "flex": 1}
+    ],
+    "filters": [
+        {"dataIndex": "netz", "type": "listnetz", "label": "Land"},
+        {"dataIndex": "umw_id", "type": "listumw", "label": "Umweltbereich", "multiselect":true}
+    ]
+}
+]
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)