[PATCH] uinfo.inundationduration workflow
Wald Commits
scm-commit at wald.intevation.org
Thu Jun 28 15:10:20 CEST 2018
# HG changeset patch
# User gernotbelger
# Date 1530191404 -7200
# Node ID 0633f963c5be7e2a6bd555d29f12731b6a535915
# Parent 13a0c4be17eac1a8f495eba475c62297bf9ef20d
uinfo.inundationduration workflow
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/doc/conf/artifacts/uinfo.xml
--- a/artifacts/doc/conf/artifacts/uinfo.xml Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/doc/conf/artifacts/uinfo.xml Thu Jun 28 15:10:04 2018 +0200
@@ -222,10 +222,21 @@
<facet name="floodmap.floodmaps" />
<facet name="floodmap.gauge_location" />
<facet name="floodmap.externalwms" />
+ <facet name="floodmap.externalwms_1" />
+ <facet name="floodmap.externalwms_2" />
+ <facet name="floodmap.externalwms_3" />
+ <facet name="floodmap.externalwms_4" />
<facet name="floodmap.jetties" />
</facets>
</outputmode>
+ <!-- FIXME: i01n name in FLYSConstants -->
+ <outputmode name="uinfo_inundation_duration_export" description="output.uinfo_inundation_duration_export" mime-type="text/plain" type="export">
+ <facets>
+ <facet name="wms_url" description="XXXXXXXXXX _ no entry in generators necessary either" />
+ </facets>
+ </outputmode>
+
<outputmode name="uinfo_inundation_duration_report" description="output.uinfo_inundation_duration_report" mime-type="text/xml" type="report">
<facets>
<facet name="report" description="facet.uinfo_inundation_duration_report" />
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/doc/conf/generators/generators.xml
--- a/artifacts/doc/conf/generators/generators.xml Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/doc/conf/generators/generators.xml Thu Jun 28 15:10:04 2018 +0200
@@ -3,76 +3,80 @@
&longitudinal-diagrams;
&discharge-diagrams;
- <output-generator names="cross_section" class="org.dive4elements.river.exports.CrossSectionGenerator"/>
- <output-generator names="cross_section_chartinfo" class="org.dive4elements.river.exports.CrossSectionInfoGenerator"/>
- <output-generator names="duration_curve" class="org.dive4elements.river.exports.DurationCurveGenerator"/>
- <output-generator names="duration_curve_chartinfo" class="org.dive4elements.river.exports.DurationCurveInfoGenerator"/>
- <output-generator names="waterlevel_export" class="org.dive4elements.river.exports.WaterlevelExporter"/>
+ <output-generator names="cross_section" class="org.dive4elements.river.exports.CrossSectionGenerator" />
+ <output-generator names="cross_section_chartinfo" class="org.dive4elements.river.exports.CrossSectionInfoGenerator" />
+ <output-generator names="duration_curve" class="org.dive4elements.river.exports.DurationCurveGenerator" />
+ <output-generator names="duration_curve_chartinfo" class="org.dive4elements.river.exports.DurationCurveInfoGenerator" />
+ <output-generator names="waterlevel_export" class="org.dive4elements.river.exports.WaterlevelExporter" />
- <output-generator names="historical_discharge_chartinfo" class="org.dive4elements.river.exports.HistoricalDischargeCurveInfoGenerator"/>
- <output-generator names="historical_discharge" class="org.dive4elements.river.exports.HistoricalDischargeCurveGenerator"/>
+ <output-generator names="historical_discharge_chartinfo" class="org.dive4elements.river.exports.HistoricalDischargeCurveInfoGenerator" />
+ <output-generator names="historical_discharge" class="org.dive4elements.river.exports.HistoricalDischargeCurveGenerator" />
- <!-- This is deactivated.
+ <!-- This is deactivated.
<output-generator names="extreme_wq_curve" class="org.dive4elements.river.exports.extreme.ExtremeWQCurveGenerator"/>
<output-generator names="extreme_curve_export" class="org.dive4elements.river.exports.WaterlevelExporter"/>
<output-generator names="extreme_wq_curve_chartinfo" class="org.dive4elements.river.exports.extreme.ExtremeWQCurveInfoGenerator"/>
- -->
+ -->
- <output-generator names="durationcurve_export" class="org.dive4elements.river.exports.DurationCurveExporter"/>
- <output-generator names="computed_dischargecurve_export" class="org.dive4elements.river.exports.ComputedDischargeCurveExporter"/>
- <output-generator names="discharge_longitudinal_section_export" class="org.dive4elements.river.exports.DischargeLongitudinalSectionExporter"/>
- <output-generator names="w_differences_export" class="org.dive4elements.river.exports.WDifferencesExporter"/>
- <output-generator names="floodmap" class="org.dive4elements.river.exports.MapGenerator"/>
- <output-generator names="map" class="org.dive4elements.river.exports.MapGenerator"/>
- <output-generator names="reference_curve" class="org.dive4elements.river.exports.ReferenceCurveGenerator"/>
- <output-generator names="reference_curve_normalized" class="org.dive4elements.river.exports.NormalizedReferenceCurveGenerator"/>
- <output-generator names="reference_curve_normalized_chartinfo" class="org.dive4elements.river.exports.NormalizedReferenceCurveInfoGenerator"/>
- <output-generator names="reference_curve_chartinfo" class="org.dive4elements.river.exports.ReferenceCurveInfoGenerator"/>
- <output-generator names="reference_curve_export" class="org.dive4elements.river.exports.ReferenceCurveExporter"/>
- <output-generator names="historical_discharge_export" class="org.dive4elements.river.exports.HistoricalDischargeCurveExporter"/>
- <output-generator names="flow_velocity_export" class="org.dive4elements.river.exports.FlowVelocityExporter"/>
- <output-generator names="bedheight_middle_export" class="org.dive4elements.river.exports.MiddleBedHeightExporter"/>
- <output-generator names="bed_quality_export" class="org.dive4elements.river.exports.minfo.BedQualityExporter"/>
- <output-generator names="bedheight_difference_export" class="org.dive4elements.river.exports.minfo.BedDifferenceExporter"/>
- <output-generator names="sq_relation_export" class="org.dive4elements.river.exports.sq.SQRelationExporter"/>
- <output-generator names="fix_parameters_export" class="org.dive4elements.river.exports.fixings.ParametersExporter"/>
- <output-generator names="fix_deltawt_export" class="org.dive4elements.river.exports.fixings.DeltaWtExporter"/>
- <output-generator names="fix_deltawt_curve" class="org.dive4elements.river.exports.fixings.FixDeltaWtGenerator"/>
- <output-generator names="fix_deltawt_curve_chartinfo" class="org.dive4elements.river.exports.fixings.FixDeltaWtInfoGenerator"/>
- <output-generator names="fix_waterlevel_export" class="org.dive4elements.river.exports.WaterlevelExporter"/>
- <output-generator names="sedimentload_ls_export" class="org.dive4elements.river.exports.minfo.SedimentLoadExporter"/>
- <!-- Error report generators. -->
- <output-generator names="discharge_longitudinal_section_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="waterlevel_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="computed_dischargecurve_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="durationcurve_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="wsplgen_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="historical_discharge_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="reference_curve_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="fix_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="extreme_curve_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="sedimentload_ls_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="bed_quality_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <!-- AT exporter. -->
- <output-generator names="computed_dischargecurve_at_export" class="org.dive4elements.river.exports.ATExporter"/>
- <output-generator names="gauge_discharge_curve_at_export" class="org.dive4elements.river.exports.ATExporter"/>
- <output-generator names="fix_wq_curve_at_export" class="org.dive4elements.river.exports.fixings.FixATExport"/>
- <output-generator names="wsplgen" class="org.dive4elements.river.exports.ShapeExporter"/>
+ <output-generator names="durationcurve_export" class="org.dive4elements.river.exports.DurationCurveExporter" />
+ <output-generator names="computed_dischargecurve_export" class="org.dive4elements.river.exports.ComputedDischargeCurveExporter" />
+ <output-generator names="discharge_longitudinal_section_export" class="org.dive4elements.river.exports.DischargeLongitudinalSectionExporter" />
+ <output-generator names="w_differences_export" class="org.dive4elements.river.exports.WDifferencesExporter" />
+ <output-generator names="floodmap" class="org.dive4elements.river.exports.MapGenerator" />
+ <output-generator names="map" class="org.dive4elements.river.exports.MapGenerator" />
+ <output-generator names="reference_curve" class="org.dive4elements.river.exports.ReferenceCurveGenerator" />
+ <output-generator names="reference_curve_normalized" class="org.dive4elements.river.exports.NormalizedReferenceCurveGenerator" />
+ <output-generator names="reference_curve_normalized_chartinfo" class="org.dive4elements.river.exports.NormalizedReferenceCurveInfoGenerator" />
+ <output-generator names="reference_curve_chartinfo" class="org.dive4elements.river.exports.ReferenceCurveInfoGenerator" />
+ <output-generator names="reference_curve_export" class="org.dive4elements.river.exports.ReferenceCurveExporter" />
+ <output-generator names="historical_discharge_export" class="org.dive4elements.river.exports.HistoricalDischargeCurveExporter" />
+ <output-generator names="flow_velocity_export" class="org.dive4elements.river.exports.FlowVelocityExporter" />
+ <output-generator names="bedheight_middle_export" class="org.dive4elements.river.exports.MiddleBedHeightExporter" />
+ <output-generator names="bed_quality_export" class="org.dive4elements.river.exports.minfo.BedQualityExporter" />
+ <output-generator names="bedheight_difference_export" class="org.dive4elements.river.exports.minfo.BedDifferenceExporter" />
+ <output-generator names="sq_relation_export" class="org.dive4elements.river.exports.sq.SQRelationExporter" />
+ <output-generator names="fix_parameters_export" class="org.dive4elements.river.exports.fixings.ParametersExporter" />
+ <output-generator names="fix_deltawt_export" class="org.dive4elements.river.exports.fixings.DeltaWtExporter" />
+ <output-generator names="fix_deltawt_curve" class="org.dive4elements.river.exports.fixings.FixDeltaWtGenerator" />
+ <output-generator names="fix_deltawt_curve_chartinfo" class="org.dive4elements.river.exports.fixings.FixDeltaWtInfoGenerator" />
+ <output-generator names="fix_waterlevel_export" class="org.dive4elements.river.exports.WaterlevelExporter" />
+ <output-generator names="sedimentload_ls_export" class="org.dive4elements.river.exports.minfo.SedimentLoadExporter" />
+ <!-- Error report generators. -->
+ <output-generator names="discharge_longitudinal_section_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="waterlevel_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="computed_dischargecurve_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="durationcurve_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="wsplgen_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="historical_discharge_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="reference_curve_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="fix_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="extreme_curve_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="sedimentload_ls_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="bed_quality_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <!-- AT exporter. -->
+ <output-generator names="computed_dischargecurve_at_export" class="org.dive4elements.river.exports.ATExporter" />
+ <output-generator names="gauge_discharge_curve_at_export" class="org.dive4elements.river.exports.ATExporter" />
+ <output-generator names="fix_wq_curve_at_export" class="org.dive4elements.river.exports.fixings.FixATExport" />
+ <output-generator names="wsplgen" class="org.dive4elements.river.exports.ShapeExporter" />
- <!-- SINFO -->
- <output-generator names="sinfo_flowdepth_export" class="org.dive4elements.river.artifacts.sinfo.flowdepth.FlowDepthExporter"/>
- <output-generator names="sinfo_flowdepth_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="sinfo_flowdepthminmax_export" class="org.dive4elements.river.artifacts.sinfo.flowdepthminmax.FlowDepthMinMaxExporter"/>
- <output-generator names="sinfo_flowdepthminmax_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="sinfo_flowdepthdevelopment_export" class="org.dive4elements.river.artifacts.sinfo.flowdepthdev.FlowDepthDevelopmentExporter"/>
- <output-generator names="sinfo_flowdepthdevelopment_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="sinfo_tkh_export" class="org.dive4elements.river.artifacts.sinfo.tkhstate.TkhExporter"/>
- <output-generator names="sinfo_tkh_report" class="org.dive4elements.river.exports.ReportGenerator"/>
- <output-generator names="sinfo_floodduration_export" class="org.dive4elements.river.artifacts.sinfo.flood_duration.FloodDurationExporter" />
- <output-generator names="sinfo_collision_export" class="org.dive4elements.river.artifacts.sinfo.collision.CollisionExporter" />
-
- <!-- UINFO -->
- <output-generator names="uinfo_salix_line_export" class="org.dive4elements.river.artifacts.uinfo.salix.SalixLineExporter"/>
- <output-generator names="uinfo_inundation_duration_export" class="org.dive4elements.river.artifacts.uinfo.inundationduration.InundationDurationExporter"/>
- <output-generator names="uinfo_vegetation_zones_export" class="org.dive4elements.river.artifacts.uinfo.vegetationzones.VegetationZonesExporter"/>
+ <!-- SINFO -->
+ <output-generator names="sinfo_flowdepth_export" class="org.dive4elements.river.artifacts.sinfo.flowdepth.FlowDepthExporter" />
+ <output-generator names="sinfo_flowdepth_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="sinfo_flowdepthminmax_export" class="org.dive4elements.river.artifacts.sinfo.flowdepthminmax.FlowDepthMinMaxExporter" />
+ <output-generator names="sinfo_flowdepthminmax_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="sinfo_flowdepthdevelopment_export" class="org.dive4elements.river.artifacts.sinfo.flowdepthdev.FlowDepthDevelopmentExporter" />
+ <output-generator names="sinfo_flowdepthdevelopment_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="sinfo_tkh_export" class="org.dive4elements.river.artifacts.sinfo.tkhstate.TkhExporter" />
+ <output-generator names="sinfo_tkh_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="sinfo_floodduration_export" class="org.dive4elements.river.artifacts.sinfo.flood_duration.FloodDurationExporter" />
+ <output-generator names="sinfo_floodduration_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="sinfo_collision_export" class="org.dive4elements.river.artifacts.sinfo.collision.CollisionExporter" />
+ <output-generator names="sinfo_collision_report" class="org.dive4elements.river.exports.ReportGenerator" />
+
+ <!-- UINFO -->
+ <output-generator names="uinfo_inundation_duration_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="uinfo_salix_line_export" class="org.dive4elements.river.artifacts.uinfo.salix.SalixLineExporter" />
+ <output-generator names="uinfo_salix_line_report" class="org.dive4elements.river.exports.ReportGenerator" />
+ <output-generator names="uinfo_vegetation_zones_export" class="org.dive4elements.river.artifacts.uinfo.vegetationzones.VegetationZonesExporter" />
+ <output-generator names="uinfo_vegetation_zones_report" class="org.dive4elements.river.exports.ReportGenerator" />
</output-generators>
\ No newline at end of file
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/doc/conf/jasper/templates/uinfo.inundationduration.jrxml
--- a/artifacts/doc/conf/jasper/templates/uinfo.inundationduration.jrxml Thu Jun 28 14:11:12 2018 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,201 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Created with Jaspersoft Studio version 6.5.1.final using JasperReports Library version 4.5.0 -->
-<!-- 2018-06-06T13:16:01 -->
-<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="flysreport" language="groovy" pageWidth="595" pageHeight="842" columnWidth="545" leftMargin="30" rightMargin="20" topMargin="20" bottomMargin="20">
- <property name="ireport.zoom" value="1.0"/>
- <property name="ireport.x" value="0"/>
- <property name="ireport.y" value="0"/>
- <style name="htmlStyle" isDefault="true" mode="Transparent" markup="html" fontName="Roboto"/>
- <field name="meta:header" class="java.lang.String"/>
- <field name="meta:calcMode" class="java.lang.String"/>
- <field name="meta:version_label" class="java.lang.String"/>
- <field name="meta:version" class="java.lang.String"/>
- <field name="meta:user_label" class="java.lang.String"/>
- <field name="meta:user" class="java.lang.String"/>
- <field name="meta:date_label" class="java.lang.String"/>
- <field name="meta:date" class="java.lang.String"/>
- <field name="meta:river_label" class="java.lang.String"/>
- <field name="meta:river" class="java.lang.String"/>
- <field name="meta:range_label" class="java.lang.String"/>
- <field name="meta:range" class="java.lang.String"/>
- <field name="meta:calculation_label" class="java.lang.String"/>
- <field name="meta:calculation_name" class="java.lang.String"/>
- <field name="meta:station_header" class="java.lang.String"/>
- <field name="meta:flowdepthdevelopment_header" class="java.lang.String"/>
- <field name="meta:flowdepthdevelopmentperyear_header" class="java.lang.String"/>
- <field name="meta:waterleveldifference_header" class="java.lang.String"/>
- <field name="meta:waterleveldifference_header2" class="java.lang.String"/>
- <field name="meta:waterleveldifference_header_label" class="java.lang.String"/>
- <field name="meta:bedheightdifference_header" class="java.lang.String"/>
- <field name="meta:bedheightdifference_header2" class="java.lang.String"/>
- <field name="meta:bedheightdifference_header_label" class="java.lang.String"/>
- <field name="meta:flowdepthcurrent_header" class="java.lang.String"/>
- <field name="meta:flowdepthcurrent_header2" class="java.lang.String"/>
- <field name="meta:flowdepthhistorical_header" class="java.lang.String"/>
- <field name="meta:flowdepthhistorical_header2" class="java.lang.String"/>
- <field name="meta:flowdepthcurrent_header_label" class="java.lang.String"/>
- <field name="meta:flowdepthhistorical_header_label" class="java.lang.String"/>
- <field name="meta:flowdepth_header" class="java.lang.String"/>
- <field name="meta:flowdepthdevelopment" class="java.lang.String"/>
- <field name="meta:flowdepthmin_header" class="java.lang.String"/>
- <field name="meta:flowdepthmax_header" class="java.lang.String"/>
- <field name="meta:flowdepthdevelopment_header_label" class="java.lang.String"/>
- <field name="meta:flowdepth_tkh_header" class="java.lang.String"/>
- <field name="meta:tkh_header" class="java.lang.String"/>
- <field name="meta:tkhkind_header" class="java.lang.String"/>
- <field name="meta:waterlevel_header" class="java.lang.String"/>
- <field name="meta:discharge_header" class="java.lang.String"/>
- <field name="meta:waterlevel_name_header" class="java.lang.String"/>
- <field name="meta:gauge_header" class="java.lang.String"/>
- <field name="meta:bedheight_header" class="java.lang.String"/>
- <field name="meta:sounding_name_header" class="java.lang.String"/>
- <field name="meta:location_header" class="java.lang.String"/>
- <field name="meta:river_unit" class="java.lang.String"/>
- <field name="data:0" class="java.lang.String"/>
- <field name="data:1" class="java.lang.String"/>
- <field name="data:2" class="java.lang.String"/>
- <field name="data:3" class="java.lang.String"/>
- <field name="data:4" class="java.lang.String"/>
- <field name="data:5" class="java.lang.String"/>
- <field name="data:6" class="java.lang.String"/>
- <field name="data:7" class="java.lang.String"/>
- <field name="data:8" class="java.lang.String"/>
- <background>
- <band splitType="Stretch"/>
- </background>
- <title>
- <band height="169" splitType="Stretch">
- <textField>
- <reportElement style="htmlStyle" x="0" y="0" width="515" height="30"/>
- <textElement>
- <font size="18"/>
- </textElement>
- <textFieldExpression><![CDATA[$F{meta:header} + " " + $F{meta:river}]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="0" y="39" width="165" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:calcMode}]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="0" y="69" width="123" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:version_label} + ":"]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="123" y="69" width="392" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:version}]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="0" y="89" width="123" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:user_label} + ":"]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="123" y="89" width="392" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:user}]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="0" y="109" width="123" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:date_label} + ":"]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="123" y="109" width="392" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:date}]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="0" y="129" width="123" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:river_label} + ":"]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="123" y="129" width="392" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:river}]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="0" y="149" width="123" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:range_label} + ":"]]></textFieldExpression>
- </textField>
- <textField>
- <reportElement style="htmlStyle" x="123" y="149" width="392" height="20"/>
- <textFieldExpression><![CDATA[$F{meta:range}]]></textFieldExpression>
- </textField>
- </band>
- </title>
- <columnHeader>
- <band height="25" splitType="Stretch">
- <textField isStretchWithOverflow="true">
- <reportElement style="htmlStyle" positionType="Float" stretchType="RelativeToBandHeight" x="0" y="0" width="80" height="24"/>
- <box padding="5"/>
- <textElement textAlignment="Right" verticalAlignment="Bottom"/>
- <textFieldExpression><![CDATA[$F{meta:station_header}]]></textFieldExpression>
- </textField>
- <textField isStretchWithOverflow="true">
- <reportElement style="htmlStyle" positionType="Float" stretchType="RelativeToBandHeight" x="80" y="0" width="90" height="24"/>
- <box padding="5"/>
- <textElement textAlignment="Right" verticalAlignment="Bottom"/>
- <textFieldExpression><![CDATA[$F{meta:tkh_header} + "<br/>[cm]"]]></textFieldExpression>
- </textField>
- <textField isStretchWithOverflow="true">
- <reportElement key="" style="htmlStyle" positionType="Float" stretchType="RelativeToBandHeight" x="170" y="0" width="380" height="24"/>
- <box padding="5"/>
- <textElement verticalAlignment="Bottom"/>
- <textFieldExpression><![CDATA[$F{meta:tkhkind_header}]]></textFieldExpression>
- </textField>
- <line>
- <reportElement style="htmlStyle" positionType="FixRelativeToBottom" x="0" y="24" width="550" height="1"/>
- </line>
- </band>
- </columnHeader>
- <detail>
- <band height="15" splitType="Prevent">
- <textField isStretchWithOverflow="true" isBlankWhenNull="true">
- <reportElement style="htmlStyle" positionType="Float" stretchType="RelativeToBandHeight" x="0" y="0" width="80" height="15"/>
- <box topPadding="2" leftPadding="5" bottomPadding="0" rightPadding="5">
- <topPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <leftPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <bottomPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <rightPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- </box>
- <textElement textAlignment="Right" verticalAlignment="Top"/>
- <textFieldExpression><![CDATA[$F{data:0}]]></textFieldExpression>
- </textField>
- <textField isStretchWithOverflow="true" isBlankWhenNull="true">
- <reportElement style="htmlStyle" positionType="Float" stretchType="RelativeToBandHeight" x="80" y="0" width="90" height="15"/>
- <box topPadding="2" leftPadding="5" bottomPadding="0" rightPadding="5">
- <topPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <leftPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <bottomPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <rightPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- </box>
- <textElement textAlignment="Right"/>
- <textFieldExpression><![CDATA[$F{data:1}]]></textFieldExpression>
- </textField>
- <textField isStretchWithOverflow="true" isBlankWhenNull="true">
- <reportElement key="" style="htmlStyle" positionType="Float" stretchType="RelativeToBandHeight" x="170" y="0" width="380" height="15"/>
- <box topPadding="2" leftPadding="5" bottomPadding="0" rightPadding="5">
- <topPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <leftPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <bottomPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- <rightPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
- </box>
- <textElement textAlignment="Left"/>
- <textFieldExpression><![CDATA[$F{data:2}]]></textFieldExpression>
- </textField>
- </band>
- </detail>
- <pageFooter>
- <band height="15" splitType="Stretch">
- <textField isStretchWithOverflow="true">
- <reportElement style="htmlStyle" x="437" y="0" width="55" height="15"/>
- <box topPadding="2" rightPadding="3"/>
- <textElement textAlignment="Right"/>
- <textFieldExpression><![CDATA[$V{PAGE_NUMBER}]]></textFieldExpression>
- </textField>
- <textField isStretchWithOverflow="true" evaluationTime="Report">
- <reportElement style="htmlStyle" x="493" y="0" width="57" height="15"/>
- <box topPadding="2" rightPadding="3"/>
- <textFieldExpression><![CDATA["/ " + $V{PAGE_NUMBER}]]></textFieldExpression>
- </textField>
- </band>
- </pageFooter>
- <summary>
- <band height="30" splitType="Stretch"/>
- </summary>
-</jasperReport>
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/java/org/dive4elements/river/artifacts/model/FacetTypes.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/model/FacetTypes.java Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/model/FacetTypes.java Thu Jun 28 15:10:04 2018 +0200
@@ -11,143 +11,92 @@
/** 'Types' of facets. */
public interface FacetTypes {
- /** Static helper class to determine if a Facet name is of a generalized
- * 'type'. */
+ /**
+ * Static helper class to determine if a Facet name is of a generalized
+ * 'type'.
+ */
public static class IS {
- public static boolean WQ_KM(String type) {
- return type.equals(DISCHARGE_LONGITUDINAL_W)
- || type.equals(LONGITUDINAL_W);
+ public static boolean WQ_KM(final String type) {
+ return type.equals(DISCHARGE_LONGITUDINAL_W) || type.equals(LONGITUDINAL_W);
}
- public static boolean W_KM(String type) {
- return type.equals(STATIC_WKMS)
- || type.equals(HEIGHTMARKS_POINTS)
- || WQ_KM(type);
+
+ public static boolean W_KM(final String type) {
+ return type.equals(STATIC_WKMS) || type.equals(HEIGHTMARKS_POINTS) || WQ_KM(type);
}
- public static boolean AREA(String type) {
- return type.equals(AREA)
- || type.equals(CROSS_SECTION_AREA)
- || type.equals(LONGITUDINAL_SECTION_AREA);
+
+ public static boolean AREA(final String type) {
+ return type.equals(AREA) || type.equals(CROSS_SECTION_AREA) || type.equals(LONGITUDINAL_SECTION_AREA);
}
- public static boolean W(String type) {
- return type.equals(LONGITUDINAL_W)
- || type.equals(DISCHARGE_LONGITUDINAL_W)
- || type.equals(DURATION_W)
- || type.equals(STATIC_WKMS)
- || type.equals(STATIC_WQKMS_W);
+
+ public static boolean W(final String type) {
+ return type.equals(LONGITUDINAL_W) || type.equals(DISCHARGE_LONGITUDINAL_W) || type.equals(DURATION_W) || type.equals(STATIC_WKMS)
+ || type.equals(STATIC_WQKMS_W);
}
- public static boolean Q(String type) {
- return type.equals(LONGITUDINAL_Q)
- || type.equals(DISCHARGE_LONGITUDINAL_Q)
- || type.equals(DURATION_Q)
- || type.equals(STATIC_WQKMS_Q);
+
+ public static boolean Q(final String type) {
+ return type.equals(LONGITUDINAL_Q) || type.equals(DISCHARGE_LONGITUDINAL_Q) || type.equals(DURATION_Q) || type.equals(STATIC_WQKMS_Q);
}
- public static boolean V(String type) {
- return type.equals(FLOW_VELOCITY_MAINCHANNEL)
- || type.equals(FLOW_VELOCITY_TOTALCHANNEL);
+
+ public static boolean V(final String type) {
+ return type.equals(FLOW_VELOCITY_MAINCHANNEL) || type.equals(FLOW_VELOCITY_TOTALCHANNEL);
}
- public static boolean T(String type) {
+
+ public static boolean T(final String type) {
return type.equals(FLOW_VELOCITY_TAU);
}
- public static boolean H(String type) {
+
+ public static boolean H(final String type) {
return type.equals(MIDDLE_BED_HEIGHT_SINGLE);
}
- public static boolean MANUALPOINTS(String type) {
+
+ public static boolean MANUALPOINTS(final String type) {
return type.endsWith("manualpoints");
}
- public static boolean MANUALLINE(String type) {
+
+ public static boolean MANUALLINE(final String type) {
return type.endsWith("manualline");
}
- public static boolean FILTERED(String type) {
+
+ public static boolean FILTERED(final String type) {
return type.endsWith("filtered");
}
- public static boolean SQ_CURVE(String type) {
- if (type.equals(SQ_A_CURVE)
- || type.equals(SQ_B_CURVE)
- || type.equals(SQ_C_CURVE)
- || type.equals(SQ_D_CURVE)
- || type.equals(SQ_E_CURVE)
- || type.equals(SQ_F_CURVE)
- || type.equals(SQ_G_CURVE)
- || type.equals(SQ_A_OUTLIER_CURVE)
- || type.equals(SQ_B_OUTLIER_CURVE)
- || type.equals(SQ_C_OUTLIER_CURVE)
- || type.equals(SQ_D_OUTLIER_CURVE)
- || type.equals(SQ_E_OUTLIER_CURVE)
- || type.equals(SQ_F_OUTLIER_CURVE)
- || type.equals(SQ_G_OUTLIER_CURVE)
- || type.equals(SQ_A_CURVE_OV)
- || type.equals(SQ_B_CURVE_OV)
- || type.equals(SQ_C_CURVE_OV)
- || type.equals(SQ_D_CURVE_OV)
- || type.equals(SQ_E_CURVE_OV)
- || type.equals(SQ_F_CURVE_OV)
- || type.equals(SQ_G_CURVE_OV)
- || type.equals(SQ_A_OUTLIER_CURVE_OV)
- || type.equals(SQ_B_OUTLIER_CURVE_OV)
- || type.equals(SQ_C_OUTLIER_CURVE_OV)
- || type.equals(SQ_D_OUTLIER_CURVE_OV)
- || type.equals(SQ_E_OUTLIER_CURVE_OV)
- || type.equals(SQ_F_OUTLIER_CURVE_OV)
- || type.equals(SQ_G_OUTLIER_CURVE_OV)
- )
- {
+
+ public static boolean SQ_CURVE(final String type) {
+ if (type.equals(SQ_A_CURVE) || type.equals(SQ_B_CURVE) || type.equals(SQ_C_CURVE) || type.equals(SQ_D_CURVE) || type.equals(SQ_E_CURVE)
+ || type.equals(SQ_F_CURVE) || type.equals(SQ_G_CURVE) || type.equals(SQ_A_OUTLIER_CURVE) || type.equals(SQ_B_OUTLIER_CURVE)
+ || type.equals(SQ_C_OUTLIER_CURVE) || type.equals(SQ_D_OUTLIER_CURVE) || type.equals(SQ_E_OUTLIER_CURVE) || type.equals(SQ_F_OUTLIER_CURVE)
+ || type.equals(SQ_G_OUTLIER_CURVE) || type.equals(SQ_A_CURVE_OV) || type.equals(SQ_B_CURVE_OV) || type.equals(SQ_C_CURVE_OV)
+ || type.equals(SQ_D_CURVE_OV) || type.equals(SQ_E_CURVE_OV) || type.equals(SQ_F_CURVE_OV) || type.equals(SQ_G_CURVE_OV)
+ || type.equals(SQ_A_OUTLIER_CURVE_OV) || type.equals(SQ_B_OUTLIER_CURVE_OV) || type.equals(SQ_C_OUTLIER_CURVE_OV)
+ || type.equals(SQ_D_OUTLIER_CURVE_OV) || type.equals(SQ_E_OUTLIER_CURVE_OV) || type.equals(SQ_F_OUTLIER_CURVE_OV)
+ || type.equals(SQ_G_OUTLIER_CURVE_OV)) {
return true;
}
return false;
}
- public static boolean SQ_MEASUREMENT(String type) {
- if (type.equals(SQ_A_MEASUREMENT)
- || type.equals(SQ_B_MEASUREMENT)
- || type.equals(SQ_C_MEASUREMENT)
- || type.equals(SQ_D_MEASUREMENT)
- || type.equals(SQ_E_MEASUREMENT)
- || type.equals(SQ_F_MEASUREMENT)
- || type.equals(SQ_G_MEASUREMENT)
- || type.equals(SQ_A_OUTLIER_MEASUREMENT)
- || type.equals(SQ_B_OUTLIER_MEASUREMENT)
- || type.equals(SQ_C_OUTLIER_MEASUREMENT)
- || type.equals(SQ_D_OUTLIER_MEASUREMENT)
- || type.equals(SQ_E_OUTLIER_MEASUREMENT)
- || type.equals(SQ_F_OUTLIER_MEASUREMENT)
- || type.equals(SQ_G_OUTLIER_MEASUREMENT)
- || type.equals(SQ_A_MEASUREMENT_OV)
- || type.equals(SQ_B_MEASUREMENT_OV)
- || type.equals(SQ_C_MEASUREMENT_OV)
- || type.equals(SQ_D_MEASUREMENT_OV)
- || type.equals(SQ_E_MEASUREMENT_OV)
- || type.equals(SQ_F_MEASUREMENT_OV)
- || type.equals(SQ_G_MEASUREMENT_OV)
- || type.equals(SQ_A_OUTLIER_MEASUREMENT_OV)
- || type.equals(SQ_B_OUTLIER_MEASUREMENT_OV)
- || type.equals(SQ_C_OUTLIER_MEASUREMENT_OV)
- || type.equals(SQ_D_OUTLIER_MEASUREMENT_OV)
- || type.equals(SQ_E_OUTLIER_MEASUREMENT_OV)
- || type.equals(SQ_F_OUTLIER_MEASUREMENT_OV)
- || type.equals(SQ_G_OUTLIER_MEASUREMENT_OV)
- )
- {
+
+ public static boolean SQ_MEASUREMENT(final String type) {
+ if (type.equals(SQ_A_MEASUREMENT) || type.equals(SQ_B_MEASUREMENT) || type.equals(SQ_C_MEASUREMENT) || type.equals(SQ_D_MEASUREMENT)
+ || type.equals(SQ_E_MEASUREMENT) || type.equals(SQ_F_MEASUREMENT) || type.equals(SQ_G_MEASUREMENT) || type.equals(SQ_A_OUTLIER_MEASUREMENT)
+ || type.equals(SQ_B_OUTLIER_MEASUREMENT) || type.equals(SQ_C_OUTLIER_MEASUREMENT) || type.equals(SQ_D_OUTLIER_MEASUREMENT)
+ || type.equals(SQ_E_OUTLIER_MEASUREMENT) || type.equals(SQ_F_OUTLIER_MEASUREMENT) || type.equals(SQ_G_OUTLIER_MEASUREMENT)
+ || type.equals(SQ_A_MEASUREMENT_OV) || type.equals(SQ_B_MEASUREMENT_OV) || type.equals(SQ_C_MEASUREMENT_OV)
+ || type.equals(SQ_D_MEASUREMENT_OV) || type.equals(SQ_E_MEASUREMENT_OV) || type.equals(SQ_F_MEASUREMENT_OV)
+ || type.equals(SQ_G_MEASUREMENT_OV) || type.equals(SQ_A_OUTLIER_MEASUREMENT_OV) || type.equals(SQ_B_OUTLIER_MEASUREMENT_OV)
+ || type.equals(SQ_C_OUTLIER_MEASUREMENT_OV) || type.equals(SQ_D_OUTLIER_MEASUREMENT_OV) || type.equals(SQ_E_OUTLIER_MEASUREMENT_OV)
+ || type.equals(SQ_F_OUTLIER_MEASUREMENT_OV) || type.equals(SQ_G_OUTLIER_MEASUREMENT_OV)) {
return true;
}
return false;
}
- public static boolean SQ_OUTLIER(String type) {
- if (type.equals(SQ_A_OUTLIER)
- || type.equals(SQ_B_OUTLIER)
- || type.equals(SQ_C_OUTLIER)
- || type.equals(SQ_D_OUTLIER)
- || type.equals(SQ_E_OUTLIER)
- || type.equals(SQ_F_OUTLIER)
- || type.equals(SQ_G_OUTLIER)
- || type.equals(SQ_A_OUTLIER_OV)
- || type.equals(SQ_B_OUTLIER_OV)
- || type.equals(SQ_C_OUTLIER_OV)
- || type.equals(SQ_D_OUTLIER_OV)
- || type.equals(SQ_E_OUTLIER_OV)
- || type.equals(SQ_F_OUTLIER_OV)
- || type.equals(SQ_G_OUTLIER_OV))
- {
+
+ public static boolean SQ_OUTLIER(final String type) {
+ if (type.equals(SQ_A_OUTLIER) || type.equals(SQ_B_OUTLIER) || type.equals(SQ_C_OUTLIER) || type.equals(SQ_D_OUTLIER) || type.equals(SQ_E_OUTLIER)
+ || type.equals(SQ_F_OUTLIER) || type.equals(SQ_G_OUTLIER) || type.equals(SQ_A_OUTLIER_OV) || type.equals(SQ_B_OUTLIER_OV)
+ || type.equals(SQ_C_OUTLIER_OV) || type.equals(SQ_D_OUTLIER_OV) || type.equals(SQ_E_OUTLIER_OV) || type.equals(SQ_F_OUTLIER_OV)
+ || type.equals(SQ_G_OUTLIER_OV)) {
return true;
}
@@ -155,51 +104,26 @@
}
}
- /** Available diagram/chart-types. This enum is evaluated at certain
+ /**
+ * Available diagram/chart-types. This enum is evaluated at certain
* places to iterate over chart-types to e.g. dynamically generate
- * Facet-names (ManualPoints for example). */
+ * Facet-names (ManualPoints for example).
+ */
public enum ChartType {
- FD("fix_derivate_curve"),
- LS("longitudinal_section"),
- CS("cross_section"),
- DLS("discharge_longitudinal_section"),
- CDC("computed_discharge_curve"),
- DUC("duration_curve"),
- DIC("discharge_curve"),
- RC("reference_curve"),
- RCN("reference_curve_normalized"),
- WD("wdifferences"),
- BHDY("bedheight_difference_height_year"),
- BDY("bed_difference_year"),
- FWQC("fix_wq_curve"),
- FDWC("fix_deltawt_curve"),
- FLSC("fix_longitudinal_section_curve"),
- FDC("fix_derivate_curve"),
- EWQ("extreme_wq_curve"),
- BHM("bedheight_middle"),
- BLS("bed_longitudinal_section"),
- SLS("sedimentload_ls"),
- FV("flow_velocity"),
- SQA("sq_relation_a"),
- SQB("sq_relation_b"),
- W_D("w_differences"),
- SQC("sq_relation_c"),
- SQD("sq_relation_d"),
- SQE("sq_relation_e"),
- SQF("sq_relation_f"),
- HD("historical_discharge"),
- HDWQ("historical_discharge_wq"),
- SFD("sinfo_flow_depth"),
- SFDMM("sinfo_flow_depth_minmax"),
- SFDD("sinfo_flow_depth_development"),
- SFDDPY("sinfo_flow_depth_development_peryear"),
- SC("sinfo_collision"),
- SFDUR("sinfo_flood_duration"),
- STKH("sinfo_tkk");
+ FD("fix_derivate_curve"), LS("longitudinal_section"), CS("cross_section"), DLS("discharge_longitudinal_section"), CDC("computed_discharge_curve"), DUC(
+ "duration_curve"), DIC("discharge_curve"), RC("reference_curve"), RCN("reference_curve_normalized"), WD("wdifferences"), BHDY(
+ "bedheight_difference_height_year"), BDY("bed_difference_year"), FWQC("fix_wq_curve"), FDWC("fix_deltawt_curve"), FLSC(
+ "fix_longitudinal_section_curve"), FDC("fix_derivate_curve"), EWQ("extreme_wq_curve"), BHM("bedheight_middle"), BLS(
+ "bed_longitudinal_section"), SLS("sedimentload_ls"), FV(
+ "flow_velocity"), SQA("sq_relation_a"), SQB("sq_relation_b"), W_D("w_differences"), SQC("sq_relation_c"), SQD(
+ "sq_relation_d"), SQE("sq_relation_e"), SQF("sq_relation_f"), HD("historical_discharge"), HDWQ(
+ "historical_discharge_wq"), SFD("sinfo_flow_depth"), SFDMM("sinfo_flow_depth_minmax"), SFDD(
+ "sinfo_flow_depth_development"), SFDDPY("sinfo_flow_depth_development_peryear"), SC(
+ "sinfo_collision"), SFDUR("sinfo_flood_duration"), STKH("sinfo_tkk");
- private String chartTypeString;
+ private final String chartTypeString;
- ChartType(String description) {
+ ChartType(final String description) {
this.chartTypeString = description;
}
@@ -209,44 +133,43 @@
}
}
- String AREA = "area";
- String CROSS_SECTION_AREA = "cross_section.area";
- String LONGITUDINAL_SECTION_AREA = "longitudinal_section.area";
+ String AREA = "area";
+ String CROSS_SECTION_AREA = "cross_section.area";
+ String LONGITUDINAL_SECTION_AREA = "longitudinal_section.area";
- String FLOODMAP_WSPLGEN = "floodmap.wsplgen";
- String FLOODMAP_BARRIERS = "floodmap.barriers";
- String FLOODMAP_USERSHAPE = "floodmap.usershape";
- String FLOODMAP_RIVERAXIS = "floodmap.riveraxis";
+ String FLOODMAP_WSPLGEN = "floodmap.wsplgen";
+ String FLOODMAP_BARRIERS = "floodmap.barriers";
+ String FLOODMAP_USERSHAPE = "floodmap.usershape";
+ String FLOODMAP_RIVERAXIS = "floodmap.riveraxis";
@Deprecated
- String FLOODMAP_WMSBACKGROUND = "floodmap.wmsbackground";
- String FLOODMAP_KMS = "floodmap.kms";
- String FLOODMAP_QPS = "floodmap.qps";
- String FLOODMAP_HWS_LINES = "floodmap.hws_lines";
- String FLOODMAP_HWS_POINTS = "floodmap.hws_points";
- String FLOODMAP_HYDR_BOUNDARY = "floodmap.hydr_boundaries";
+ String FLOODMAP_WMSBACKGROUND = "floodmap.wmsbackground";
+ String FLOODMAP_KMS = "floodmap.kms";
+ String FLOODMAP_QPS = "floodmap.qps";
+ String FLOODMAP_HWS_LINES = "floodmap.hws_lines";
+ String FLOODMAP_HWS_POINTS = "floodmap.hws_points";
+ String FLOODMAP_HYDR_BOUNDARY = "floodmap.hydr_boundaries";
String FLOODMAP_HYDR_BOUNDARY_POLY = "floodmap.hydr_boundaries_poly";
- String FLOODMAP_CATCHMENT = "floodmap.catchment";
- String FLOODMAP_FLOODPLAIN = "floodmap.floodplain";
- String FLOODMAP_LINES = "floodmap.lines";
- String FLOODMAP_BUILDINGS = "floodmap.buildings";
- String FLOODMAP_FIXPOINTS = "floodmap.fixpoints";
- String FLOODMAP_FLOODMARKS = "floodmap.floodmarks";
- String FLOODMAP_FLOODMAPS = "floodmap.floodmaps";
- String FLOODMAP_GAUGE_LOCATION = "floodmap.gauge_location";
- String FLOODMAP_EXTERNAL_WMS = "floodmap.externalwms";
- String FLOODMAP_JETTIES = "floodmap.jetties";
+ String FLOODMAP_CATCHMENT = "floodmap.catchment";
+ String FLOODMAP_FLOODPLAIN = "floodmap.floodplain";
+ String FLOODMAP_LINES = "floodmap.lines";
+ String FLOODMAP_BUILDINGS = "floodmap.buildings";
+ String FLOODMAP_FIXPOINTS = "floodmap.fixpoints";
+ String FLOODMAP_FLOODMARKS = "floodmap.floodmarks";
+ String FLOODMAP_FLOODMAPS = "floodmap.floodmaps";
+ String FLOODMAP_GAUGE_LOCATION = "floodmap.gauge_location";
+ String FLOODMAP_EXTERNAL_WMS = "floodmap.externalwms";
+ String FLOODMAP_EXTERNAL_WMS_INUNDATIONDUR = "floodmap.externalwms_";
+ String FLOODMAP_JETTIES = "floodmap.jetties";
String DISCHARGE_LONGITUDINAL_W = "discharge_longitudinal_section.w";
String DISCHARGE_LONGITUDINAL_Q = "discharge_longitudinal_section.q";
- String DISCHARGE_LONGITUDINAL_Q_INFOLD =
- "discharge_longitudinal_section.q.infolding";
- String DISCHARGE_LONGITUDINAL_Q_INFOLD_CUT =
- "discharge_longitudinal_section.q.cutting";
+ String DISCHARGE_LONGITUDINAL_Q_INFOLD = "discharge_longitudinal_section.q.infolding";
+ String DISCHARGE_LONGITUDINAL_Q_INFOLD_CUT = "discharge_longitudinal_section.q.cutting";
String DISCHARGE_LONGITUDINAL_C = "discharge_longitudinal_section.c";
String LONGITUDINAL_W = "longitudinal_section.w";
String LONGITUDINAL_Q = "longitudinal_section.q";
- String LONGITUDINAL_ANNOTATION = "longitudinal_section.annotations";
+ String LONGITUDINAL_ANNOTATION = "longitudinal_section.annotations";
String LONGITUDINAL_MANUALPOINTS = "longitudinal_section.manualpoints";
String W_DIFFERENCES = "w_differences";
@@ -272,17 +195,17 @@
String MANUALPOINTS = "manualpoints";
String MANUALLINE = "manualline";
- String QSECTOR = "qsectors";
+ String QSECTOR = "qsectors";
- String STATIC_DELTA_W = "other.delta_w";
- String STATIC_DELTA_W_CMA= "other.delta_w_cma";
- String STATIC_WQ = "other.wq";
+ String STATIC_DELTA_W = "other.delta_w";
+ String STATIC_DELTA_W_CMA = "other.delta_w_cma";
+ String STATIC_WQ = "other.wq";
String STATIC_WQ_ANNOTATIONS = "other.wq.annotations";
- String STATIC_WKMS = "other.wkms";
+ String STATIC_WKMS = "other.wkms";
String STATIC_WKMS_MARKS = "other.wkms.marks";
- String STATIC_WQKMS = "other.wqkms";
- String STATIC_WQKMS_W = "other.wqkms.w";
- String STATIC_WQKMS_Q = "other.wqkms.q";
+ String STATIC_WQKMS = "other.wqkms";
+ String STATIC_WQKMS_W = "other.wqkms.w";
+ String STATIC_WQKMS_Q = "other.wqkms.q";
String STATIC_WKMS_INTERPOL = "other.wkms.interpol";
String STATIC_W_INTERPOL = "other.w.interpol";
@@ -290,74 +213,57 @@
String CSV = "csv";
String WST = "wst";
- String AT = "at";
+ String AT = "at";
String PDF = "pdf";
String REPORT = "report";
- String HISTORICAL_DISCHARGE_Q = "historical_discharge.historicalq";
- String HISTORICAL_DISCHARGE_Q_DIFF =
- "historical_discharge.historicalq.diff";
- String HISTORICAL_DISCHARGE_W = "historical_discharge.historicalw";
- String HISTORICAL_DISCHARGE_W_DIFF =
- "historical_discharge.historicalw.diff";
- String HISTORICAL_DISCHARGE_WQ_Q = "historical_discharge.wq.q";
- String HISTORICAL_DISCHARGE_WQ_W = "historical_discharge.wq.w";
+ String HISTORICAL_DISCHARGE_Q = "historical_discharge.historicalq";
+ String HISTORICAL_DISCHARGE_Q_DIFF = "historical_discharge.historicalq.diff";
+ String HISTORICAL_DISCHARGE_W = "historical_discharge.historicalw";
+ String HISTORICAL_DISCHARGE_W_DIFF = "historical_discharge.historicalw.diff";
+ String HISTORICAL_DISCHARGE_WQ_Q = "historical_discharge.wq.q";
+ String HISTORICAL_DISCHARGE_WQ_W = "historical_discharge.wq.w";
- String REFERENCE_CURVE = "reference_curve";
+ String REFERENCE_CURVE = "reference_curve";
String REFERENCE_CURVE_NORMALIZED = "reference_curve_normalized";
- String FLOW_VELOCITY_MAINCHANNEL = "flow_velocity.mainchannel";
- String FLOW_VELOCITY_TOTALCHANNEL = "flow_velocity.totalchannel";
+ String FLOW_VELOCITY_MAINCHANNEL = "flow_velocity.mainchannel";
+ String FLOW_VELOCITY_TOTALCHANNEL = "flow_velocity.totalchannel";
/** Also called SHEAR_STRESS. */
- String FLOW_VELOCITY_TAU = "flow_velocity.tau";
- String FLOW_VELOCITY_MAINCHANNEL_FILTERED =
- "flow_velocity.mainchannel.filtered";
- String FLOW_VELOCITY_TOTALCHANNEL_FILTERED =
- "flow_velocity.totalchannel.filtered";
- String FLOW_VELOCITY_TAU_FILTERED = "flow_velocity.tau.filtered";
- String FLOW_VELOCITY_ANNOTATION = "flow_velocity.annotation";
- String FLOW_VELOCITY_MEASUREMENT = "flow_velocity.measurement";
- String FLOW_VELOCITY_DISCHARGE = "flow_velocity.discharge";
- String FLOW_VELOCITY_WATERLEVEL = "flow_velocity.waterlevel";
+ String FLOW_VELOCITY_TAU = "flow_velocity.tau";
+ String FLOW_VELOCITY_MAINCHANNEL_FILTERED = "flow_velocity.mainchannel.filtered";
+ String FLOW_VELOCITY_TOTALCHANNEL_FILTERED = "flow_velocity.totalchannel.filtered";
+ String FLOW_VELOCITY_TAU_FILTERED = "flow_velocity.tau.filtered";
+ String FLOW_VELOCITY_ANNOTATION = "flow_velocity.annotation";
+ String FLOW_VELOCITY_MEASUREMENT = "flow_velocity.measurement";
+ String FLOW_VELOCITY_DISCHARGE = "flow_velocity.discharge";
+ String FLOW_VELOCITY_WATERLEVEL = "flow_velocity.waterlevel";
- String MIDDLE_BED_HEIGHT_SINGLE = "bedheight_middle.single";
+ String MIDDLE_BED_HEIGHT_SINGLE = "bedheight_middle.single";
String MIDDLE_BED_HEIGHT_ANNOTATION = "bedheight_middle.annotation";
String BED_QUALITY_DATA_FACET = "bed_longitudinal_section";
- String BED_QUALITY_POROSITY_TOPLAYER =
- BED_QUALITY_DATA_FACET + ".porosity.toplayer";
- String BED_QUALITY_POROSITY_SUBLAYER =
- BED_QUALITY_DATA_FACET + ".porosity.sublayer";
- String BED_QUALITY_BED_DIAMETER_TOPLAYER =
- BED_QUALITY_DATA_FACET + ".diameter.toplayer";
- String BED_QUALITY_BED_DIAMETER_SUBLAYER =
- BED_QUALITY_DATA_FACET + ".diameter.sublayer";
- String BED_QUALITY_SEDIMENT_DENSITY_TOPLAYER =
- BED_QUALITY_DATA_FACET + ".density.toplayer";
- String BED_QUALITY_SEDIMENT_DENSITY_SUBLAYER =
- BED_QUALITY_DATA_FACET + ".density.sublayer";
- String BED_QUALITY_BEDLOAD_DIAMETER =
- BED_QUALITY_DATA_FACET + ".diameter.bedload";
- String BED_DIAMETER_DATA_TOP =
- BED_QUALITY_DATA_FACET + ".diameter.toplayer.data";
- String BED_DIAMETER_DATA_SUB =
- BED_QUALITY_DATA_FACET + ".diameter.sublayer.data";
- String BEDLOAD_DIAMETER_DATA =
- BED_QUALITY_DATA_FACET + ".diameter.bedload.data";
+ String BED_QUALITY_POROSITY_TOPLAYER = BED_QUALITY_DATA_FACET + ".porosity.toplayer";
+ String BED_QUALITY_POROSITY_SUBLAYER = BED_QUALITY_DATA_FACET + ".porosity.sublayer";
+ String BED_QUALITY_BED_DIAMETER_TOPLAYER = BED_QUALITY_DATA_FACET + ".diameter.toplayer";
+ String BED_QUALITY_BED_DIAMETER_SUBLAYER = BED_QUALITY_DATA_FACET + ".diameter.sublayer";
+ String BED_QUALITY_SEDIMENT_DENSITY_TOPLAYER = BED_QUALITY_DATA_FACET + ".density.toplayer";
+ String BED_QUALITY_SEDIMENT_DENSITY_SUBLAYER = BED_QUALITY_DATA_FACET + ".density.sublayer";
+ String BED_QUALITY_BEDLOAD_DIAMETER = BED_QUALITY_DATA_FACET + ".diameter.bedload";
+ String BED_DIAMETER_DATA_TOP = BED_QUALITY_DATA_FACET + ".diameter.toplayer.data";
+ String BED_DIAMETER_DATA_SUB = BED_QUALITY_DATA_FACET + ".diameter.sublayer.data";
+ String BEDLOAD_DIAMETER_DATA = BED_QUALITY_DATA_FACET + ".diameter.bedload.data";
String POROSITY = "porosity";
String BED_DIFFERENCE_YEAR = "bedheight_difference.year";
String BED_DIFFERENCE_YEAR_FILTERED = "bedheight_difference.year.filtered";
String BED_DIFFERENCE_HEIGHT_YEAR = "bedheight_difference.height_year";
- String BED_DIFFERENCE_HEIGHT_YEAR_FILTERED =
- "bedheight_difference.height_year.filtered";
+ String BED_DIFFERENCE_HEIGHT_YEAR_FILTERED = "bedheight_difference.height_year.filtered";
String BED_DIFFERENCE_YEAR_HEIGHT1 = "bedheight_difference.year.height1";
String BED_DIFFERENCE_YEAR_HEIGHT2 = "bedheight_difference.year.height2";
- String BED_DIFFERENCE_YEAR_HEIGHT1_FILTERED =
- "bedheight_difference.year.height1.filtered";
- String BED_DIFFERENCE_YEAR_HEIGHT2_FILTERED =
- "bedheight_difference.year.height2.filtered";
+ String BED_DIFFERENCE_YEAR_HEIGHT1_FILTERED = "bedheight_difference.year.height1.filtered";
+ String BED_DIFFERENCE_YEAR_HEIGHT2_FILTERED = "bedheight_difference.year.height2.filtered";
String MORPHOLOGIC_WIDTH = "morph-width";
@@ -365,88 +271,87 @@
String SQ_OVERVIEW = "sq_overview";
- String SQ_A_CURVE = "sq_a_curve";
+ String SQ_A_CURVE = "sq_a_curve";
String SQ_A_MEASUREMENT = "sq_a_measurement";
- String SQ_A_OUTLIER = "sq_a_outlier";
+ String SQ_A_OUTLIER = "sq_a_outlier";
String SQ_A_OUTLIER_CURVE = "sq_a_outlier_curve";
String SQ_A_OUTLIER_MEASUREMENT = "sq_a_outlier_measurement";
- String SQ_B_CURVE = "sq_b_curve";
+ String SQ_B_CURVE = "sq_b_curve";
String SQ_B_MEASUREMENT = "sq_b_measurement";
- String SQ_B_OUTLIER = "sq_b_outlier";
- String SQ_B_OUTLIER_CURVE = "sq_b_outlier_curve";
- String SQ_B_OUTLIER_MEASUREMENT = "sq_b_outlier_measurement";
+ String SQ_B_OUTLIER = "sq_b_outlier";
+ String SQ_B_OUTLIER_CURVE = "sq_b_outlier_curve";
+ String SQ_B_OUTLIER_MEASUREMENT = "sq_b_outlier_measurement";
- String SQ_C_CURVE = "sq_c_curve";
+ String SQ_C_CURVE = "sq_c_curve";
String SQ_C_MEASUREMENT = "sq_c_measurement";
- String SQ_C_OUTLIER = "sq_c_outlier";
+ String SQ_C_OUTLIER = "sq_c_outlier";
String SQ_C_OUTLIER_CURVE = "sq_c_outlier_curve";
String SQ_C_OUTLIER_MEASUREMENT = "sq_c_outlier_measurement";
- String SQ_D_CURVE = "sq_d_curve";
+ String SQ_D_CURVE = "sq_d_curve";
String SQ_D_MEASUREMENT = "sq_d_measurement";
- String SQ_D_OUTLIER = "sq_d_outlier";
+ String SQ_D_OUTLIER = "sq_d_outlier";
String SQ_D_OUTLIER_CURVE = "sq_d_outlier_curve";
String SQ_D_OUTLIER_MEASUREMENT = "sq_d_outlier_measurement";
- String SQ_E_CURVE = "sq_e_curve";
+ String SQ_E_CURVE = "sq_e_curve";
String SQ_E_MEASUREMENT = "sq_e_measurement";
- String SQ_E_OUTLIER = "sq_e_outlier";
+ String SQ_E_OUTLIER = "sq_e_outlier";
String SQ_E_OUTLIER_CURVE = "sq_e_outlier_curve";
String SQ_E_OUTLIER_MEASUREMENT = "sq_e_outlier_curve_measurement";
- String SQ_F_CURVE = "sq_f_curve";
+ String SQ_F_CURVE = "sq_f_curve";
String SQ_F_MEASUREMENT = "sq_f_measurement";
- String SQ_F_OUTLIER = "sq_f_outlier";
+ String SQ_F_OUTLIER = "sq_f_outlier";
String SQ_F_OUTLIER_CURVE = "sq_f_outlier_curve";
String SQ_F_OUTLIER_MEASUREMENT = "sq_f_outlier_measurement";
- String SQ_G_CURVE = "sq_g_curve";
+ String SQ_G_CURVE = "sq_g_curve";
String SQ_G_MEASUREMENT = "sq_g_measurement";
- String SQ_G_OUTLIER = "sq_g_outlier";
+ String SQ_G_OUTLIER = "sq_g_outlier";
String SQ_G_OUTLIER_CURVE = "sq_g_outlier_curve";
String SQ_G_OUTLIER_MEASUREMENT = "sq_g_outlier_measurement";
- String SQ_A_CURVE_OV = "sq_a_curve_overview";
+ String SQ_A_CURVE_OV = "sq_a_curve_overview";
String SQ_A_MEASUREMENT_OV = "sq_a_measurement_overview";
- String SQ_A_OUTLIER_OV = "sq_a_outlier_overview";
+ String SQ_A_OUTLIER_OV = "sq_a_outlier_overview";
String SQ_A_OUTLIER_CURVE_OV = "sq_a_outlier_curve_overview";
String SQ_A_OUTLIER_MEASUREMENT_OV = "sq_a_outlier_measurement_overview";
- String SQ_B_CURVE_OV = "sq_b_curve_overview";
+ String SQ_B_CURVE_OV = "sq_b_curve_overview";
String SQ_B_MEASUREMENT_OV = "sq_b_measurement_overview";
- String SQ_B_OUTLIER_OV = "sq_b_outlier_overview";
- String SQ_B_OUTLIER_CURVE_OV = "sq_b_outlier_curve_overview";
- String SQ_B_OUTLIER_MEASUREMENT_OV = "sq_b_outlier_measurement_overview";
+ String SQ_B_OUTLIER_OV = "sq_b_outlier_overview";
+ String SQ_B_OUTLIER_CURVE_OV = "sq_b_outlier_curve_overview";
+ String SQ_B_OUTLIER_MEASUREMENT_OV = "sq_b_outlier_measurement_overview";
- String SQ_C_CURVE_OV = "sq_c_curve_overview";
+ String SQ_C_CURVE_OV = "sq_c_curve_overview";
String SQ_C_MEASUREMENT_OV = "sq_c_measurement_overview";
- String SQ_C_OUTLIER_OV = "sq_c_outlier_overview";
+ String SQ_C_OUTLIER_OV = "sq_c_outlier_overview";
String SQ_C_OUTLIER_CURVE_OV = "sq_c_outlier_curve_overview";
String SQ_C_OUTLIER_MEASUREMENT_OV = "sq_c_outlier_measurement_overview";
- String SQ_D_CURVE_OV = "sq_d_curve_overview";
+ String SQ_D_CURVE_OV = "sq_d_curve_overview";
String SQ_D_MEASUREMENT_OV = "sq_d_measurement_overview";
- String SQ_D_OUTLIER_OV = "sq_d_outlier_overview";
+ String SQ_D_OUTLIER_OV = "sq_d_outlier_overview";
String SQ_D_OUTLIER_CURVE_OV = "sq_d_outlier_curve_overview";
String SQ_D_OUTLIER_MEASUREMENT_OV = "sq_d_outlier_measurement_overview";
- String SQ_E_CURVE_OV = "sq_e_curve_overview";
+ String SQ_E_CURVE_OV = "sq_e_curve_overview";
String SQ_E_MEASUREMENT_OV = "sq_e_measurement_overview";
- String SQ_E_OUTLIER_OV = "sq_e_outlier_overview";
+ String SQ_E_OUTLIER_OV = "sq_e_outlier_overview";
String SQ_E_OUTLIER_CURVE_OV = "sq_e_outlier_curve_overview";
- String SQ_E_OUTLIER_MEASUREMENT_OV =
- "sq_e_outlier_curve_measurement_overview";
+ String SQ_E_OUTLIER_MEASUREMENT_OV = "sq_e_outlier_curve_measurement_overview";
- String SQ_F_CURVE_OV = "sq_f_curve_overview";
+ String SQ_F_CURVE_OV = "sq_f_curve_overview";
String SQ_F_MEASUREMENT_OV = "sq_f_measurement_overview";
- String SQ_F_OUTLIER_OV = "sq_f_outlier_overview";
+ String SQ_F_OUTLIER_OV = "sq_f_outlier_overview";
String SQ_F_OUTLIER_CURVE_OV = "sq_f_outlier_curve_overview";
String SQ_F_OUTLIER_MEASUREMENT_OV = "sq_f_outlier_measurement_overview";
- String SQ_G_CURVE_OV = "sq_g_curve_overview";
+ String SQ_G_CURVE_OV = "sq_g_curve_overview";
String SQ_G_MEASUREMENT_OV = "sq_g_measurement_overview";
- String SQ_G_OUTLIER_OV = "sq_g_outlier_overview";
+ String SQ_G_OUTLIER_OV = "sq_g_outlier_overview";
String SQ_G_OUTLIER_CURVE_OV = "sq_g_outlier_curve_overview";
String SQ_G_OUTLIER_MEASUREMENT_OV = "sq_g_outlier_measurement_overview";
@@ -486,9 +391,9 @@
String STATIC_BEDHEIGHT = "static_bedheight";
- String BEDHEIGHT = "bedheight";
+ String BEDHEIGHT = "bedheight";
String BEDHEIGHT_SOUNDING_WIDTH = "bedheight_sounding_width";
- String BEDHEIGHT_WIDTH = "bedheight_width";
+ String BEDHEIGHT_WIDTH = "bedheight_width";
String EXTREME_WQ_CURVE = "extreme_wq_curve";
diff -r 13a0c4be17ea -r 0633f963c5be 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 Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationAccess.java Thu Jun 28 15:10:04 2018 +0200
@@ -51,13 +51,6 @@
assert (calculationMode == UinfoCalcMode.uinfo_inundation_duration);
}
- public Double getSedimentHeight() {
- if (super.getBoolean("use_scenario")) {
- return super.getDouble("sedimentheight"); // TODO: INPUT Valdiation (nicht hier, sondern im Panel. Erinnerung)
- }
- return null;
- }
-
public Integer getYear() {
final int[] years = this.helper.getYears("state.uinfo.year", "singleyear");
if (years != null) {
@@ -78,7 +71,7 @@
}
public String getWMSScenarioUrl() {
- if (super.getBoolean("use_scenario")) {
+ if (getIsUseScenario()) {
final UedauernPropertiesHelper helper = UedauernPropertiesHelper.getInstance(getRiverName());
if (this.getYear() != null) {
return helper.getScenarioUrlFromYear(this.getYear(), this.getDwspl());
@@ -89,8 +82,8 @@
return "";
}
- private Integer getDwspl() {
- if (super.getBoolean("use_scenario")) {
+ public Integer getDwspl() {
+ if (getIsUseScenario()) {
return super.getInteger("sedimentheight");
}
return null;
@@ -101,4 +94,15 @@
return super.getString("vegzones");
}
+ public boolean getIsUseScenario() {
+ return super.getBoolean("use_scenario");
+ }
+
+ public Integer[] mittelStartEndYears() {
+ if (getIsUseScenario()) {
+ final UedauernPropertiesHelper helper = UedauernPropertiesHelper.getInstance(getRiverName());
+ return helper.getMittelStartEnd();
+ }
+ return null;
+ }
}
\ No newline at end of file
diff -r 13a0c4be17ea -r 0633f963c5be 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 Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculation.java Thu Jun 28 15:10:04 2018 +0200
@@ -9,19 +9,14 @@
*/
package org.dive4elements.river.artifacts.uinfo.inundationduration;
-import java.util.ArrayList;
-import java.util.Collection;
import java.util.List;
import org.apache.commons.lang.math.DoubleRange;
import org.dive4elements.artifacts.CallContext;
import org.dive4elements.river.artifacts.access.RiverAccess;
-import org.dive4elements.river.artifacts.common.GeneralResultType;
-import org.dive4elements.river.artifacts.common.ResultRow;
import org.dive4elements.river.artifacts.model.Calculation;
import org.dive4elements.river.artifacts.model.CalculationResult;
import org.dive4elements.river.artifacts.resources.Resources;
-import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType;
import org.dive4elements.river.artifacts.sinfo.util.CalculationUtils;
import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
import org.dive4elements.river.artifacts.uinfo.UINFOArtifact;
@@ -53,35 +48,34 @@
final RiverInfo riverInfo = new RiverInfo(river);
final DoubleRange calcRange = indurax.getRange();
final String url = indurax.getWMSUrl();
- final Integer year = indurax.getYear(); // null bei year -> Integer.. evtl ungünstig.. evtl. anders lösen
- final DoubleRange range = indurax.getRange();
- final Double sedimentHeight = indurax.getSedimentHeight();
+ final Integer year = indurax.getYear(); // null bei year -> Integer
final String zonesRaw = indurax.getVegZones();
final List<VegetationZone> zones = VegetationZone.parse(zonesRaw);
+ final String scenarioUrl = indurax.getWMSScenarioUrl();
+ final String scenarioStr = String.valueOf(indurax.getDwspl());
- final InundationDurationCalculationResults results = new InundationDurationCalculationResults(calcModeLabel, user, riverInfo, calcRange);
+ // TODO: add vegetationzone-values as parameter to url and use this url as veg'zone'url
- final Collection<ResultRow> rows = new ArrayList<>();
+ final boolean isUseScenario = indurax.getIsUseScenario();
+ final Integer[] mittelStartEndYears = indurax.mittelStartEndYears();
+ final InundationDurationCalculationResult result = new InundationDurationCalculationResult();
- final ResultRow row1 = ResultRow.create(). //
- putValue(GeneralResultType.station, 88). //
- putValue(SInfoResultType.discharge, 100). //
- putValue(SInfoResultType.waterlevel, 2). //
- putValue(SInfoResultType.gaugeLabel, "Torgau");
+ final String rangeDuration = year != null ? String.valueOf(year)
+ : new StringBuilder().append(String.valueOf(mittelStartEndYears[0])).append("-").append(mittelStartEndYears[1]).toString();
- rows.add(row1);
+ result.addLayer(Resources.getMsg(this.context.getMeta(), "uinfo.export.url.inundationduration.inundationduration", new Object[] { rangeDuration }), url,
+ true);
+ // TODO: add vegetationzone-values as parameter to url and use this url as veg'zone'url
+ result.addLayer(Resources.getMsg(this.context.getMeta(), "uinfo.export.url.inundationduration.vegetation", new Object[] { rangeDuration }), url, false);
+ if (isUseScenario) {
+ result.addLayer(
+ Resources.getMsg(this.context.getMeta(), "uinfo.export.url.inundationduration.scenario", new Object[] { rangeDuration, scenarioStr }),
+ scenarioUrl, true);
+ // TODO: add vegetationzone-values as parameter to url and use this url as veg'zone'url
+ result.addLayer(Resources.getMsg(this.context.getMeta(), "uinfo.export.url.inundationduration.vegetation_scenario",
+ new Object[] { rangeDuration, scenarioStr }), scenarioUrl, false);
+ }
- final ResultRow row2 = ResultRow.create(). //
- putValue(SInfoResultType.discharge, 200). //
- putValue(SInfoResultType.waterlevel, 3). //
- putValue(SInfoResultType.gaugeLabel, "Zollenspieker");
-
- rows.add(row2);
-
- final InundationDurationCalculationResult result = new InundationDurationCalculationResult("Ergebnis 1", null, rows);
-
- results.addResult(result, problems);
-
- return new CalculationResult(results, problems);
+ return new CalculationResult(result, problems);
}
}
\ No newline at end of file
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculationResult.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculationResult.java Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculationResult.java Thu Jun 28 15:10:04 2018 +0200
@@ -9,95 +9,48 @@
*/
package org.dive4elements.river.artifacts.uinfo.inundationduration;
+import java.io.Serializable;
import java.util.ArrayList;
-import java.util.Collection;
-
-import org.dive4elements.river.artifacts.common.AbstractCalculationExportableResult;
-import org.dive4elements.river.artifacts.common.ExportContextCSV;
-import org.dive4elements.river.artifacts.common.GeneralResultType;
-import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource;
-import org.dive4elements.river.artifacts.common.ResultRow;
-import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType;
-import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
-import org.dive4elements.river.artifacts.sinfo.util.WstInfo;
+import java.util.List;
/**
* @author Domenico Nardi Tironi
*/
-final class InundationDurationCalculationResult extends AbstractCalculationExportableResult<InundationDurationCalculationResults> {
+final class InundationDurationCalculationResult implements Serializable {
private static final long serialVersionUID = 1L;
- private static final String JASPER_FILE = "/jasper/templates/uinfo.inundationduration.jrxml";
- public InundationDurationCalculationResult(final String label, final WstInfo wst, final Collection<ResultRow> rows) {
- super(label, rows);
+ private final List<WmsLayer> layers = new ArrayList<>();
+
+ public final static class WmsLayer {
+ private final String label;
+ private final String url;
+ private final boolean showLayerLink;
+
+ public WmsLayer(final String label, final String url, final boolean showLayerLink) {
+ this.label = label;
+ this.url = url;
+ this.showLayerLink = showLayerLink;
+ }
+
+ public String getLabel() {
+ return this.label;
+ }
+
+ public String getUrl() {
+ return this.url;
+ }
+
+ public boolean isShowLayerLink() {
+ return this.showLayerLink;
+ }
}
- @Override
- public void writeCSVHeader(final ExportContextCSV exportContextCSV, final InundationDurationCalculationResults results, final RiverInfo river) {
-
- final Collection<String> header = new ArrayList<>(11);
-
- header.add(exportContextCSV.formatCsvHeader(GeneralResultType.station));
- header.add(exportContextCSV.msgUnitCSV(SInfoResultType.flowdepth));
-
- header.add(exportContextCSV.msgUnitCSV(SInfoResultType.waterlevel, river.getWstUnit()));
- header.add(exportContextCSV.msgUnitCSV(SInfoResultType.discharge));
- header.add(exportContextCSV.formatCsvHeader(SInfoResultType.waterlevelLabel));
- header.add(exportContextCSV.formatCsvHeader(SInfoResultType.gaugeLabel));
- header.add(exportContextCSV.msgUnitCSV(SInfoResultType.meanBedHeight, river.getWstUnit()));
- header.add(exportContextCSV.formatCsvHeader(SInfoResultType.soundingLabel));
- header.add(exportContextCSV.formatCsvHeader(SInfoResultType.location));
-
- exportContextCSV.writeCSVLine(header.toArray(new String[header.size()]));
-
+ public void addLayer(final String label, final String url, final boolean showLayerLink) {
+ this.layers.add(new WmsLayer(label, url, showLayerLink));
}
- @Override
- protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV, final InundationDurationCalculationResults results) {
- // no Result metadata so far
+ public List<WmsLayer> getLayers() {
+ return this.layers;
}
-
- @Override
- protected String[] formatCSVRow(final ExportContextCSV exportContextCSV, final InundationDurationCalculationResults results, final ResultRow row) {
- return formatRow(exportContextCSV, results, row);
- }
-
- @Override
- protected String[] formatPDFRow(final ExportContextCSV exportContextPDF, final InundationDurationCalculationResults results, final ResultRow row) {
-
- return formatRow(exportContextPDF, results, row);
- }
-
- @Override
- protected String getJasperFile() {
-
- return JASPER_FILE;
- }
-
- @Override
- protected void addJRTableHeader(final ExportContextCSV exportContextPDF, final MetaAndTableJRDataSource source,
- final InundationDurationCalculationResults results) {
-
- exportContextPDF.addJRMetadata(source, "station_header", GeneralResultType.station);
- }
-
- protected String[] formatRow(final ExportContextCSV context, final InundationDurationCalculationResults results, final ResultRow row) {
-
- final Collection<String> lines = new ArrayList<>(11);
-
- lines.add(context.formatRowValue(row, GeneralResultType.station));
- lines.add(context.formatRowValue(row, SInfoResultType.flowdepth));
-
- lines.add(context.formatRowValue(row, SInfoResultType.waterlevel));
- lines.add(context.formatRowValue(row, SInfoResultType.discharge));
- lines.add(context.formatRowValue(row, SInfoResultType.waterlevelLabel));
- lines.add(context.formatRowValue(row, SInfoResultType.gaugeLabel));
- lines.add(context.formatRowValue(row, SInfoResultType.meanBedHeight));
- lines.add(context.formatRowValue(row, SInfoResultType.soundingLabel));
- lines.add(context.formatRowValue(row, SInfoResultType.location));
-
- return lines.toArray(new String[lines.size()]);
- }
-
}
\ No newline at end of file
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculationResults.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculationResults.java Thu Jun 28 14:11:12 2018 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
- * Software engineering by
- * Björnsen Beratende Ingenieure GmbH
- * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
- *
- * This file is Free Software under the GNU AGPL (>=v3)
- * and comes with ABSOLUTELY NO WARRANTY! Check out the
- * documentation coming with Dive4Elements River for details.
- */
-package org.dive4elements.river.artifacts.uinfo.inundationduration;
-
-import org.apache.commons.lang.math.DoubleRange;
-import org.dive4elements.river.artifacts.common.AbstractCalculationExportableResult;
-import org.dive4elements.river.artifacts.common.AbstractCalculationResults;
-import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
-
-/**
- * @author Domenico Nardi Tironi
- *
- */
-final class InundationDurationCalculationResults extends AbstractCalculationResults<AbstractCalculationExportableResult<InundationDurationCalculationResults>> {
-
- private static final long serialVersionUID = 1L;
-
- public InundationDurationCalculationResults(final String calcModeLabel, final String user, final RiverInfo river, final DoubleRange calcRange) {
- super(calcModeLabel, user, river, calcRange);
- }
-}
\ No newline at end of file
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationExporter.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationExporter.java Thu Jun 28 14:11:12 2018 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
-* Software engineering by
-* Björnsen Beratende Ingenieure GmbH
-* Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
-*
-* This file is Free Software under the GNU AGPL (>=v3)
-* and comes with ABSOLUTELY NO WARRANTY! Check out the
-* documentation coming with Dive4Elements River for details.
-*/
-package org.dive4elements.river.artifacts.uinfo.inundationduration;
-
-import java.io.OutputStream;
-
-import org.dive4elements.river.artifacts.common.AbstractCalculationExportableResult;
-import org.dive4elements.river.artifacts.common.AbstractCommonExporter;
-import org.dive4elements.river.artifacts.common.ExportContextCSV;
-import org.dive4elements.river.artifacts.common.I18NStrings;
-import org.dive4elements.river.artifacts.common.JasperReporter;
-import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource;
-import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
-
-import au.com.bytecode.opencsv.CSVWriter;
-import net.sf.jasperreports.engine.JRException;
-
-/**
- * @author Domenico Nardi Tironi
- *
- */
-public class InundationDurationExporter extends AbstractCommonExporter<InundationDurationCalculationResults> {
-
- @Override
- protected void doWritePdf(final OutputStream out, final InundationDurationCalculationResults results) {
- // TODO: Move to super
- try {
- final ExportContextCSV exportContextCSV = new ExportContextCSV(this.context, null);
-
- final JasperReporter reporter = new JasperReporter();
-
- for (final AbstractCalculationExportableResult<InundationDurationCalculationResults> result : results.getResults()) {
- final MetaAndTableJRDataSource source = new MetaAndTableJRDataSource();
- getHelper().addJRMetaDataUSINFO(source, results);
-
- result.addReport(exportContextCSV, results, reporter, source);
- }
-
- reporter.exportPDF(out);
- }
- catch (final JRException je) {
- getLog().warn("Error generating PDF Report!", je);
- }
- }
-
- @Override
- protected void doWriteCSVData(final CSVWriter writer, final InundationDurationCalculationResults results) {
- // TODO: Diesen Ablauf in super? -> leichte abweichung
-
- // TODO: move results into context?
- final ExportContextCSV exportContextCSV = new ExportContextCSV(this.context, writer);
-
- getLog().info("writeCSVData");
-
- final RiverInfo river = results.getRiver();
-
- /* write as csv */
- exportContextCSV.writeCSVGlobalMetadataDefaults(results); // ggf auslagern innerhalb dieser Klasse
- exportContextCSV.writeCSVMetaEntry(I18NStrings.CSV_META_HEIGHT_UNIT_RIVER, river.getWstUnit());
- // writer.writeNext(new String[] { "" }); // break line HERE to avoid redundance
-
- final Class<?> lastResultType = null;
-
- for (final AbstractCalculationExportableResult<InundationDurationCalculationResults> result : results.getResults()) {
-
- final Class<?> resultType = result.getClass();
- if (lastResultType == null || lastResultType != resultType) {
- exportContextCSV.writeBlankLine();
- result.writeCSVHeader(exportContextCSV, results, river);
- exportContextCSV.writeBlankLine();
- } else
- exportContextCSV.writeCSVLine(new String[] { "#" });
-
- result.writeCsv(exportContextCSV, results);
- }
-
- }
-}
\ No newline at end of file
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationState.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationState.java Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationState.java Thu Jun 28 15:10:04 2018 +0200
@@ -16,14 +16,14 @@
import org.dive4elements.river.artifacts.ChartArtifact;
import org.dive4elements.river.artifacts.D4EArtifact;
import org.dive4elements.river.artifacts.MapArtifact.MapState;
-import org.dive4elements.river.artifacts.common.AbstractCalculationExportableResult;
import org.dive4elements.river.artifacts.model.Calculation;
import org.dive4elements.river.artifacts.model.CalculationResult;
import org.dive4elements.river.artifacts.model.DataFacet;
import org.dive4elements.river.artifacts.model.EmptyFacet;
-import org.dive4elements.river.artifacts.model.FacetTypes;
import org.dive4elements.river.artifacts.model.ReportFacet;
+import org.dive4elements.river.artifacts.model.map.WMSLayerFacet;
import org.dive4elements.river.artifacts.uinfo.UINFOArtifact;
+import org.dive4elements.river.artifacts.uinfo.inundationduration.InundationDurationCalculationResult.WmsLayer;
/**
* @author Domenico Nardi Tironi
@@ -35,6 +35,8 @@
private static final long serialVersionUID = 1L;
+ private static final String LABEL_URL_SEPARATOR = ";";// always sync with client (ExportPanel)
+
/**
* From this state can only be continued trivially.
*/
@@ -51,7 +53,7 @@
return null;
}
- return compute((UINFOArtifact) artifact, context, hash, facets, old);
+ return compute((UINFOArtifact) artifact, context, ComputeType.FEED, hash, facets, old);
}
@Override
@@ -64,7 +66,8 @@
if (facets != null)
super.computeAdvance(artifact, hash, context, facets, old);
- return compute((UINFOArtifact) artifact, context, hash, facets, old);
+ return compute((UINFOArtifact) artifact, context, ComputeType.ADVANCE, hash, facets, old);
+
}
/**
@@ -73,27 +76,43 @@
* @param old
* Object that was cached.
*/
- private Object compute(final UINFOArtifact sinfo, final CallContext context, final String hash, final List<Facet> facets, final Object old) {
+ private Object compute(final UINFOArtifact sinfo, final CallContext context, final ComputeType type, final String hash, final List<Facet> facets,
+ final Object old) {
final CalculationResult res = doCompute(sinfo, context, old);
if (facets == null)
return res;
- final InundationDurationCalculationResults results = (InundationDurationCalculationResults) res.getData();
+ final InundationDurationCalculationResult result = (InundationDurationCalculationResult) res.getData();
+ final List<WmsLayer> layers = result.getLayers();
- final List<AbstractCalculationExportableResult<InundationDurationCalculationResults>> resultList = results.getResults();
+ int index = 1; // 1 because super.computeAdvance adds the river theme with index 0
+ for (final WmsLayer layer : layers) {
- if (!resultList.isEmpty()) {
- final Facet csv = new DataFacet(FacetTypes.CSV, "CSV data", ComputeType.ADVANCE, hash, this.id);
- final Facet pdf = new DataFacet(FacetTypes.PDF, "PDF data", ComputeType.ADVANCE, hash, this.id);
+ final String label = layer.getLabel();
+ final String url = layer.getUrl();
- facets.add(csv);
- facets.add(pdf);
+ final WMSLayerFacet wmsFacet = new WMSLayerFacet(index, FLOODMAP_EXTERNAL_WMS_INUNDATIONDUR + index, label, type, getID(), hash, url);
+ facets.add(wmsFacet);
+
+ wmsFacet.addLayer("OSM-WMS-Dienst");
+
+ // wmsFacet.setExtent(getExtent(false));
+ // wmsFacet.setOriginalExtent(getExtent(true));
+ wmsFacet.setSrid(getSrid());
+
+ if (layer.isShowLayerLink())
+ facets.add(new DataFacet("wms_url", label + LABEL_URL_SEPARATOR + url, ComputeType.ADVANCE, hash, this.id));
+
+ index++; // because super.computeAdvance adds the river theme with index 0
}
+ // tODO: create layer links: filter by "showLayerLink"
+
+ // tODO: create layer links: filter by "showLayerLink"
+
final Calculation report = res.getReport();
-
if (report.hasProblems())
facets.add(new ReportFacet(ComputeType.ADVANCE, hash, this.id));
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/UedauernPropertiesHelper.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/UedauernPropertiesHelper.java Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/UedauernPropertiesHelper.java Thu Jun 28 15:10:04 2018 +0200
@@ -74,7 +74,7 @@
return this.properties;
}
- private final Integer[] getMittelStartEnd() {
+ final Integer[] getMittelStartEnd() {
if (this.mittelStartEnde == null) {
final Integer mittel_start = Integer.valueOf(getProperties().get("mittel_start").toString());
final Integer mittel_ende = Integer.valueOf(getProperties().get("mittel_ende").toString());
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/YearChoice.java
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/YearChoice.java Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/YearChoice.java Thu Jun 28 15:10:04 2018 +0200
@@ -25,14 +25,14 @@
protected LinkedHashMap<String, String> makeEntries(final CallMeta meta, final Artifact artifact) {
// in helper-klasse; dann hier label lazy loaden
final LinkedHashMap<String, String> entries = new LinkedHashMap<>();
+ if (artifact != null) {// necessary; otherwise crashes randomly when reloading old calculations
+ final InundationDurationAccess access = new InundationDurationAccess((UINFOArtifact) artifact);
- final InundationDurationAccess access = new InundationDurationAccess((UINFOArtifact) artifact);
-
- final UedauernPropertiesHelper helper = UedauernPropertiesHelper.getInstance(access.getRiverName());
- final LinkedHashMap<String, String> extras = helper.getExtraLayers(meta);
- entries.put("state.uinfo.year", null);
- entries.putAll(extras);
-
+ final UedauernPropertiesHelper helper = UedauernPropertiesHelper.getInstance(access.getRiverName());
+ final LinkedHashMap<String, String> extras = helper.getExtraLayers(meta);
+ entries.put("state.uinfo.year", null);
+ entries.putAll(extras);
+ }
return entries;
}
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/resources/messages.properties
--- a/artifacts/src/main/resources/messages.properties Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/resources/messages.properties Thu Jun 28 15:10:04 2018 +0200
@@ -1095,6 +1095,10 @@
uinfo.export.csv.meta.header.veg.name = Vegetationszonen
uinfo.export.csv.meta.header.veg.dauervon = \u00dcberflutungsdauer von [d/a]
uinfo.export.csv.meta.header.veg.dauerbis = \u00dcberflutungsdauer bis [d/a]
+uinfo.export.url.inundationduration.inundationduration = \u00dcberflutungsdauer ({0})
+uinfo.export.url.inundationduration.vegetation = Vegetationszonen ({0})
+uinfo.export.url.inundationduration.vegetation_scenario= Vegetationszonen Szenario (Zeitraum: {0}, Szenario: {1})
+uinfo.export.url.inundationduration.scenario = \u00dcberflutungsdauer Szenario (Zeitraum: {0}, Szenario: {1})
predefineddepthevol.total.title = Gesamt: {0}
predefineddepthevol.peryear.title = J\u00e4hrlich: {0}
diff -r 13a0c4be17ea -r 0633f963c5be artifacts/src/main/resources/messages_de.properties
--- a/artifacts/src/main/resources/messages_de.properties Thu Jun 28 14:11:12 2018 +0200
+++ b/artifacts/src/main/resources/messages_de.properties Thu Jun 28 15:10:04 2018 +0200
@@ -1095,6 +1095,10 @@
uinfo.export.csv.meta.header.veg.name = Vegetationszonen
uinfo.export.csv.meta.header.veg.dauervon = \u00dcberflutungsdauer von [d/a]
uinfo.export.csv.meta.header.veg.dauerbis = \u00dcberflutungsdauer bis [d/a]
+uinfo.export.url.inundationduration.inundationduration = \u00dcberflutungsdauer ({0})
+uinfo.export.url.inundationduration.vegetation = Vegetationszonen ({0})
+uinfo.export.url.inundationduration.vegetation_scenario= Vegetationszonen Szenario (Zeitraum: {0}, Szenario: {1})
+uinfo.export.url.inundationduration.scenario = \u00dcberflutungsdauer Szenario (Zeitraum: {0}, Szenario: {1})
predefineddepthevol.total.title = Gesamt: {0}
predefineddepthevol.peryear.title = J\u00e4hrlich: {0}
diff -r 13a0c4be17ea -r 0633f963c5be gwt-client/src/main/java/org/dive4elements/river/client/client/ui/ExportPanel.java
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/ExportPanel.java Thu Jun 28 14:11:12 2018 +0200
+++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/ExportPanel.java Thu Jun 28 15:10:04 2018 +0200
@@ -8,22 +8,25 @@
package org.dive4elements.river.client.client.ui;
+import java.util.ArrayList;
import java.util.List;
import java.util.MissingResourceException;
-import com.google.gwt.core.client.GWT;
-
-import com.smartgwt.client.widgets.Canvas;
-import com.smartgwt.client.widgets.Label;
-import com.smartgwt.client.widgets.layout.HLayout;
-import com.smartgwt.client.widgets.layout.VLayout;
-
+import org.dive4elements.river.client.client.Config;
+import org.dive4elements.river.client.client.FLYSConstants;
import org.dive4elements.river.client.shared.model.Collection;
import org.dive4elements.river.client.shared.model.ExportMode;
import org.dive4elements.river.client.shared.model.Facet;
-import org.dive4elements.river.client.client.Config;
-import org.dive4elements.river.client.client.FLYSConstants;
+import com.google.gwt.core.client.GWT;
+import com.smartgwt.client.types.Alignment;
+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.FormItem;
+import com.smartgwt.client.widgets.form.fields.TextAreaItem;
+import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
/**
* A panel that displays an download icon for all available export modes of a
@@ -33,34 +36,82 @@
*/
public class ExportPanel extends VLayout {
- /** The message class that provides i18n strings.*/
+ private static final String LABEL_URL_SEPARATOR = ";";// always sync with server (InundationDurationState)
+ /** The message class that provides i18n strings. */
protected FLYSConstants MSG = GWT.create(FLYSConstants.class);
- protected Collection c;
+ protected Collection c;
protected List<ExportMode> exports;
- /** This layout will store a list of available export types.*/
+ /** This layout will store a list of available export types. */
protected HLayout container;
-
- public ExportPanel(Collection c, List<ExportMode> exports) {
+ public ExportPanel(final Collection c, final List<ExportMode> exports) {
super();
- this.c = c;
- this.exports = exports;
+ this.c = c;
+ this.exports = exports;
this.container = new HLayout();
- Label title = new Label(MSG.dataexport());
+ final Label title = new Label(this.MSG.dataexport());
title.setHeight(15);
title.setStyleName("fontNormalSmallUnderlined");
addMember(title);
addMember(createExportItems());
-
+ addMember(createVlayoutExportItems());
setHeight(45);
setMembersMargin(5);
}
+ private VLayout createVlayoutExportItems() {
+ final VLayout layout = new VLayout();
+ final DynamicForm form1 = new DynamicForm();
+ form1.setColWidths("10%");
+ form1.setWidth(400);
+ form1.setAlign(Alignment.LEFT);
+ final List<FormItem> items = new ArrayList<FormItem>();
+ for (final ExportMode mode : this.exports) {
+ final String name = mode.getName();
+ final List<Facet> facets = mode.getFacets();
+
+ for (int i = 0; i < facets.size(); i++) {
+ final Facet facet = facets.get(i);
+ final String facetName = facet.getName();
+
+ if (!facetName.equals("wms_url"))
+ continue;
+ if ("wms_url".equals(facetName))
+ items.add(createUrlLine(facet.getDescription(), i));
+ }
+ }
+ form1.setFields(items.toArray(new FormItem[items.size()]));
+ layout.addMember(form1);
+ return layout;
+ }
+
+ private FormItem createUrlLine(final String labelAndUrl, final int count) {
+
+ final String[] labelAndurlSplit = labelAndUrl.split(LABEL_URL_SEPARATOR);
+ if (labelAndurlSplit.length == 2) {
+
+ final TextAreaItem label = new TextAreaItem();
+ label.setTitle(labelAndurlSplit[0]);
+
+ label.setWrapTitle(true);
+ label.setTitleColSpan(3);
+ label.setColSpan(7);
+ label.setWidth(250);
+
+ label.setTitleAlign(Alignment.LEFT);
+
+ label.setValue(labelAndurlSplit[1]);
+ label.setCanEdit(false);
+
+ return label;
+ }
+ return null;
+ }
/**
* This method is used to create an item (created by createExportButton) for
@@ -69,84 +120,80 @@
* @return a horizontal list of buttons.
*/
protected HLayout createExportItems() {
- HLayout layout = new HLayout();
+ final HLayout layout = new HLayout();
- for (ExportMode mode: exports) {
- String name = mode.getName();
- List<Facet> facets = mode.getFacets();
+ for (final ExportMode mode : this.exports) {
+ final String name = mode.getName();
+ final List<Facet> facets = mode.getFacets();
- for (Facet facet: facets) {
- if (name.equals("fix_wq_curve_at_export")) {
+ for (final Facet facet : facets) {
+ final String facetName = facet.getName();
+
+ if (name.equals("fix_wq_curve_at_export"))
continue;
- }
+
String filename = name;
- if (name.equals("computed_dischargecurve_at_export")) {
+ if (name.equals("computed_dischargecurve_at_export"))
filename = "dischargecurve";
- }
- layout.addMember(createExportButton(
- name,
- facet.getName(),
- filename));
+
+ if ("wms_url".equals(facetName))
+ continue;
+
+ layout.addMember(createExportButton(name, facetName, filename));
}
}
return layout;
}
-
/**
* This method is used to create a button (with click handler) for a
* concrete export mode / type.
*
- * @param name The name of the export.
- * @param facet The name of the export type (e.g. CSV, WST).
+ * @param name
+ * The name of the export.
+ * @param facet
+ * The name of the export type (e.g. CSV, WST).
*
* @return an image with click handler.
*/
- protected Canvas createExportButton(
- String name,
- String facet,
- String filename
- ) {
- String url = getExportUrl(name, facet, filename);
+ protected Canvas createExportButton(final String name, final String facet, final String filename) {
+ String url = getExportUrl(name, facet, filename);
String imgUrl = GWT.getHostPageBaseURL();
if (facet.equals("pdf")) {
- imgUrl += MSG.downloadPDF();
+ imgUrl += this.MSG.downloadPDF();
+ } else if (facet.equals("at")) {
+ imgUrl += this.MSG.downloadAT();
+ } else if (facet.equals("wst")) {
+ imgUrl += this.MSG.downloadWST();
+ } else if (facet.equals("csv")) {
+ url += "&encoding=UTF-8";
+ imgUrl += this.MSG.downloadCSV();
+ } else {
+ imgUrl += this.MSG.imageSave();
}
- else if (facet.equals("at")) {
- imgUrl += MSG.downloadAT();
- }
- else if (facet.equals("wst")) {
- imgUrl += MSG.downloadWST();
- }
- else if (facet.equals("csv")) {
- url += "&encoding=windows-1252";
- imgUrl += MSG.downloadCSV();
- }
- else {
- imgUrl += MSG.imageSave();
- }
- ImgLink link = new ImgLink(imgUrl, url, 30, 30);
+ final ImgLink link = new ImgLink(imgUrl, url, 30, 30);
link.setTooltip(getTooltipText(name, facet));
return link;
}
-
/**
* Creates the URL used to trigger an export.
*
- * @param name The name of the export.
- * @param facet The name of the export type (e.g. CSV, WST).
+ * @param name
+ * The name of the export.
+ * @param facet
+ * The name of the export type (e.g. CSV, WST).
*
* @return the export URL.
*/
- protected String getExportUrl(String name, String facet, String filename) {
- Config config = Config.getInstance();
+ protected String getExportUrl(final String name, final String facet, final String filename) {
+ final Config config = Config.getInstance();
String url = GWT.getModuleBaseURL();
url += "export";
- url += "?uuid=" + c.identifier();
+ url += "?uuid=" + this.c.identifier();
url += "&name=" + filename;
url += "&mode=" + name;
url += "&type=" + facet;
@@ -156,20 +203,21 @@
return url;
}
-
/**
* Creates a text used as tooltip for a specific export and type.
*
- * @param name The name of the export.
- * @param facet The name of the export type (e.g. CSV, WST).
+ * @param name
+ * The name of the export.
+ * @param facet
+ * The name of the export type (e.g. CSV, WST).
*
* @return a tooltip text.
*/
- protected String getTooltipText(String name, String facet) {
+ protected String getTooltipText(final String name, final String facet) {
try {
- return MSG.getString(name) + " | " + MSG.getString(facet);
+ return this.MSG.getString(name) + " | " + this.MSG.getString(facet);
}
- catch (MissingResourceException mre) {
+ catch (final MissingResourceException mre) {
return name + " | " + facet;
}
}
More information about the Dive4Elements-commits
mailing list