Mercurial > dive4elements > river
changeset 9559:ba0561906f81
Uinfo inundation duration workflow (vegetation zones, scenario), wms-config changed
line wrap: on
line diff
--- 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 @@ </transition> <state id="state.uinfo.inundation.load.scenario" description="state.uinfo.inundation.load.scenario" state="org.dive4elements.river.artifacts.uinfo.inundationduration.LoadScenarioSelect" helpText="help.state.uinfo.inundation.scenario"> - <data name="sedimentheight" type="String" /> <!-- mittelwasserlage in cm! --> + <data name="inundation_scenario" type="String" /> </state> <!-- this state is unused and can be deleted: -->
--- 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_<Gewässername>.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: -#<Layer-Name><Tab><Label><Tab><WMS-URL> - -# Ä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_<Gewässername>.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: +#<Themen-Bezeichnung><Tab><WMS-Layer-Nummer (Standard-WMS-URL)><Tab><WMS-URL_Standard><Tab><WMS-Layer-Nummer (Vegetationszonen-WMS-URL)><Tab><WMS-URL (Vegetationszonen)> + +# Ä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
--- 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_<Gewässername>.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: -#<Layer-Name><Tab><Label><Tab><WMS-URL> - -# Ä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_<Gewässername>.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: +#<Themen-Bezeichnung><Tab><WMS-Layer-Nummer (Standard-WMS-URL)><Tab><WMS-URL_Standard><Tab><WMS-Layer-Nummer (Vegetationszonen-WMS-URL)><Tab><WMS-URL (Vegetationszonen)> + +# Ä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
--- /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_<Gewässername>.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: +#<Themen-Bezeichnung><Tab><WMS-Layer-Nummer (Standard-WMS-URL)><Tab><WMS-URL_Standard><Tab><WMS-Layer-Nummer (Vegetationszonen-WMS-URL)><Tab><WMS-URL (Vegetationszonen)> + +# Ä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
--- 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<CalRange> 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) {
--- 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<String[]> readTsv(final File inputFile, final int requiredLength) throws IOException, TsvReaderException { + public static List<String[]> readTsv(final File inputFile, final int maxLength) throws IOException, TsvReaderException { final List<String[]> 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); }
--- 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<String, String> 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
--- 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"); }
--- 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<VegetationZoneServerClientXChange> 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
--- 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<String, String> 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
--- 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<String, UedauernConfiguration> cache = new HashMap<>(); - private final Map<String, WmsConfig> wmsConfigs; + private final Map<String, WmsConfig[]> 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<String, WmsConfig> wmsConfigs) { + private UedauernConfiguration(final String rivername, final YearType type, final Map<String, WmsConfig[]> wmsConfigs) { this.wmsConfigs = wmsConfigs; } @@ -78,15 +82,26 @@ final String configFile = makeFileName(rivername, type); final File file = TsvHelper.makeFile2(configFile, rivername); - final List<String[]> tsv = TsvHelper.readTsv(file, 3); + final List<String[]> tsv = TsvHelper.readTsv(file, 5); - final Map<String, WmsConfig> wmsConfigs = new LinkedHashMap<>(tsv.size()); + final Map<String, WmsConfig[]> 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; }
--- 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
--- 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
--- 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
--- 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
--- 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
--- 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
--- 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
--- 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");
--- 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")) {
--- 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
--- 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);
--- 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
--- 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
--- 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; }
--- 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<String> validInputs = null; protected String errorForItemMsg = null; protected final FLYSConstants MSG; + private final String appendStringForCreateOld; public ValidationBehaviourSingleMultiInputItem(final List<String> 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; + } + }