# HG changeset patch
# User gernotbelger
# Date 1540399238 -7200
# Node ID ba0561906f81945eb416d44a959bc2141f74d822
# Parent 709a73badd48b1a50907f0ad744da132d9321f84
Uinfo inundation duration workflow (vegetation zones, scenario), wms-config changed
diff -r 709a73badd48 -r ba0561906f81 artifacts/doc/conf/artifacts/uinfo.xml
--- a/artifacts/doc/conf/artifacts/uinfo.xml Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/doc/conf/artifacts/uinfo.xml Wed Oct 24 18:40:38 2018 +0200
@@ -256,7 +256,7 @@
-
+
diff -r 709a73badd48 -r ba0561906f81 artifacts/doc/conf/modules/wms_uedauern_jahre_Beispielfluss.tsv
--- a/artifacts/doc/conf/modules/wms_uedauern_jahre_Beispielfluss.tsv Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/doc/conf/modules/wms_uedauern_jahre_Beispielfluss.tsv Wed Oct 24 18:40:38 2018 +0200
@@ -1,38 +1,38 @@
-# Konfigurationsdatei für die in der Berechnungsart UINFO-Überflutungsdauern auszugebenden URLs
-# Je Gewässer ist zwingend eine Datei mit Namen 'wms_uedauern_jahre_.tsv' anzulegen. Groß-/Kleinschriebung beim Gewässernamen ist zu beachten!
-
-# Die Datei definiert für beliebig viele Layer individuell konfigurierbare Bezeichnungen und URLs.
-# Pro Layer ist eine Zeile folgender Form anzulegen:
-#
-
-# Änderungen werden erst nach einem Neustart des Servers wirksam.
-
-1990 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-1991 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-1992 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-1993 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-1994 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-1995 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+# Konfigurationsdatei für die in der Berechnungsart UINFO-Überflutungsdauern auszugebenden URLs
+# Je Gewässer ist zwingend eine Datei mit Namen 'wms_uedauern_jahre_.tsv' anzulegen. Groß-/Kleinschriebung beim Gewässernamen ist zu beachten!
+
+# Die Datei definiert für beliebig viele Layer individuell konfigurierbare Bezeichnungen und URLs.
+# Pro Layer ist eine Zeile folgender Form anzulegen:
+#
+
+# Änderungen werden erst nach einem Neustart des Servers wirksam.
+
+1990 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+1991 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+1992 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+1993 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+1994 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+1995 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
1996 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-1997 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-1998 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-1999 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
-
-2000 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2001 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2002 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2003 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2004 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2005 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2006 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2007 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2008 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-2009 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
-
-2010 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
-2011 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
-2012 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
-2013 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
-2014 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
-2015 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
-2016 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
\ No newline at end of file
+1997 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+1998 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+1999 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+
+2000 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2001 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2002 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2003 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2004 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2005 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2006 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2007 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2008 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+2009 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+
+2010 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+2011 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+2012 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+2013 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+2014 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+2015 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+2016 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
diff -r 709a73badd48 -r ba0561906f81 artifacts/doc/conf/modules/wms_uedauern_mittel_Beispielfluss.tsv
--- a/artifacts/doc/conf/modules/wms_uedauern_mittel_Beispielfluss.tsv Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/doc/conf/modules/wms_uedauern_mittel_Beispielfluss.tsv Wed Oct 24 18:40:38 2018 +0200
@@ -1,14 +1,14 @@
-# Konfigurationsdatei für die in der Berechnungsart UINFO-Überflutungsdauern auszugebenden URLs
-# Je Gewässer ist zwingend eine Datei mit Namen 'wms_uedauern_mittel_.tsv' anzulegen. Groß-/Kleinschriebung beim Gewässernamen ist zu beachten!
-
-# Die Datei definiert für beliebig viele Layer individuell konfigurierbare Bezeichnungen und URLs.
-# Pro Layer ist eine Zeile folgender Form anzulegen:
-#
-
-# Änderungen werden erst nach einem Neustart des Servers wirksam.
-
-Mittelwert (1990-2016) 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
-Median (1990-2016) 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
-Minimum (1990-2016) 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
-Maximum (1990-2016) 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
-Standardabweichung (1990-2016) 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
+# Konfigurationsdatei für die in der Berechnungsart UINFO-Überflutungsdauern auszugebenden URLs
+# Je Gewässer ist zwingend eine Datei mit Namen 'wms_uedauern_mittel_.tsv' anzulegen. Groß-/Kleinschriebung beim Gewässernamen ist zu beachten!
+
+# Die Datei definiert für beliebig viele Layer individuell konfigurierbare Bezeichnungen und URLs.
+# Pro Layer ist eine Zeile folgender Form anzulegen:
+#
+
+# Änderungen werden erst nach einem Neustart des Servers wirksam.
+
+Mittelwert (1990-2016) 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
+Median (1990-2016) 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
+Minimum (1990-2016) 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
+Maximum (1990-2016) 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
+Standardabweichung (1990-2016) 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_Statistik_1990_2016/MapServer/WMSServer
diff -r 709a73badd48 -r ba0561906f81 artifacts/doc/conf/modules/wms_uedauern_szenario_Beispielfluss.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/artifacts/doc/conf/modules/wms_uedauern_szenario_Beispielfluss.tsv Wed Oct 24 18:40:38 2018 +0200
@@ -0,0 +1,50 @@
+# Konfigurationsdatei für die in der Berechnungsart UINFO-Überflutungsdauern auszugebenden URLs
+# Je Gewässer ist zwingend eine Datei mit Namen 'wms_uedauern_jahre_.tsv' anzulegen. Groß-/Kleinschriebung beim Gewässernamen ist zu beachten!
+
+# Die Datei definiert für beliebig viele Layer individuell konfigurierbare Bezeichnungen und URLs.
+# Pro Layer ist eine Zeile folgender Form anzulegen:
+#
+
+# Änderungen werden erst nach einem Neustart des Servers wirksam.
+
+-200 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-190 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-180 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-170 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-160 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-150 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-140 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-130 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-120 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-110 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-100 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_1990_1999/MapServer/WMSServer
+-90 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+-80 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+-70 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+-60 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+-50 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+-40 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+-30 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+-20 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+-10 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+0 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+10 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2000_2009/MapServer/WMSServer
+20 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+30 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+40 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+50 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+60 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+70 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+80 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+90 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+100 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+110 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 1 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+120 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 2 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+130 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 3 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+140 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 4 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+150 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 5 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+160 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 6 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+170 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 7 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+180 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 8 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+190 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 9 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
+200 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer 0 https://geoportal.bafg.de/arcgis3/services/Flut3/Elbe_2010_2019/MapServer/WMSServer
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/tkhstate/BedQualityD50TimeRangeConfig.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/tkhstate/BedQualityD50TimeRangeConfig.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/tkhstate/BedQualityD50TimeRangeConfig.java Wed Oct 24 18:40:38 2018 +0200
@@ -98,9 +98,10 @@
final Collection ranges = new ArrayList<>(results.size());
- for (final String[] line : results)
- ranges.add(new CalRange(parseInput(line[0]), parseInput(line[1]), parseInput(line[2]), parseInput(line[3])));
-
+ for (final String[] line : results) {
+ if (line != null && line.length == 4)
+ ranges.add(new CalRange(parseInput(line[0]), parseInput(line[1]), parseInput(line[2]), parseInput(line[3])));
+ }
return ranges.toArray(new CalRange[ranges.size()]);
}
catch (final TsvReaderException | IOException | BedQualityParseException e) {
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/tkhstate/TsvHelper.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/tkhstate/TsvHelper.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/tkhstate/TsvHelper.java Wed Oct 24 18:40:38 2018 +0200
@@ -34,7 +34,7 @@
}
}
- public static List readTsv(final File inputFile, final int requiredLength) throws IOException, TsvReaderException {
+ public static List readTsv(final File inputFile, final int maxLength) throws IOException, TsvReaderException {
final List result = new ArrayList<>();
@@ -50,9 +50,9 @@
continue;
}
- if (line.length != requiredLength) {
+ if (line.length > maxLength) {
reader.close();
- throw new TsvReaderException("Invalid number of Tokens; should be " + requiredLength + "!");
+ throw new TsvReaderException("Invalid number of Tokens; should not be more than" + maxLength + "!");
}
result.add(line);
}
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/AbstractYearEpochUrlState.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/AbstractYearEpochUrlState.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/AbstractYearEpochUrlState.java Wed Oct 24 18:40:38 2018 +0200
@@ -40,9 +40,11 @@
this.type = type;
}
+ protected abstract String getDatakey();
+
@Override
protected void appendItems(final Artifact artifact, final ElementCreator creator, final String name, final CallContext context, final Element select) {
- final String dataKey = "year_epoch_select";
+ final String dataKey = getDatakey();
try {
if (dataKey.equals(name)) {
@@ -54,7 +56,7 @@
final AddTableDataHelper helper = new AddTableDataHelper(creator, select, "select_key", context.getMeta()); // pinKeycolum; nicht zu
helper.addColumn(0, "pinfrom", "60", "common.client.ui.selection", "ICON", "CENTER", "from");
- helper.addColumn(1, "select_key", "240", yearOrEpoch(), columnType, "LEFT", null);
+ helper.addColumn(1, "select_key", "240", getColumnHeader(), columnType, "LEFT", null);
for (final String year : items) {
final Map row = new HashMap<>();
@@ -76,7 +78,18 @@
}
}
- private String yearOrEpoch() {
+ private String getColumnHeader() {
+ switch (this.type) {
+ case szenario:
+ return "state.uinfo.inundation.scenario.table_header";
+ default:
+ return getTypeString();
+
+ }
+
+ }
+
+ private String getTypeString() {
switch (this.type) {
case jahre:
return "year";
@@ -84,6 +97,9 @@
case mittel:
return "state.uinfo.epoch";
+ case szenario:
+ return "state.uinfo.inundation.scenario";
+
default:
throw new IllegalStateException();
}
@@ -91,6 +107,6 @@
@Override
protected Element createData(final XMLUtils.ElementCreator cr, final Artifact artifact, final StateData data, final CallContext context) {
- return ScenarioTypeState.changeHeaderForCurrentState(yearOrEpoch(), data.getName(), cr, context);
+ return ScenarioTypeState.changeHeaderForCurrentState(getTypeString(), data.getName(), cr, context);
}
}
\ No newline at end of file
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationAccess.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationAccess.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationAccess.java Wed Oct 24 18:40:38 2018 +0200
@@ -11,8 +11,6 @@
package org.dive4elements.river.artifacts.uinfo.inundationduration;
import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.net.URLEncoder;
import org.dive4elements.artifacts.CallContext;
import org.dive4elements.river.artifacts.access.RangeAccess;
@@ -22,7 +20,7 @@
import org.dive4elements.river.artifacts.uinfo.UINFOArtifact;
import org.dive4elements.river.artifacts.uinfo.UinfoCalcMode;
import org.dive4elements.river.artifacts.uinfo.inundationduration.InundationDurationCalculationResult.WmsLayer;
-import org.dive4elements.river.artifacts.uinfo.inundationduration.UedauernConfiguration.YearType;
+import org.dive4elements.river.artifacts.uinfo.inundationduration.UedauernConfiguration.WmsConfig;
/**
* Access to the flow depth calculation type specific SInfo artifact data.
@@ -34,39 +32,37 @@
*/
final class InundationDurationAccess extends RangeAccess {
- // IMMER ABGLEICHEN MIT SuperVegZonesTablePanel.TABLE_CELL_SEPARATOR
- public static final String TABLE_CELL_SEPARATOR = "TABLE_CELL_SEPARATOR";
- public static final String TABLE_ROW_SEPARATOR = "TABLE_ROW_SEPARATOR";
-
private final EpochYearAccessHelper helper;
- public static enum WmsClassification {
- asIs {
- @Override
- public String configureAddress(final String serverAddress, final String url, final String vegetationZoneId) {
- return url;
- }
- },
- vegetationZone {
- @Override
- public String configureAddress(final String serverAddress, final String url, final String vegetationZoneId) {
-
- try {
- final String urlEncoded = URLEncoder.encode(url, "UTF-8");
- final String vegZoneIdEncoded = URLEncoder.encode(vegetationZoneId, "UTF-8");
-
- return String.format("%s/%s/%s/%s", serverAddress, VegetationWmsResource.BASE_PATH, vegZoneIdEncoded, urlEncoded);
- }
- catch (final UnsupportedEncodingException e) {
- /* should never happen */
- e.printStackTrace();
- return null;
- }
- }
- };
-
- public abstract String configureAddress(String serverAddress, String url, String vegetationZoneId);
- }
+ // public static enum WmsClassification {
+ // asIs {
+ // @Override
+ // public String configureAddress(final WmsConfig config) {
+ // return config.getUrl();
+ // }
+ // }
+ // // ,
+ // // vegetationZone {
+ // // @Override
+ // // public String configureAddress(final String serverAddress, final String url, final String vegetationZoneId) {
+ // //
+ // // try {
+ // // final String urlEncoded = URLEncoder.encode(url, "UTF-8");
+ // // final String vegZoneIdEncoded = URLEncoder.encode(vegetationZoneId, "UTF-8");
+ // //
+ // // return String.format("%s/%s/%s/%s", serverAddress, VegetationWmsResource.BASE_PATH, vegZoneIdEncoded, urlEncoded);
+ // // }
+ // // catch (final UnsupportedEncodingException e) {
+ // // /* should never happen */
+ // // e.printStackTrace();
+ // // return null;
+ // // }
+ // // }
+ // // }
+ // ;
+ //
+ // public abstract String configureAddress(final WmsConfig config);
+ // }
// Fields from state:
//
@@ -94,60 +90,59 @@
return false;
}
- public WmsLayer createWMSLayer(final CallContext context, final String i10nKey, final WmsClassification classification, final String vegZoneId)
- throws IOException, TsvReaderException {
+ // public WmsLayer createWMSLayer(final CallContext context, final String i10nKey, final WmsConfig classification)
+ // throws IOException, TsvReaderException {
+ //
+ // final YearType type = isUseYear() ? YearType.jahre : YearType.mittel;
+ // final String selectedElement = getSelectedLabel();
+ //
+ // final String layerLabel = Resources.getMsg(context.getMeta(), i10nKey, new Object[] { selectedElement });
+ //
+ // return createWMSLayer(context, layerLabel, type, selectedElement, classification);
+ // }
- final YearType type = isUseYear() ? YearType.jahre : YearType.mittel;
- final String selectedElement = getSelectedLabel();
+ // public WmsLayer createScenarioWMSLayer(final CallContext context, final String i10nKey, final WmsConfig
+ // classification, final String vegZoneId)
+ // throws IOException, TsvReaderException {
+ //
+ // // FIXME: use scenario-cm as label, and scenario-type
+ // final YearType type = YearType.jahre;
+ //
+ // final String selectedElement = Integer.toString(getDwspl());
+ // final String layerLabel = Resources.getMsg(context.getMeta(), i10nKey, new Object[] { selectedElement });
+ //
+ // return createWMSLayer(context, layerLabel, type, selectedElement, classification);
+ // }
- final String layerLabel = Resources.getMsg(context.getMeta(), i10nKey, new Object[] { selectedElement });
+ public WmsLayer createWMSLayer(final CallContext context, final String layerLabel, final String selectedItem, final WmsConfig config,
+ final boolean showLayerLink) throws IOException, TsvReaderException {
- return createWMSLayer(context, layerLabel, type, selectedElement, classification, vegZoneId);
+ // final String serverAddress = context.getDatabase().getServerAddress();
+ // final UedauernConfiguration config = UedauernConfiguration.getInstance(getRiverName(), type);
+
+ final String layerLabelFinal = Resources.getMsg(context.getMeta(), layerLabel, new Object[] { selectedItem });
+ final String url = config.getUrl();
+ final String layer = config.getLayer();
+
+ if (url != null && layer != null) {
+ // final String realUrl = classification.configureAddress(serverAddress, url, vegZoneId);
+
+ return new WmsLayer(layerLabelFinal, url, layer, showLayerLink);
+ }
+ return null;
}
- public WmsLayer createScenarioWMSLayer(final CallContext context, final String i10nKey, final WmsClassification classification, final String vegZoneId)
- throws IOException, TsvReaderException {
-
- // FIXME: use scenario-cm as label, and scenario-type
- final YearType type = YearType.jahre;
-
- final String selectedElement = Integer.toString(getDwspl());
- final String layerLabel = Resources.getMsg(context.getMeta(), i10nKey, new Object[] { selectedElement });
-
- return createWMSLayer(context, layerLabel, type, selectedElement, classification, vegZoneId);
- }
-
- private WmsLayer createWMSLayer(final CallContext context, final String layerLabel, final YearType type, final String selectedElement,
- final WmsClassification classification, final String vegZoneId)
- throws IOException, TsvReaderException {
-
- final String serverAddress = context.getDatabase().getServerAddress();
-
- final UedauernConfiguration config = UedauernConfiguration.getInstance(getRiverName(), type);
- final String url = config.getUrl(selectedElement);
- final String layer = config.getLayer(selectedElement);
-
- final String realUrl = classification.configureAddress(serverAddress, url, vegZoneId);
-
- return new WmsLayer(layerLabel, realUrl, layer, classification == WmsClassification.asIs);
- }
-
- private String getSelectedLabel() {
+ public String getSelectedLabel() {
return this.getString("year_epoch_select");
}
- private Integer getDwspl() {
+ public String getSelectedSzenario() {
if (getIsUseScenario())
- return super.getInteger("sedimentheight");
+ return super.getString("inundation_scenario");
return null;
}
- public String getVegZones() {
- // mit VegetationzonesAccess zusammenlegen (eine Zeile sparen...)
- return super.getString("vegzones");
- }
-
public boolean getIsUseScenario() {
return super.getBoolean("use_scenario");
}
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculation.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculation.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculation.java Wed Oct 24 18:40:38 2018 +0200
@@ -16,8 +16,8 @@
import org.dive4elements.river.artifacts.model.CalculationResult;
import org.dive4elements.river.artifacts.sinfo.tkhstate.TsvHelper.TsvReaderException;
import org.dive4elements.river.artifacts.uinfo.UINFOArtifact;
-import org.dive4elements.river.artifacts.uinfo.inundationduration.InundationDurationAccess.WmsClassification;
import org.dive4elements.river.artifacts.uinfo.inundationduration.InundationDurationCalculationResult.WmsLayer;
+import org.dive4elements.river.artifacts.uinfo.inundationduration.UedauernConfiguration.YearType;
/**
* @author Domenico Nardi Tironi
@@ -42,27 +42,31 @@
// final List zones = VegetationZoneServerClientXChange.parse(zonesRaw);
// FIXME: instead find out a-uuid of referenced vegetations
// FIXME:
- final String vegZoneId = "unknown";
+ // final String vegZoneId = "unknown";
final boolean isUseScenario = indurax.getIsUseScenario();
final InundationDurationCalculationResult result = new InundationDurationCalculationResult();
- final WmsLayer inundationDurationLayer = indurax.createWMSLayer(this.context, "uinfo.export.url.inundationduration.inundationduration",
- WmsClassification.asIs, vegZoneId);
- result.addLayer(inundationDurationLayer);
+ final String selectedItem = indurax.getSelectedLabel();
+ final YearType type = indurax.isUseYear() ? YearType.jahre : YearType.mittel;
+ final UedauernConfiguration config = UedauernConfiguration.getInstance(indurax.getRiverName(), type);
- final WmsLayer vegetationLayer = indurax.createWMSLayer(this.context, "uinfo.export.url.inundationduration.vegetation",
- WmsClassification.vegetationZone, vegZoneId);
- result.addLayer(vegetationLayer);
+ addLayer(indurax, "uinfo.export.url.inundationduration.inundationduration", selectedItem, config.getDefaultWmsConfig(selectedItem), result, true);
+ addLayer(indurax, "uinfo.export.url.inundationduration.vegetation", selectedItem, config.getVegWmsConfig(selectedItem), result, false);
if (isUseScenario) {
- // TODO: wieder einkommentieren, sobald die URL-Definition für Szenarien geklärt ist (und hoffentlich analog zu "mittel"
- // und "jahre" funktioniert)
- // final WmsLayer scenarioInundationDurationLayer = indurax.createScenarioWMSLayer(this.context.getMeta(),
- // "uinfo.export.url.inundationduration.scenario");
- // result.addLayer(scenarioInundationDurationLayer);
- //
+
+ final UedauernConfiguration configSzenario = UedauernConfiguration.getInstance(indurax.getRiverName(), YearType.szenario);
+
+ final String selectedScenario = indurax.getSelectedSzenario();
+
+ addLayer(indurax, "uinfo.export.url.inundationduration.scenario", selectedScenario, configSzenario.getDefaultWmsConfig(selectedScenario),
+ result, true);
+
+ addLayer(indurax, "uinfo.export.url.inundationduration.vegetation_scenario", selectedScenario, configSzenario.getVegWmsConfig(selectedScenario),
+ result, false);
+
// // TODO: add vegetationzone-values as styles to layer
// final WmsLayer scenarioVegetationLayer = indurax.createScenarioWMSLayer(this.context.getMeta(),
// "uinfo.export.url.inundationduration.vegetation_scenario");
@@ -77,4 +81,13 @@
return new CalculationResult(null, problems);
}
}
+
+ private void addLayer(final InundationDurationAccess indurax, final String label, final String selectedItem, final UedauernConfiguration.WmsConfig config,
+ final InundationDurationCalculationResult result, final boolean show) throws IOException, TsvReaderException {
+ if (config != null) {
+ final WmsLayer layer = indurax.createWMSLayer(this.context, label, selectedItem, config, show);
+ if (layer != null)
+ result.addLayer(layer);
+ }
+ }
}
\ No newline at end of file
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/LoadScenarioSelect.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/LoadScenarioSelect.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/LoadScenarioSelect.java Wed Oct 24 18:40:38 2018 +0200
@@ -8,69 +8,30 @@
package org.dive4elements.river.artifacts.uinfo.inundationduration;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.dive4elements.artifactdatabase.data.StateData;
-import org.dive4elements.artifacts.Artifact;
-import org.dive4elements.artifacts.CallContext;
-import org.dive4elements.artifacts.common.utils.XMLUtils;
-import org.dive4elements.artifacts.common.utils.XMLUtils.ElementCreator;
-import org.dive4elements.river.artifacts.states.AddTableDataHelper;
-import org.dive4elements.river.artifacts.states.DefaultState;
-import org.dive4elements.river.artifacts.uinfo.salix.ScenarioTypeState;
-import org.w3c.dom.Element;
+import org.dive4elements.river.artifacts.uinfo.inundationduration.UedauernConfiguration.YearType;
/** State in which to fetch years for sedminent load calculation. */
-public class LoadScenarioSelect extends DefaultState {
+public class LoadScenarioSelect extends AbstractYearEpochUrlState {
private static final long serialVersionUID = 1L;
/**
* The default constructor that initializes an empty State object.
+ *
+ * @return
*/
public LoadScenarioSelect() {
- }
-
- /** Year Select Widget. */
- @Override
- protected String getUIProvider() {
- return "uinfo.sedimentheight_select";
+ super(YearType.szenario);
}
@Override
- protected void appendItems(final Artifact artifact, final ElementCreator creator, final String name, final CallContext context, final Element select) {
- final String datakey = "sedimentheight";
- try {
- if (datakey.equals(name)) {
-
- final AddTableDataHelper helper = new AddTableDataHelper(creator, select, "cm", context.getMeta());
-
- helper.addColumn(0, "pinfrom", "60", "common.client.ui.selection", "ICON", "CENTER", "from");
- helper.addColumn(1, "cm", "60", "uinfo_select_delta_w_column", "INTEGER", "RIGHT", null);
-
- for (int i = -200; i < 210; i = i + 10) {
- final Map row = new HashMap<>();
- row.put("cm", Integer.toString(i));
- helper.addRow(row);
-
- }
- helper.submitMapToXml();
- }
- }
- catch (final IllegalArgumentException iae) {
- iae.printStackTrace();
- }
+ protected String getUIProvider() {
+ return "uinfo.inundation.szenario";
}
@Override
- public boolean validate(final Artifact artifact) throws IllegalArgumentException {
- return true;
+ protected String getDatakey() {
+ return "inundation_scenario";
}
- @Override
- protected Element createData(final XMLUtils.ElementCreator cr, final Artifact artifact, final StateData data, final CallContext context) {
- return ScenarioTypeState.changeHeaderForCurrentState("state.uinfo.inundation.scenario", data.getName(), cr, context);
- }
-}
-// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :
+}
\ No newline at end of file
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/UedauernConfiguration.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/UedauernConfiguration.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/UedauernConfiguration.java Wed Oct 24 18:40:38 2018 +0200
@@ -18,6 +18,7 @@
import java.util.List;
import java.util.Map;
+import org.apache.commons.lang.StringUtils;
import org.dive4elements.river.artifacts.sinfo.tkhstate.TsvHelper;
import org.dive4elements.river.artifacts.sinfo.tkhstate.TsvHelper.TsvReaderException;
@@ -30,12 +31,12 @@
public final static class WmsConfig {
private final String label;
private final String url;
- private final String layer;
+ private final String layer_default;
public WmsConfig(final String label, final String url, final String layer) {
this.label = label;
this.url = url;
- this.layer = layer;
+ this.layer_default = layer;
}
public String getLabel() {
@@ -47,17 +48,20 @@
}
public String getLayer() {
- return this.layer;
+ return this.layer_default;
}
}
public static enum YearType {
- jahre, mittel
+ jahre, mittel, szenario
}
+ private final int DEFAULT_WMS_INDEX = 0;
+ private final int VEGETATIONZONE_WMS_INDEX = 1;
+
private static Map cache = new HashMap<>();
- private final Map wmsConfigs;
+ private final Map wmsConfigs;
public static synchronized UedauernConfiguration getInstance(final String rivername, final YearType type) throws IOException, TsvReaderException {
@@ -70,7 +74,7 @@
return cache.get(cacheKey);
}
- private UedauernConfiguration(final String rivername, final YearType type, final Map wmsConfigs) {
+ private UedauernConfiguration(final String rivername, final YearType type, final Map wmsConfigs) {
this.wmsConfigs = wmsConfigs;
}
@@ -78,15 +82,26 @@
final String configFile = makeFileName(rivername, type);
final File file = TsvHelper.makeFile2(configFile, rivername);
- final List tsv = TsvHelper.readTsv(file, 3);
+ final List tsv = TsvHelper.readTsv(file, 5);
- final Map wmsConfigs = new LinkedHashMap<>(tsv.size());
+ final Map wmsConfigs = new LinkedHashMap<>(tsv.size());
for (final String[] line : tsv) {
- final String label = line[0];
- wmsConfigs.put(label, new WmsConfig(label, line[2], line[1]));
+ if (line != null && line.length > 0 && !StringUtils.isEmpty(line[0])) {
+ final String label = line[0];
+ WmsConfig defaultConfig = null;
+ WmsConfig vegZoneConfig = null;
+
+ if (line.length > 2 && !StringUtils.isEmpty(line[1]) && !StringUtils.isEmpty(line[2])) {
+ defaultConfig = new WmsConfig(label, line[2], line[1]);
+
+ if (line.length > 4 && !StringUtils.isEmpty(line[3]) && !StringUtils.isEmpty(line[4])) {
+ vegZoneConfig = new WmsConfig(label, line[4], line[3]);
+ }
+ }
+ wmsConfigs.put(label, new WmsConfig[] { defaultConfig, vegZoneConfig });
+ }
}
-
return new UedauernConfiguration(rivername, type, wmsConfigs);
}
@@ -98,27 +113,32 @@
return this.wmsConfigs.keySet();
}
- public final String getUrl(final String label) throws UnsupportedEncodingException {
- final WmsConfig wmsConfig = this.wmsConfigs.get(label);
- return wmsConfig.getUrl();
+ public WmsConfig getDefaultWmsConfig(final String label) {
+ return this.getConfig(label, this.DEFAULT_WMS_INDEX);
}
- public String getLayer(final String label) {
- final WmsConfig wmsConfig = this.wmsConfigs.get(label);
- return wmsConfig.getLayer();
+ public WmsConfig getVegWmsConfig(final String label) {
+ return this.getConfig(label, this.VEGETATIONZONE_WMS_INDEX);
+ }
+
+ private WmsConfig getConfig(final String label, final int index) {
+ if (this.wmsConfigs.containsKey(label))
+ if (this.wmsConfigs.get(label) != null && index < this.wmsConfigs.get(label).length)
+ return this.wmsConfigs.get(label)[index];
+
+ return null;
}
public static boolean filesExistsForRiver(final String river) {
- final String configFileYears = makeFileName(river, YearType.jahre);
-
- final File fileJahre = TsvHelper.makeFile2(configFileYears, river);
+ for (final YearType t : YearType.values()) {
+ final String configFile = makeFileName(river, t);
+ final File file = TsvHelper.makeFile2(configFile, river);
- final String configFileMittel = makeFileName(river, YearType.mittel);
- final File fileMittel = TsvHelper.makeFile2(configFileMittel, river);
+ if (TsvHelper.checkFile(file) == null)
+ return false;
+ }
- if (TsvHelper.checkFile(fileJahre) == null || TsvHelper.checkFile(fileMittel) == null)
- return false;
return true;
}
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/WMSEpochSelectState.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/WMSEpochSelectState.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/WMSEpochSelectState.java Wed Oct 24 18:40:38 2018 +0200
@@ -25,4 +25,9 @@
protected String getUIProvider() {
return "uinfo.inundation.wms_epoch";
}
+
+ @Override
+ protected String getDatakey() {
+ return "year_epoch_select";
+ }
}
\ No newline at end of file
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/WMSYearSelectState.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/WMSYearSelectState.java Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/WMSYearSelectState.java Wed Oct 24 18:40:38 2018 +0200
@@ -25,4 +25,10 @@
protected String getUIProvider() {
return "uinfo.inundation.wms_year";
}
+
+ @Override
+ protected String getDatakey() {
+ return "year_epoch_select";
+ }
+
}
\ No newline at end of file
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/resources/messages.properties
--- a/artifacts/src/main/resources/messages.properties Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/resources/messages.properties Wed Oct 24 18:40:38 2018 +0200
@@ -83,6 +83,7 @@
state.uinfo.vegetation_zones.table = Classification of Vegetation Zones and Flooding Durations (FD)
state.uinfo.salix.supraregional = Supraregional Effects
+state.uinfo.inundation.scenario.table_header = Change [cm]
state.uinfo.inundation.year_totalepoch = Year/Epoch
state.uinfo.salix.year_epoch = Year/Epoch
state.uinfo.load.year_with_soundings = Year
@@ -1184,8 +1185,8 @@
uinfo.export.csv.meta.header.veg.color = Color
uinfo.export.url.inundationduration.inundationduration = Flooding Duration ({0})
uinfo.export.url.inundationduration.vegetation = Vegetation Zones ({0})
-uinfo.export.url.inundationduration.vegetation_scenario= Vegetation Zones Scenario ({0}, {1}cm)
-uinfo.export.url.inundationduration.scenario = Flooding Duration Scenario ({0}, {1}cm)
+uinfo.export.url.inundationduration.vegetation_scenario= Vegetation Zones Scenario ({0} cm)
+uinfo.export.url.inundationduration.scenario = Flooding Duration Scenario ({0} cm)
uinfo.chart.salix_line.section.title = Iota (River/Floodplain Connectivity) - Longitudinal Section
uinfo.chart.salix_line.section.yaxis.label = [m]
uinfo_facet_salix_line = Iota
diff -r 709a73badd48 -r ba0561906f81 artifacts/src/main/resources/messages_de.properties
--- a/artifacts/src/main/resources/messages_de.properties Wed Oct 24 12:00:49 2018 +0200
+++ b/artifacts/src/main/resources/messages_de.properties Wed Oct 24 18:40:38 2018 +0200
@@ -83,6 +83,7 @@
state.uinfo.vegetation_zones.table = Einteilung der Vegetationszonen und \u00dcberflutungsdauern (\u00dcFD)
state.uinfo.salix.supraregional = \u00dcberregional wirkende Eingriffe
+state.uinfo.inundation.scenario.table_header = \u00c4nderung [cm]
state.uinfo.inundation.year_totalepoch = Jahr/Epoche
state.uinfo.salix.year_epoch = Jahr/Epoche
state.uinfo.load.year_with_soundings = Jahr
@@ -1184,8 +1185,8 @@
uinfo.export.csv.meta.header.veg.color = Farbe
uinfo.export.url.inundationduration.inundationduration = \u00dcberflutungsdauer ({0})
uinfo.export.url.inundationduration.vegetation = Vegetationszonen ({0})
-uinfo.export.url.inundationduration.vegetation_scenario= Vegetationszonen Szenario ({0}, {1}cm)
-uinfo.export.url.inundationduration.scenario = \u00dcberflutungsdauer Szenario ({0}, {1}cm)
+uinfo.export.url.inundationduration.vegetation_scenario= Vegetationszonen Szenario ({0} cm)
+uinfo.export.url.inundationduration.scenario = \u00dcberflutungsdauer Szenario ({0} cm)
uinfo.chart.salix_line.section.title = Iota (Fluss/Aue-Konnektivit\u00e4t) - L\u00e4ngsschnitt
uinfo.chart.salix_line.section.yaxis.label=[m]
uinfo_facet_salix_line = Iota
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants.java Wed Oct 24 18:40:38 2018 +0200
@@ -1620,4 +1620,6 @@
String bundu_bezugswsts();
String vegetation_zones(); // Order für Datenkorb
+
+ String uinfo_inundation_scenario_old_msg();
}
\ No newline at end of file
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants.properties
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants.properties Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants.properties Wed Oct 24 18:40:38 2018 +0200
@@ -828,6 +828,7 @@
uinfo_inundation_duration_export = Flooding Durations Export
uinfo_inundation_duration_report= Flooding Durations Report
uinfo_inundation_duration_set_vegetation_zone = Set Vegetation Zone Table
+uinfo_inundation_scenario_old_msg = Sounding or Waterlevel Change
uinfo_salix_line_export = Iota Export
uinfo_vegetation_zones_export = Vegetation Zones Export
uinfo_vegetation_zones_report = Vegetation Zones Report
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants_de.properties
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants_de.properties Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/FLYSConstants_de.properties Wed Oct 24 18:40:38 2018 +0200
@@ -828,6 +828,7 @@
uinfo_inundation_duration_export = \u00dcberflutungsdauern Export
uinfo_inundation_duration_export = \u00dcberflutungsdauern Bericht
uinfo_inundation_duration_set_vegetation_zone = Vegetationstabelle \u00fcbernehmen
+uinfo_inundation_scenario_old_msg = \u00c4nderung der Sohl- bzw. Mittelwasserlage
uinfo_salix_line_export = Iota Export
uinfo_vegetation_zones_export = Vegetationszonen Export
uinfo_vegetation_zones_report = Vegetationszonen Bericht
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/ui/AbstractSingleItemPanel.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/AbstractSingleItemPanel.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/AbstractSingleItemPanel.java Wed Oct 24 18:40:38 2018 +0200
@@ -45,6 +45,8 @@
boolean isMultipleInputsAllowed();
String titleForCreateOld();
+
+ String appendStringForCreateOld();
}
private TextItem inputItem;
@@ -99,8 +101,8 @@
final DataItem[] yearsItems = years.getItems();
final String v1 = this.behaviour.isMultipleInputsAllowed() ? yearsItems[0].getStringValue().replace(" ", ", ") : yearsItems[0].getStringValue();
-
- final Label old = new Label(v1);
+ final String append = this.behaviour.appendStringForCreateOld() != null ? this.behaviour.appendStringForCreateOld() : "";
+ final Label old = new Label(new StringBuilder().append(v1).append(" ").append(append).toString());
final HLayout layout = new HLayout();
layout.setWidth("400px");
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/ui/UIProviderFactory.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/UIProviderFactory.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/UIProviderFactory.java Wed Oct 24 18:40:38 2018 +0200
@@ -38,7 +38,6 @@
import org.dive4elements.river.client.client.ui.uinfo.LoadSedimentHeightPanel;
import org.dive4elements.river.client.client.ui.uinfo.LoadSingleYearPanel;
import org.dive4elements.river.client.client.ui.uinfo.LoadSingleYearPseudoEpochPanel;
-import org.dive4elements.river.client.client.ui.uinfo.SingleBehaviour;
import org.dive4elements.river.client.client.ui.uinfo.SupraRegionalTablePanel;
import org.dive4elements.river.client.client.ui.uinfo.VegetationzonesTableEditPanel;
import org.dive4elements.river.client.client.ui.uinfo.VegetationzonesTablePanel;
@@ -221,17 +220,17 @@
} else if (uiProvider.equals("common.state.load_single_year_select")) {
return new LoadSingleYearPanel(getMSG());
} else if (uiProvider.equals("uinfo.inundation.wms_year")) {
- return new InundationWMSInputPanel(getMSG(), getMSG().year(), true);
+ return new InundationWMSInputPanel(getMSG(), "year_epoch_select", getMSG().year(), null, true);
} else if (uiProvider.equals("uinfo.inundation.wms_epoch")) {
- return new InundationWMSInputPanel(getMSG(), getMSG().epoch(), false);
+ return new InundationWMSInputPanel(getMSG(), "year_epoch_select", getMSG().epoch(), null, false);
} else if (uiProvider.equals("common.state.load_single_year_select.show_hint")) {
return new LoadSingleYearPanel(getMSG(), true);
} else if (uiProvider.equals("uinfo.salix.load_single_year_pseudo_epoch_select")) {
return new LoadSingleYearPseudoEpochPanel(getMSG());
} else if (uiProvider.equals("minfo.sedimentload_sqti_select")) {
return new SedLoadSQTiPanel();
- } else if (uiProvider.equals("uinfo.sedimentheight_select")) {
- return new LoadSedimentHeightPanel(new SingleBehaviour(getMSG()));// Type.single);
+ } else if (uiProvider.equals("uinfo.inundation.szenario")) {
+ return new InundationWMSInputPanel(getMSG(), "inundation_scenario", getMSG().uinfo_inundation_scenario_old_msg(), "cm", false);
} else if (uiProvider.equals("uinfo.sedimentheight_select.limit5")) {
return new LoadSedimentHeightPanel(new Limit5SalixBehaviour(getMSG()));
} else if (uiProvider.equals("hws_datacage_panel")) {
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/ui/sinfo/MultiBehaviour.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/sinfo/MultiBehaviour.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/sinfo/MultiBehaviour.java Wed Oct 24 18:40:38 2018 +0200
@@ -28,7 +28,7 @@
}
public MultiBehaviour(final FLYSConstants msg) {
- super(msg);
+ super("", msg);
}
@Override
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/InundationWMSInputPanel.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/InundationWMSInputPanel.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/InundationWMSInputPanel.java Wed Oct 24 18:40:38 2018 +0200
@@ -15,6 +15,7 @@
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.Label;
import com.smartgwt.client.widgets.form.DynamicForm;
+import com.smartgwt.client.widgets.form.fields.StaticTextItem;
import com.smartgwt.client.widgets.form.fields.TextItem;
import com.smartgwt.client.widgets.layout.VLayout;
@@ -22,15 +23,20 @@
private static final long serialVersionUID = 1L;
private final boolean isEditable;
+ private final String dataKey;
+ private final String appendString;
- public InundationWMSInputPanel(final FLYSConstants msg, final String titleForCreateOld, final boolean isEditable) {
- super(new UinfoInundationSingleYearEpochBehaviour(msg, titleForCreateOld));
+ public InundationWMSInputPanel(final FLYSConstants msg, final String dataKey, final String titleForCreateOld, final String appendString,
+ final boolean isEditable) {
+ super(new UinfoInundationSingleYearEpochBehaviour(appendString, msg, titleForCreateOld));
this.isEditable = isEditable;
+ this.dataKey = dataKey;
+ this.appendString = appendString;
}
@Override
protected String getDatakey() {
- return "year_epoch_select";
+ return this.dataKey;
}
@Override
@@ -51,8 +57,18 @@
final TextItem inputItem = createInputItem("INPUT");
inputItem.setWidth(250);
inputItem.setCanEdit(this.isEditable);
+
inputItem.setShowTitle(false);
- form.setFields(inputItem);
+
+ if (this.appendString != null) {
+
+ final StaticTextItem fromText = new StaticTextItem("staticAppend");
+ fromText.setValue(this.appendString);
+ fromText.setShowTitle(false);
+ form.setFields(inputItem, fromText);
+ } else {
+ form.setFields(inputItem);
+ }
layout.addMember(title);
layout.addMember(form);
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/Limit5SalixBehaviour.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/Limit5SalixBehaviour.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/Limit5SalixBehaviour.java Wed Oct 24 18:40:38 2018 +0200
@@ -28,7 +28,7 @@
}
public Limit5SalixBehaviour(final FLYSConstants msg) {
- super(msg);
+ super("", msg);
}
@Override
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/SingleBehaviour.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/SingleBehaviour.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/SingleBehaviour.java Wed Oct 24 18:40:38 2018 +0200
@@ -26,7 +26,7 @@
}
public SingleBehaviour(final FLYSConstants msg) {
- super(msg);
+ super("", msg);
}
@Override
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/UinfoInundationSingleYearEpochBehaviour.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/UinfoInundationSingleYearEpochBehaviour.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/UinfoInundationSingleYearEpochBehaviour.java Wed Oct 24 18:40:38 2018 +0200
@@ -23,8 +23,8 @@
private final String titleForCreateOld;
- public UinfoInundationSingleYearEpochBehaviour(final FLYSConstants msg, final String titleForCreateOld) {
- super(msg);
+ public UinfoInundationSingleYearEpochBehaviour(final String appendString, final FLYSConstants msg, final String titleForCreateOld) {
+ super(appendString, msg);
this.titleForCreateOld = titleForCreateOld;
}
diff -r 709a73badd48 -r ba0561906f81 gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/ValidationBehaviourSingleMultiInputItem.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/ValidationBehaviourSingleMultiInputItem.java Wed Oct 24 12:00:49 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/ValidationBehaviourSingleMultiInputItem.java Wed Oct 24 18:40:38 2018 +0200
@@ -24,14 +24,17 @@
private List validInputs = null;
protected String errorForItemMsg = null;
protected final FLYSConstants MSG;
+ private final String appendStringForCreateOld;
public ValidationBehaviourSingleMultiInputItem(final List validInputs, final String errorForItemMsg, final FLYSConstants MSG) {
this.validInputs = validInputs;
this.errorForItemMsg = errorForItemMsg;
this.MSG = MSG; // etwas unglücklich...
+ this.appendStringForCreateOld = "";
}
- public ValidationBehaviourSingleMultiInputItem(final FLYSConstants MSG) {
+ public ValidationBehaviourSingleMultiInputItem(final String appendStringForCreateOld, final FLYSConstants MSG) {
+ this.appendStringForCreateOld = appendStringForCreateOld;
this.MSG = MSG;
}
@@ -87,4 +90,9 @@
return this.validInputs;
}
+ @Override
+ public String appendStringForCreateOld() {
+ return this.appendStringForCreateOld;
+ }
+
}