Mercurial > dive4elements > river
diff flys-artifacts/ChangeLog @ 3318:dbe2f85bf160
merged flys-artifacts/2.8
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Fri, 28 Sep 2012 12:14:35 +0200 |
parents | 0f7abd95c6e2 |
children | ef3cb5421bf7 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-artifacts/ChangeLog Fri Sep 28 12:14:35 2012 +0200 @@ -0,0 +1,18551 @@ +2012-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StyledXYSeries.java, + src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java, + src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java, + src/main/java/de/intevation/flys/jfree/CollisionFreeXYTextAnnotation.java, + src/main/java/de/intevation/flys/artifacts/GaugeDischargeArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/SQRelation.java, + src/main/java/de/intevation/flys/artifacts/states/OutliersInput.java, + src/main/java/de/intevation/flys/artifacts/states/PeriodsSelect.java, + src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java, + src/main/java/de/intevation/flys/artifacts/model/FlowVelocityCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/WQKmsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/FixingsFilterBuilder.java, + src/main/java/de/intevation/flys/artifacts/model/RelativePointFacet.java, + src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WQKmsFactory.java, + src/main/java/de/intevation/flys/artifacts/model/MainValuesWFacet.java, + src/main/java/de/intevation/flys/artifacts/model/LocationProvider.java, + src/main/java/de/intevation/flys/artifacts/model/WKmsFactory.java, + src/main/java/de/intevation/flys/artifacts/model/WKmsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WQFacet.java: + Removed same package imports. + +2012-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Lowered log level. + +2012-07-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Allow manual loading of official lines in + longitudinal_discharge diagrams. + +2012-07-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Prevent nasty NPE (hidden by autobox). + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: + Suppress data points with values <= 0 because they kill JFreeChart's + log/log diagrams. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java: + Fixed more SQL syntax errors. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Generate more than one SQResult (To my big suprise it's possible). + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQFractionResult.java, + src/main/java/de/intevation/flys/artifacts/model/sq/SQCurveFacet.java. + src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: + Made more NPE bullet proof. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java: + Fixed problem with string operation precedence. + +2012-07-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: very basic official lines matching the current + artifact (for this it is wrongly placed in previous calc.-part, for + now. + +2012-07-13 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: + Create shapefile directory instead of shapefile 'file'. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/sq/SQFractionResult.java, + src/main/java/de/intevation/flys/artifacts/WMSFixpointsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSCatchmentArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSBuildingsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFloodplainArtifact.java: + Removed translation whitespace. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/sq/SQFractionResult.java: + Finally! SQResult is build and should be ready for display. :-) + +2012-07-13 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java, + src/main/java/de/intevation/flys/utils/GeometryUtils.java: + Fix and workaround NullPointerExceptions. + +2012-07-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/wsplgen/WSPLGENCallable.java, + src/main/java/de/intevation/flys/wsplgen/FacetCreator.java, + src/main/java/de/intevation/flys/wsplgen/JobObserver.java, + src/main/java/de/intevation/flys/wsplgen/ProblemObserver.java, + src/main/java/de/intevation/flys/wsplgen/Scheduler.java, + src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java, + src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java, + src/main/java/de/intevation/flys/artifacts/MapArtifact.java, + src/main/java/de/intevation/flys/utils/MapfileGenerator.java, + src/main/java/de/intevation/flys/exports/MapGenerator.java: + Organized and added missing imports. + +2012-07-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: Added new + functions to reproject an Envelope from one CoordinateReferenceSystem to + antoher. + + * src/main/java/de/intevation/flys/artifacts/WMSQPSArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSKmArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSHydrBoundaryArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFixpointsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFloodmapsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSHwsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSCatchmentArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java, + src/main/java/de/intevation/flys/artifacts/WMSHydrBoundaryPolyArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSBuildingsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSGaugeLocationArtifact.java, + src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSLineArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFloodplainArtifact.java: + The getExtent() method will now return the extent of the layer in the + coordinate reference system that is configured for the specific river. + +2012-07-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java, + src/main/java/de/intevation/flys/artifacts/model/WMSDBLayerFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WSPLGENLayerFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WSPLGENCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/WSPLGENReportFacet.java: + Moved to subpackage map. + + * src/main/java/de/intevation/flys/artifacts/model/map/WSPLGENLayerFacet.java, + src/main/java/de/intevation/flys/artifacts/model/map/WMSLayerFacet.java, + src/main/java/de/intevation/flys/artifacts/model/map/WSPLGENJob.java, + src/main/java/de/intevation/flys/artifacts/model/map/WMSDBLayerFacet.java, + src/main/java/de/intevation/flys/artifacts/model/map/WSPLGENCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/map/WSPLGENReportFacet.java: + Moved from upper package. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQOverviewFacet.java, + src/main/java/de/intevation/flys/exports/OutputHelper.java, + src/main/java/de/intevation/flys/exports/sq/SQOverviewGenerator.java: + Added missing vim lines. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQOverviewFacet.java, + src/main/java/de/intevation/flys/exports/OutputHelper.java: + Removed trailing whitespace. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQOverviewFacet.java, + src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Removed superfluous imports. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Only use first period of the time periods given by the UI. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQResult.java: + Added some more index checking. + +2012-07-13 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQOverviewFacet.java: + New. Facet for chart overview in sq relation. + + * src/main/java/de/intevation/flys/exports/sq/SQOverviewGenerator.java: + New. Generator for chart overview. This generator is not used jet. + Currently we generate the overview on client side by putting all charts in a + simple grid, cause the charts rendered by this generator are empty. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new Facet type. + + * src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: + Add facets for overview. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Avoid a NPE in legend entry aggregation. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Moved log output to avoid NPE. + + * doc/conf/artifacts/minfo.xml: + Added new output for chart overview. + +2012-07-13 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Refactored. Moved some functionality to FLYSContext and OutputHelper. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java: + Added 'getOutGenerator' to get a concrete generator. Moved from + FLYSArtifactCollection. + + * src/main/java/de/intevation/flys/exports/OutputHelper.java: + New. Provides the 'doOut' functionality for FYLSArtifactCollection. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/Measurements.java: + Handle the error case of accessing wrong indexed SQ relation + more smoothly. + +2012-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/Measurement.java: + Added access to the data of GSIEBSATZ and SSIEBUNG. + +2012-07-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java: + Added the left joins to the GSIEBSATZ and SSIEBUNG tables. + +2012-07-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java: + Do not store null values from database. + +2012-07-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/Measurements.java: + New. Container for measurements. Helps to extract the S/Q fractions. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Now uses the measurements container. + + * src/main/java/de/intevation/flys/artifacts/model/sq/Measurement.java: + Added convenience methods to extract the different fractions. + DONE: Q, S_SS, S_SF + TODO: S_BL_S, S_BL_FG, S_BL_CG, S_BL + + * src/main/java/de/intevation/flys/artifacts/model/SQOverview.java, + src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java: + Relax existence of SIEBSATZID. + We have to use a left join during data extraction anyway. + We force the existence of Q because we cannot do the fitting if + we don't have them. + +2012-07-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/Measurement.java: + New. Access to the data from the SedDB. + + * src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java: + Load measurements from SedDB. + + * src/main/java/de/intevation/flys/artifacts/model/SQOverview.java: + Force NOT NULL for discharge values, too. + + * src/main/java/de/intevation/flys/artifacts/model/SQOverviewFactory.java: + Indentation fix. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Iterate over all given periods. + +2012-07-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/SQKMChartService.java: + Fixed wrong logger class. + +2012-07-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + src/main/java/de/intevation/flys/artifacts/model/SQOverview.java: + Filter out the meassures which don't have a related 'Siebsatz'. + + doc/conf/cache.xml: Added forgotten cache for sq-overview. + + src/main/java/de/intevation/flys/artifacts/model/SQOverviewFactory.java: + Added vim line. + +2012-07-12 Christian Lins <christian.lins@intevation.de> + + * doc/conf/default-themes.xml, + doc/conf/virtual-themes.xml, + src/main/java/de/intevation/flys/utils/ThemeUtil.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java, + src/main/java/de/intevation/flys/themes/ThemeAccess.java: + Add showpointlabel style attribute. Refactor some styles to make use of + general attributes in the virtual themes. + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java, + src/main/java/de/intevation/flys/exports/fixings/FixLongitudinalSectionGenerator.java: + Suppress or fix some warnings. + +2012-07-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml: Fix class name. + +2012-07-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/ManualPointsArtifact.java, + src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java, + src/main/java/de/intevation/flys/utils/FLYSUtils.java, + src/main/java/de/intevation/flys/exports/ChartExportHelper.java, + src/main/java/de/intevation/flys/exports/WstWriter.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java, + src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Various cosmetic doc fixes. + +2012-07-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Make official lines available in dc for + manual loading in longitudinal sections. + +2012-07-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/Sieve.java: + Simulates a sieve to separate the differen fractions from each other. + +2012-07-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DateRange.java, + src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + Removed trailing whitespace. + +2012-07-11 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DateRange.java, + src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java, + src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Delta W(t) chart subtitle now with real values and correct i18n. + + +2012-07-11 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Re-add HYK rendering code again to CrossSectionGenerator (fix for #712). + + +2012-07-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/SQKMChartService.java, + src/main/java/de/intevation/flys/artifacts/model/SQOverview.java: + Removed superfluous imports. + +2012-07-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/SQOverview.java: + Made km separating of dates epsilon tolerant and avoid empty date lists. + +2012-07-10 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/SQKMChartService.java: + New. Service that generates an overview chart for measuring points. + + * src/main/java/de/intevation/flys/artifacts/model/SQOverview.java: + New. Instance of measuring points overview data. + + * src/main/java/de/intevation/flys/artifacts/model/SQOverviewFactory.java: + New. Foctory for overview data objects. + + * doc/conf/conf.xml: + Added new service to config. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings. + +2012-07-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix for issue694. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Also resolve edge cases (last/first cross section km). + +2012-07-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial fix for issue694 (Heightmarks snap to nearest cross section + line). + + * src/main/java/de/intevation/flys/artifacts/WaterLineArtifact.java: + Extended signature of getWaterLines to allow behaviour of only + delivering data if it snaps to the km (is closest). + + * src/main/java/de/intevation/flys/artifacts/ManualPointsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Documentation, updated signature of getWaterLines(). + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Remember if Heightmarks are displayed, if so deliver data + only if cross-section is closest (snap). + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + Make next and previous km of cross-sections available as data. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Provide next and previous cross-section km via blackboard, adjusted + call to getWaterLines. + +2012-07-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Removed trailing whitespace. + +2012-07-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java, + src/main/java/de/intevation/flys/exports/ChartExportHelper.java, + src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/MiddleBedHeightGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/OutGenerator.java, + src/main/java/de/intevation/flys/exports/FlowVelocityGenerator.java: + Fix various documentation issues. + +2012-07-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionFactory.java, + src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java, + src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/transitions/DefaultTransition.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesExporter.java, + src/main/java/de/intevation/flys/exports/ChartHelper.java, + src/main/java/de/intevation/flys/exports/MiddleBedHeightGenerator.java, + src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java, + src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Fix various issues in the hard-to-find documentation. + +2012-07-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * pom.xml: Configure javadoc mojo to include doc for protected/private. + +2012-07-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/themes2html.xsl: Create a list of direct sub themes + of a theme. + +2012-07-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/datacage-config-manual/Makefile: New, added Makefile. + +2012-07-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation2.java, + src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java, + src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/jfree/HasLabel.java: + Cosmetics, docs. + +2012-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java: + Fixed XPath typo. + +2012-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Removed dynamic XPaths to pervent potential XPath injections. + +2012-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/themes2html.xsl: New. Transformation to get a better + overview of themes.xml. Usage: + + $ xsltproc --path doc/conf \ + contrib/themes2html.xsl \ + doc/conf/themes.xml \ + > themes.xhtml + + Use browser to view the resulting file. + +2012-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/second-themes.xml: Name the second themegroup 'second' + instead of 'default' to avoid clashes with the real 'default' + themegroup. + +2012-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/default-themes.xml, + doc/conf/virtual-themes.xml, + doc/conf/themes.xml, + doc/conf/second-themes.xml: + Added xml processing instruction. + +2012-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/InvLog.java, + src/main/java/de/intevation/flys/artifacts/access/Access.java, + src/main/java/de/intevation/flys/artifacts/access/BedHeightAccess.java, + src/main/java/de/intevation/flys/artifacts/access/FlowVelocityAccess.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorA.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorB.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorC.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorD.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorE.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorF.java, + src/main/java/de/intevation/flys/exports/ChartArea.java, + src/main/java/de/intevation/flys/jfree/StyledValueMarker.java, + src/main/java/de/intevation/flys/jfree/StyledDomainMarker.java: + Added vim lines. + +2012-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java, + src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java, + src/main/java/de/intevation/flys/artifacts/model/FlowVelocityCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightCalculation.java, + src/main/java/de/intevation/flys/artifacts/access/BedHeightAccess.java, + src/main/java/de/intevation/flys/artifacts/access/FlowVelocityAccess.java: + Replaced tabs with four spaces each. + +2012-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartArea.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Removed superfluous imports. + +2012-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StyledDomainMarker.java, + src/main/java/de/intevation/flys/jfree/StyledValueMarker.java, + src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java, + src/main/java/de/intevation/flys/utils/ThemeUtil.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Removed trailing whitespace. + +2012-07-06 Christian Lins <christian.lins@intevation.de> + + * doc/conf/*-themes.xml, + src/main/java/de/intevation/flys/utils/ThemeUtil.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java, + src/main/java/de/intevation/flys/jfree/StyledValueMarker.java, + src/main/java/de/intevation/flys/jfree/StyledDomainMarker.java, + src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Add styles for W(t) domain markers. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java: + Remove false @override. + +2012-07-06 Christian Lins <christian.lins@intevation.de> + + * doc/conf/themes.xml, + doc/conf/second-themes.xml, + doc/conf/default-themes.xml: + Add missing themes for fixation charts. + +2012-07-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix issue705 (names for mainvalues in export). + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Documentation and use NamedMainValues irrespective of WQ-type ( + single vs range). + +2012-07-06 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + W(t) chart label rotation now working (see #684) + +2012-07-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Removed solved TODO. + +2012-07-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix issue710 (crashing diagrams with only one point). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Expand the range/bounds where its added. + +2012-07-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java + (expandPointRange): Fix weird code with help of new ChartHelper + method. + +2012-07-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartHelper.java + (expandBounds): New, expand bounds by given percentage. + +2012-07-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/Distance.java: + New distance helper module. + +2012-07-06 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Remove debugging code. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Remove HYK references and code. + +2012-07-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/datacage-config-manual/datacage-config-manual.tex: + Changed inclusions to include new content file. + + * doc/datacage-config-manual/content.tex: Content from doc/datacage.txt, + xml formatted. + +2012-07-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/datacage-config-manual/datacage-config-manual.tex, + doc/datacage-config-manual/README, + doc/datacage-config-manual/title.tex: + Added stub of tex-version of datacage config documentation. + +2012-07-05 Christian Lins <christian.lins@intevation.de> + + * doc/*-themes.xml: + Add textorientation field. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartArea.java: + Move annotation related code to base class ChartGenerator. + +2012-07-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Prevent casting exception. + +2012-07-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + issue487 (wrong area calculation). + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Fix area calculation. + +2012-07-04 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Moved theme groups to own XML files to improve the + structure. + + * doc/conf/second-themes.xml, + doc/conf/default-themes.xml, + doc/conf/virtual-themes.xml: New XML files for themes / theme groups; each + theme group in one single file. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Improved logging; print number of theme groups and themes in it as INFO. + +2012-07-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + Only show labels if enabled in theme. Commented (failed) trials to get the + text rotation right. + +2012-07-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + Fix certain AIOOBs that were caused by the fact that QWDs can end up in two + different series. + +2012-07-03 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Implemented mergeRanges to combine y bounds in timeseries charts. + +2012-07-03 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveInfoGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtInfoGenerator.java: + New. Added chart info generator for WQ and delta W(t) chart. + + * doc/conf/conf.xml: + Added info generators to config. + +2012-07-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + Very basic, unstyled, always-on labels of points in DeltaWt-Diagrams. + +2012-07-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Replaced Arrays.asList(new String[] { "a", "b" }).contains("a") code. + +2012-07-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/themes.xml, + src/main/java/de/intevation/flys/artifacts/model/FlowVelocityCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightCalculation.java, + src/main/java/de/intevation/flys/artifacts/access/BedHeightAccess.java, + src/main/java/de/intevation/flys/artifacts/access/FlowVelocityAccess.java, + src/main/java/de/intevation/flys/artifacts/states/FlowVelocityState.java, + src/main/java/de/intevation/flys/artifacts/states/MiddleBedHeight.java: + Removed trailing whitespace. + +2012-07-03 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added missing themes for middle bed height curves. + +2012-07-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/access/BedHeightAccess.java, + src/main/java/de/intevation/flys/artifacts/access/FlowVelocityAccess.java: + New Access objects to access relevant information of Artifacts specific + to bed heights and flow velocity calculations. + + * src/main/java/de/intevation/flys/artifacts/model/FlowVelocityCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightCalculation.java, + src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java, + src/main/java/de/intevation/flys/artifacts/states/FlowVelocityState.java, + src/main/java/de/intevation/flys/artifacts/states/MiddleBedHeight.java: + Use *Access objects to get required information from Artifact. + + * src/main/java/de/intevation/flys/artifacts/MINFOArtifact.java: Moved + methods to access specific information for calculations to *Access + objects. + +2012-07-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix issue695 (labeling of waterlines). + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java + (doCrossSectionWaterLineOut): Handle labels more individually. + + * src/main/java/de/intevation/flys/jfree/XYStyle.java + (applyShowLineLabel): Tell renderer that there is something to do in case + any label is switched on. + +2012-07-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java, + src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/math/DifferenceCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/DifferenceCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java, + src/main/java/de/intevation/flys/artifacts/ManualPointsArtifact.java, + src/main/java/de/intevation/flys/artifacts/geom/VectorUtils.java, + src/main/java/de/intevation/flys/artifacts/geom/Lines.java, + src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java, + src/main/java/de/intevation/flys/artifacts/WaterLineArtifact.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationExporter.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/themes/ThemeAccess.java, + src/main/java/de/intevation/flys/jfree/StyledAreaSeriesCollection.java: + Fixed various bugs (package declarations, moved classes to correct + places). + +2012-07-03 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Removed line properties from fixation point themes + and added missing point properties. + +2012-07-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ManualPointsFacet.java, + src/main/java/de/intevation/flys/artifacts/ManualPointsArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Cosmetics. + +2012-07-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + issue654. + + * src/main/java/de/intevation/flys/exports/LegendProcessor.java: + Do not include type in hash for legend item. + +2012-07-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/ParametersExporter.java: + Generate CSV for facet 'fix_parameters'. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Be more eloquent on which kind of facet the exporter does not + like. + +2012-07-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: + Made it more symmetrical to FixationCompute. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Removed fake result stuff. Fetch parameters from SQRelationAccess. + +2012-07-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixChartGenerator.java: + Remove some evidence that the authors of this software + do not know Java at all. + +2012-07-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Part of flys/issue687 + + * src/main/java/de/intevation/flys/exports/ATWriter.java: + New. Samples fitting function to AT files. + + !!! Untested and expected to be slightly broken. !!! + + * src/main/java/de/intevation/flys/exports/fixings/FixATWriter.java: + Made some formatting things public to be reusable. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings for AT headers. + +2012-07-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifact-db.xml, + doc/conf/cache.xml, + doc/conf/meta-data.xml: Removed trailing whitespace. + +2012-07-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Removed embedded class IdGenerator. + + * src/main/java/de/intevation/flys/utils/IdGenerator.java: + New. Re-added the id generator as top level class. + +2012-06-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Added parameter exporter for fixings analysis. + Part of flys/issue689 + + * src/main/java/de/intevation/flys/exports/fixings/ParametersExporter.java: + New. Exports the contents of the parameters of the fix analysis. + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Added visitor interface to visit all rows of the parameters. + + * doc/conf/artifacts/fixanalysis.xml: Added new facet for + parameter export. + + * doc/conf/conf.xml: Register the new parameter exporter. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added facet type. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Fixed indentation. + Removed some programming oddities. + Create facet for parameter export. + + * src/main/java/de/intevation/flys/exports/fixings/DeltaWtExporter.java: + Removed code which is already contained in the base class. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Cleaned up code. + +2012-06-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/DeltaWtExporter.java: + Deleted + + * src/main/java/de/intevation/flys/exports/fixings/DeltaWtExporter.java: + Re-added here + + * doc/conf/conf.xml: Adjusted package name of DeltaWtExporter. + +2012-06-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveInfoGenerator.java: + New. Added chart info companion for FixDerivedCurveGenerator. + + * doc/conf/conf.xml: Added to configuration. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java: + Code clean up. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixFunction.java: + Simplified. Not Serializable any more because its only a transient object. + + * src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java: + Clean up. Simplified. Removed dependency from Function2DAdapter because + we are doing our own sampling. + + * src/main/java/de/intevation/flys/exports/fixings/FixLongitudinalSectionInfoGenerator.java: + Removed empty last line. + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Small cosmetics. + + * src/main/java/de/intevation/flys/exports/fixings/FixLongitudinalSectionGenerator.java: + Do not notify listeners when add data series. + + * src/main/java/de/intevation/flys/jfree/Function2DAdapter.java: + Removed. Obsolete. + +2012-06-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Removed superfluous import. + +2012-06-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixLongitudinalSectionInfoGenerator.java: + New. Added chart info companion for FixLongitudinalSectionGenerator. + + * doc/conf/conf.xml: Added to configuration. + +2012-06-29 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Unfinished work on generalizing annotations in ChartGenerators. + +2012-06-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java: + Fixed parameter name. + + * src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties: + Fixed typo. + +2012-06-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/access/SQRelationAccess.java: + Finished the access to the S/Q relation stuff. + + * doc/conf/artifacts/minfo.xml: + State "state.minfo.sq.periods" returns the value as string + symmetrical to state "state.fix.analysisperiods". + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DateRange.java: + Deleted. + + * src/main/java/de/intevation/flys/artifacts/model/DateRange.java: + Re-added here because its of use not only in the fix analysis + but also in the S/Q relation. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisPeriodsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/AnalysisPeriod.java, + src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java, + src/main/java/de/intevation/flys/artifacts/access/Access.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + Adjusted the imports for the moved DateRange. + +2012-06-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/access/SQRelationAccess.java: + New. Artifact access for the S/Q relation. TODO: Add more parameters. + + * src/main/java/de/intevation/flys/artifacts/access/Access.java: + Remove trailing whitespace. + + * src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java: + Added more debug output. + +2012-06-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/access/Access.java: New. + Base class for *Access of FLYSArtifacts. + + * src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java: + Extends Access now. + +2012-06-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java: + Removed dead code. + +2012-06-28 Christian Lins <christian.lins@intevation.de> + + * doc/conf/themes.xml, + src/main/java/de/intevation/flys/utils/ThemeUtil.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/themes/ThemeAccess.java: + Set text orientation to horizontal for points in Fixation W/Q curve. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Fix overlapping indices of facets. + +2012-06-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java: + Added method to figure out which discharge sectors of the + the analysis periods really contains data. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Only emit analysis period / discharge sectors which really contain data. + +2012-06-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Moved FixationArtifactAccess into own package access because there are + more *Access to come e.g. SQRelationAccess. + + TODO: Refactor the code for WINFO to use this *Access pattern. This + results in much cleaner, better scaling and better understandable code. + + * src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: Deleted. + * src/main/java/de/intevation/flys/artifacts/access/FixationArtifactAccess.java: New. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalDeviationFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalAnalysisFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalReferenceFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisPeriodsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixDeviationFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixOutlierFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/access, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Adjusted imports. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + Removed superfluous imports. + +2012-06-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + If fitting fails for tolerance of 1e-10 increase it incremental + by factor of 10 to 1e-3 and only bail out if it fails on this level. + +2012-06-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Exp.java: + Fixed da/dQ but the fitting still does not work for the function. :-/ + +2012-06-27 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Show only dates as point labels. + +2012-06-27 Christian Lins <christian.lins@intevation.de> + + * doc/conf/conf.xml: + Fix typo in generator class for fix_longitudinal_section_curve + +2012-06-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Create and handle new manual line facets. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Added new constructor to play nice with upcoming facet-type. + + * src/main/java/de/intevation/flys/artifacts/ManualPointsArtifact.java: + Added functionality to serve as WaterLineFacet (calculate water + line against cross section profile). + + * src/main/java/de/intevation/flys/artifacts/states/ManualPointsSingleState.java: + Extended to generate cross section water line facets, too. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Handle new Facet Type. + +2012-06-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + FacetType for upcoming cross_section.manualline facet. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added Facet Type and IS-helper dor upcoming facet. + +2012-06-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Configure Themes and compatibility of upcoming + cross_section.manualline facet. + + * doc/conf/artifacts/winfo.xml, + doc/conf/artifacts/manualpoint.xml: + Add upcoming facet to compatibility lists. + + * doc/conf/themes.xml: Register theme for upcoming facet. + +2012-06-27 Christian Lins <christian.lins@intevation.de> + + * doc/conf/conf.xml: + Add output generator for 'fix_derived_curve' + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Add some ugly formatted point labels. + +2012-06-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Moved describe() and the generating of output into FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + This the base class so it should contain common code! + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/FixationArtifact.java, + src/main/java/de/intevation/flys/artifacts/ChartArtifact.java, + src/main/java/de/intevation/flys/artifacts/MINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/MapArtifact.java: + Moved common code into base class. + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Removed superfluous imports. + +2012-06-27 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Use JFreeUtil.sampleFunction2D() to sample a StyledXYSeries. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixDeviationFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixOutlierFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java: + Add ctor with addtional custom facet index parameter. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Introduce IdGenerator to generate unique facets IDs within an output, + so themes can now be applied properly to points and lines. + +2012-06-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeParser.java: + Removed some expensive XPath usage. Some quick profiling + showed that up to 7% of our code (excluding Hibernate, H2, Restlet, etc.) + were spend in these XPaths. A lot of time + + !!! Please, please, dear fellow programmers do not use XPath for fetching + !!! trivial things that are easily accessible via DOM, too! + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/Outlier.java, + src/main/java/de/intevation/flys/artifacts/model/sq/Fitting.java: + Refactored to better fit the data types of SQResult. + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/LegendProcessor.java: + Removed trailing whitespace. + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQ.java: + Added method to validate point. + + * src/main/java/de/intevation/flys/artifacts/model/sq/Outlier.java: + Added method to callback to re-initialize the function to fit. + + * src/main/java/de/intevation/flys/artifacts/model/sq/Fitting.java: + New. Shell for fitting of one SQ fraction. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Removed superfluous import. + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/Outlier.java: + New. Specialized outlier test for the S/Q relation. + Outliers are accepted in multiples of the standard deviation. + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Only generate outlier facet when we done the prepocessing. + +2012-06-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Enable legend aggregation in time series charts. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Call super.aggregateLegendEntries. + +2012-06-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Legend Item Aggregation refactoring. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java + (aggregateLegendEntries): Moved up from XYChartGenerator to ChartGenerator. + +2012-06-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Legend Item Aggregation refactoring. + + * src/main/java/de/intevation/flys/exports/LegendProcessor.java: + New (extracted from XYChartGenerator). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Extracted legend item aggregation to LegendProcessor. + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Removed trailing whitespace. + +2012-06-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Minor polish for LegendItem-Aggregation. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Define and use static SPACE Shape. + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/InvLogLinear.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvQuad.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvPow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvSQPow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvLogLinear.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Quad.java: + Completed inverse stubs. + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/FunctionFactory.java: + Register the singletons instead of new objects. + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Pow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvQuad.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/SQPow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/LogLinear.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvPow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvSQPow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvLogLinear.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Quad.java: + Link the functions to there inverses via getInverse(). + +2012-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Implemenation of the inverses of the fitting functions. Needed + for the AT export of the calculated curves. + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Function.java: + Added abstract method getInverse() to get the inverse of the + function. + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Pow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/SQPow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Linear.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/LogLinear.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Log.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Quad.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Exp.java: + Implements the getInverse() method. + + * src/main/java/de/intevation/flys/artifacts/math/fitting/InvLog.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvLogLinear.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvQuad.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvPow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvExp.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvSQPow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/InvLinear.java: + Implements the inverses of the function above. Some are still + stubs. + +2012-06-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix issue663 ("step" curves for Q). + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java + (addStepPointsKmQ): New, add "step" points for series. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Use new StyledSeriesBuilder function. + +2012-06-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Fix LegendAggregation; prevent single aggregated legend item to + overflow by splitting it into many, but iconless legenditems. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Fixed typo in I18N key. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Finished I18N. + + * src/main/java/de/intevation/flys/artifacts/services/QWSeriesCollection.java: + Accept callback to label legend items. + + * src/main/java/de/intevation/flys/jfree/ShapeRenderer.java: Added interface + LabelGenerator to create labels for entries. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added strings. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalReferenceFacet.java: + Removed trailing whitespace. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalDeviationFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalAnalysisFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalReferenceFacet.java, + src/main/java/de/intevation/flys/exports/fixings/FixLongitudinalSectionGenerator.java: + Removed superfluous imports. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Uses I18N now. + + * src/main/java/de/intevation/flys/artifacts/services/QWSeriesCollection.java: + Added convenience constructor for creating date formatters with strings. + + * src/main/java/de/intevation/flys/artifacts/resources/Resources.java: + Added variadic method format(). + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added strings. + +2012-06-25 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixLongitudinalSectionGenerator.java: + New. Generator for longitudinal sections in fix analysis. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalDeviationFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalAnalysisFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixLongitudinalReferenceFacet.java: + New. Facets for longitudinal sections chart in fix analysis. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new facet types. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Add facets for new chart. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Fixed NPE. + + * doc/conf/artifacts/fixanalysis.xml: + Added facets to config. + + * doc/conf/themes.xml: + Added new themes. + + * doc/conf/conf.xml: + Added new chart generator. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings. + +2012-06-25 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Look for the attribut "outline" to render shape outlines in charts. + + * src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + Add the "outline" attribute. + +2012-06-25 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Do not add entries ending with " " to legend. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Prevent that the plot becomes to small if only one point is drawn. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Added debug output about the concrete coeffs found by the fitting. + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Log.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/LogLinear.java: + Re-checked the partial deviations to the coeffs. Write the formulas + more human readable. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/ShapeRenderer.java: If a label collides + with a other labels try to draw it on the other side of the point. + This results in more labeled points which is useful because you cannot zoom + in for details in the fixings km chart. + + * src/main/java/de/intevation/flys/artifacts/services/QWSeriesCollection.java: + Paint measured points blue and interpolated green. + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Set background color to white. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Interpolated and measured values where switched. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Label the points in diagram and show if they are interpolated or not. + + * src/main/java/de/intevation/flys/artifacts/services/QWSeriesCollection.java: + New. Extended XYSeriesCollection to cope with QWs + + * src/main/java/de/intevation/flys/utils/Formatter.java: Added formatters + to be fetched only over CallMeta. CallContext are not present in services. + + * src/main/java/de/intevation/flys/java2d/ShapeUtils.java: New. Some code + to handle Shapes. + + * src/main/java/de/intevation/flys/jfree/ShapeRenderer.java: New. Shape + renderer. This is a simplified version of the shape renderer + from fixings analysis in desktop FLYS. + +2012-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Re-added accidentially removed code. + +2012-06-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/jfree/StyledXYSeries.java: + Removed trailing whitespace. + +2012-06-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Removed TODOs about I18N + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added strings for fixing analysis. + +2012-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/KMIndex.java: + OpenJDK javac 1.6.0_24 seems to be more picky about + correct usage of generics. + +2012-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/add-i18n-numbers.py: New. Script to prefix + the values of property files with a small number to + make the keys identifiable even through the UI. + + Apply in the same manner as contrib/check-i18n-properties.py + +2012-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/resources/messages_de.properties, + src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties: + Repaired inconsistencies. + +2012-06-24 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/themes/ThemeFactory.java, + src/main/java/de/intevation/flys/jfree/XYStyle.java: + Add debug logs. + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java, + src/main/java/de/intevation/flys/jfree/StyledXYSeries.java: + Draw the W/Q function as StyledXYSeries. + +2012-06-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Re-enable legend entry aggregation, take the threshold from + settings. + +2012-06-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartSettings.java: + Parse and set legend aggregation value. + +2012-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java, + src/main/java/de/intevation/flys/artifacts/model/GaugeFinderFactory.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java: + Removed trailing whitespace. + +2012-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Added bug output when creating Q sector markers. + + * src/main/java/de/intevation/flys/artifacts/model/GaugeRange.java: + Added toString() method. + +2012-06-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Set the aggregation threshold value. + +2012-06-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java, + src/main/java/de/intevation/flys/collections/OutputParser.java: + Cosmetics, doc. + +2012-06-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/WstWriter.java: + Cosmetics. + +2012-06-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Draw domain markers for borders of Q sectors. There is some kind of glitch + in in the Q sector classifaction code or the db data is strange. + + Because of the common code basis this affects the fixings calculations, too. :-( + +2012-06-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Calculate the standard deviation of the Q sector delta Ws, too. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/AnalysisPeriod.java: + Store the standard deviation of the Q sector delta Ws, too. + Indexed 0..3; NaN means the std dev for this sector is not existing. + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/GaugeRange.java: + added method getSectorBorder(int). With this method you can figure + the three discharge sector borders. Returns NaN if border is + not there. Usage: + + GaugeFinderFactory ggf = GaugeFinderFactory.getInstance(); + GaugeFinder gf = ggf.getGaugeFinder("Elbe"); + if (gf == null) { /* FAIL */ } + GaugeRange gr = gf.find(km); // km is the km where you are. + if (gr == null) { /* FAIL */ } + + double m0 = gr.getSectorBorder(0); // Draw as marker if not NaN + double m1 = gr.getSectorBorder(1); // Draw as marker if not NaN + double m2 = gr.getSectorBorder(2); // Draw as marker if not NaN + + Labels should be: + '(MNQ+MQ)/2' for m0 + '(MQ+MHQ)/2' for m1 + 'HQ5' for m2 + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/GaugeFinderFactory.java: + New. Cache access to per river gauge finders. This very useful + if you want to draw the discharge sectors of river at a given + km into a diagram. + + * doc/conf/cache.xml: Added cache 'gauge-finders'. + + * src/main/java/de/intevation/flys/artifacts/model/GaugeFinder.java: + Added find(double km) method to find GaugeRange by km. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Uses the instance of the GaugeFinderFactory to access the + gauge ranges. + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java: + Simplified code. + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/GaugeFinder.java: + New. Moved out of FixingsOverview. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Moved GaugeFinder into top level class. + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/GaugeRange.java: + New. Moved out of FixingsOverview. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Moved GaugeRange into top level class. + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Prevent some NPEs. + !!! This is not a fix for the real problem !!! + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixDeviationFacet.java, + src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + Removed superfluous imports. + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Range.java: + New. Moved out of FixingsOverview. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Moved Range into top level class. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/FixingsFilterBuilder.java, + src/main/java/de/intevation/flys/artifacts/services/FixingsOverviewService.java: + Adjusted imports. + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Fixed problem with select the wrong meta data (date, descriptions, etc.) + for a data column. + +2012-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsFilterBuilder.java: + Fixed stupid i/j switch bug. + +2012-06-21 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Updated i18n. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n string for delta W(t) chart. + +2012-06-21 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Added attribution for single series styling. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Skip legend items for interpolated point series. + + * src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + Split analysis and reference points into two chart series. Added attribute + for interpolated points for different styling. + + * src/main/java/de/intevation/flys/jfree/Style.java: + Added getter for renderer. + + * src/main/java/de/intevation/flys/jfree/XYStyle.java: + Implemented getter for renderer. + +2012-06-21 Christian Lins <christian.lins@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Split fix_sector_average_wq in four facet types, one for each class (_0, _1, ..) + + * doc/conf/themes.xml: + Update themes for WQ curve + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Fix for small issue with sector average points + +2012-06-21 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Adapt doAverageSectorOut() to reflect changes in Facet. + +2012-06-20 Raimund Renkert <raimund.renkert@intevation.de> + + Added delta W(t) chart in fix analysis. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added facet types for deta W(t) chart. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java: + Changed facet index to determine the sector index and the analysis period + index. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Calculate a facet index including the sector index and the analysis period + index. + Added new facet for delta W(t) chart. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixDeviationFacet.java: + New. Facet to display the standard deviation in delta W(t) chart. + + * src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java: + New. Generator for the delta W(t) chart. + + * doc/conf/artifacts/fixanalysis.xml: + Updated facets in outputmodes. + + * doc/conf/conf.xml: + Added output generator to config. + +2012-06-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + New methods to add domain and value axis markers to the plot. + +2012-06-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/DeltaWtExporter.java: + Added reference events to CSV export. + +2012-06-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java: + Changed data type from QW[] to QWD[] to have delta Ws in reference events. + +2012-06-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + Moved function instantiation to alway have a valid function instance. + +2012-06-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Fixed binary search. + +2012-06-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Bring binarySearch with epsilon more to source of binarySearch of Collections. + Still not working properly. Why? + +2012-06-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Avoid problems with corrected Ws in cross-sections; hacky solution, + issue680. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java + (waterLineC): New, get corrected W. + + * src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java: + Create C-facet with other index. + +2012-06-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Cosmetics, doc. + +2012-06-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Cosmetics, doc. + +2012-06-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Now respects the selected events and reference period correctly. + + * src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: + referenceStart and referenceEnd are now melted into referencePeriod. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Add a new filter IdsFilter which is more efficent to check than a + OrFilter with a list of IdFilters inside. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsFilterBuilder.java: + Expose the new IdsFilter to the XML representation in form of + <columns cids="<list of whitespace separated ids"/> + +2012-06-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: + Fixed broken naming of chart curves. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Renamed facets for SQ + relation chart curves. + +2012-06-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: + Create a compound index value for SQOutlierFacets. This index is based + on the index of the result object (to get the correct data) and the + iteration of the outliers. This compound index is used to make + SQOutlierFacets unique to FLYSCollection's DESCRIBE document. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQOutlierFacet.java: + Parse the index of the result object and the iteration number from index + property. + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: + Added some more debug output. + +2012-06-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Create only SQ objects with values > 0. Otherwise JFreeChart will break + during chart creation (values for logarithmic axes have to be > 0). + +2012-06-20 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Adjusted the color of SQ Facets (lines and points) + as shown in examples. + +2012-06-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: + Create new Facets with proper i18n label. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for facet + names. + +2012-06-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorA.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorB.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorC.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorD.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorE.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGeneratorF.java: + New concrete chart generators. Each fraction of the SQ relation + calculation has its own generator now. This is because they all have + different chart titles and labels. + + * doc/conf/conf.xml: Let SQ relation charts use more concrete generators. + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: + Implemented getDefaultXAxisLabel() getDefaultYAxisLabel(). + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for chart + titles and axes labels. + +2012-06-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix issue681 (wrong vertical lines in duration curve q-mainvalues on + second y-axis). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Fix vertical line if on second y-axis. + +2012-06-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java: + Restrict q-filter facet to the differences case. + +2012-06-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/waterlevel.xml: Add Q-facets to compatibility list. + + * src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java: + Add Q-facets to filter facet list. + +2012-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/QW.java, + src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Removed trailing whitespace. + +2012-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/JFreeUtil.java: Directly + sample "our" Function objects instead of JFreeChart Function2Ds. + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: + Removed JFreeChart Function2D wrapper and directly use our Function + objects. + +2012-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Removed superfluous imports. + +2012-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + Calculate the standard deviation of the delta Ws of the referencen points, too. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Store the standard deviation of delta Ws of reference points into + a parameters column "std-dev". + +2012-06-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/jfree/JFreeUtil.java: New function to + sample a Function2D. This method is used, because JFreeChart's + DataUtilities.sampleFunction2D() returns an instance of XYSeries but we + need StyledXYSeries. + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: Added a + method to retrieve parameter values for a list of parameter names. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Create a fake Parameters object for the SQ curve. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQFractionResult.java: + Added getMinQ() and getMaxQ() to determine the Q range. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQFunction.java: New + model class that stores a Function and a min and max Q value. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQCurveFacet.java: + Return a SQFunction instance based on the parameters and Q range of the + SQFractionResult. + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: Use + JFreeUtil's new function sampleFunction2D to create a StyledXYSeries for + the SQ curve. + +2012-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Store into QWs if they are interpolated. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/QW.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/QWD.java: + Stores boolean if the values are interpolated. + +2012-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/SQPow.java: + Name derivative S'(Q). + +2012-06-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Add Q-Facets to compatibility list of dis-c. + +2012-06-19 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added theme mappings for sq relation fractions b - f. + +2012-06-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQResult.java: Renamed + the former SQResult to SQFractionResult. This class is now used to store a + set of SQFractionResults for each SQ calculation. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQFractionResult.java: + Former SQResult. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Create new fake SQFractionResults for fraction A, B and C (used for + testing). + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQOutlierFacet.java, + src/main/java/de/intevation/flys/artifacts/model/sq/SQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/sq/SQMeasurementFacet.java: + Added the 'fractionIdx' property to get to know which fraction should be + represented. + + * src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: Create + Facets for each SQResult and SQFractionResult. + +2012-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/SQPow.java: + New. S(Q) = a*Q^b + + * src/main/java/de/intevation/flys/artifacts/math/fitting/FunctionFactory.java: + Registered new function. + +2012-06-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQMeasurementFacet.java: + Implemented getData(). It returns the SQ[] of + SQResult.getMeasurements(). + + * src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: Create + proper facet for sq measurements and corrected constructor call of + SQOutlierFacet. + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: + Generalized doSQMeasurementsOut() and doSQOutliersOut() to one single + method doSQOut() which is able to handle SQ[] data. + +2012-06-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Changed the + default behavior: line labels are not visible if no config option is set! + +2012-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Load config of rest server and floodmap over + external entities, too. + + * doc/conf/floodmap.xml, doc/conf/rest-server.xml: New. + External config. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + The reference points are now wrapped in QWDs. This enables the + plotting of Delta W(t) data for the reference points. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/QWD.java: + Added convenience constructor. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Adjusted. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixFacetUtils.java: + Cosmetics. + +2012-06-18 Christian Lins <christian.lins@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml: + Remove fix_analysis_periods_wq from fix_wq_curve facet. + + * doc/conf/themes.xml: + Add fixing themes for other theme groups. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java: + Debug output added. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixFacetUtils.java: + Added vim line, made class public. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Using external system entities to configure databases. + !!! + !!! FROM NOW ON YOU CAN YOUR conf.xml FROM TRUNK. + !!! Adjust the database credentials via the *-db.xml files + !!! which are included. + !!! + + * doc/conf/artifact-db.xml: New. Configuration for the artifact database. + * doc/conf/seddb-db.xml: New. Configuration for the SedDB + * doc/conf/backend-db.xml: New. Configuration for the FLYS3 database. + * doc/conf/datacage-db.xml: Configuration for the datacage datacage. + +2012-06-18 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/AnalysisPeriod.java: + Fixed constructor. + +2012-06-18 Christian Lins <christian.lins@intevation.de> + + * doc/conf/themes.xml: + Add themes for fixing facets. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java: + Use FixFacetUtils.getMaxQ() to retrieve max Q. + Interpolate km values instead of strict binary search. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixFacetUtils.java: + Added, contains static getMaxQ() method. + + * src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Some issues fixed. + +2012-06-18 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Fixed broken color strings. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Added new functions + that return colors for points. + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java: Added new + function that returns the color for points. + + * src/main/java/de/intevation/flys/jfree/XYStyle.java: Added new method to + apply the color of points (independent of the specified line color). + +2012-06-18 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added themes for SQ relation charts + ('sq_a_measurement', sq_a_outlier' and 'sq_a_curve'). + +2012-06-18 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixChartGenerator.java: + New. Abstract chart generator for fix analysis. This generator adds the + current km to the context. + + * src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Generators now extend the FixCahrtGenerator. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisPeriodsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixOutlierFacet.java: + Get the current km from context. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Removed getter for current km. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/map/PrintMap.java, + src/main/java/de/intevation/flys/artifacts/states/SoundingsSelect.java, + src/main/java/de/intevation/flys/artifacts/states/SQRelation.java, + src/main/java/de/intevation/flys/artifacts/states/DischargeState.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java, + src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/collections/CollectionDescriptionHelper.java: + Removed repeated x.size() calls from for loops. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Removed superfluous imports. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WKmsJRDataSource.java, + src/main/java/de/intevation/flys/artifacts/model/WWQQJRDataSource.java, + src/main/java/de/intevation/flys/artifacts/model/WQTJRDataSource.java: + Added missing 'else's in if/else ladders. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FileUploadService.java: + Fixed string comparision for identity. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/**/*.java: Added missing vim lines. + +2012-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Removed tabs. Set log level from INFO to DEBUG because this case + is much too common. + +2012-06-17 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Comments added. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java: + Logging output added. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java: + Max Q is now determined by parameter.interpolate(). + + * src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java, + src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Use getCurrentKmFromRequest() in output generation. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Typo in method description. + +2012-06-15 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisPeriodsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixOutlierFacet.java: + The getData() method now takes a km parameter to get the data at a specific + km. + +2012-06-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQ.java: New model to + store values for S/Q. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQResult.java: New + model class that should be used to store calculation results of SQ + relation. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java: + Create a fake SQResult. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQOutlierFacet.java: + Set missing required properties, so that this facet will be able to + re-calculate results again if the results are not in cache. + + * src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: + Create correct number of facets for parameter A for outliers Facet. + + * src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java: + Create a JFreeChart XYSeries from SQResult's outliers Facet. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Added a + method to create X axes. The SQRelationGenerator overrides this method, + because it requires a logarithmic axis. + +2012-06-15 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Added getter for current km. + +2012-06-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + new functions to determine if a Facet is a SQ curve, measurement or + outlier independend of their parameter. + + * src/main/java/de/intevation/flys/exports/sq/SQRelationInfoGenerator.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationGenerator.java, + src/main/java/de/intevation/flys/exports/sq/SQRelationExporter.java: + Stubs for chart and export generators. + + * doc/conf/conf.xml: Registered new output-generators for SQ relation + charts and exports. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for CSV + export of SQ relations. + +2012-06-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/**/*.java: Removed trailing whitespace. + +2012-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Added out commented block for SedDB configuration. + +2012-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java: + Some code cleanup. + +2012-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + Added more debug output. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java: + Interpolate the coeffs for the function to be drawn. + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Made code more robust for none existing data. + +2012-06-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + new Facets for MINFO SQ relation calculation. + + * doc/conf/artifacts/minfo.xml: Added output for chart and data export for + sq relation calculation. Registered new facets. + + * src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/sq/SQOutlierFacet.java, + src/main/java/de/intevation/flys/artifacts/model/sq/SQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/sq/SQMeasurementFacet.java: + Stubs for calculation and Facets used for SQ relation calculation. + + * src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: + Override computeAdvance() and implemented a stub for calculation and + Facet creation. + +2012-06-11 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java: + Changed filter string to 'Messstelle'. + +2012-06-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Fetch only cross section tracks that have a name 'qps' set for WSPLGEN + calculation. + +2012-06-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java: + Use binary search again. + +2012-06-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java: + Removed superfluous import. + +2012-06-13 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java: + Workaround for IndexOutOfBoundsException. + + * src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java: + Output generator for fixing derived curve. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java: + Use binary search with epsilon again. + +2012-06-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java: + Added more debug/warn log statements. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: Do + not add empty objects into the calculation result. + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Take care on empty QWD objects. + +2012-06-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/AnalysisPeriod.java: + Max Q is store in column "max_q" in Parameters now. So function can be plotted + bewtween calculated kms, too. + For function sampling use something like this.: + + double [] maxQ = parameters.interpolate("km", 42.3", new String [] { "max_q" }); + double maxSampleQ = 10000d; + + if (maxQ != null) { + maxSampleQ = Math.min(2000d, Math.abs(maxQ[0])); + maxSampleQ += 0.05*maxSampleQ; + } + +2012-06-13 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Add missing imports and correct coding issues. + +2012-06-12 Christian Lins <christian.lins@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java: + Use KMIndex.search() (with epsilon) instead of KMIndex.binarySearch(). + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Move marker generation to XYChartGenerator. + +2012-06-12 Christian Lins <christian.lins@intevation.de> + + * doc/conf/conf.xml: + Add fix_wq_curve output generator. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisPeriodsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixOutlierFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java: + Add additional null-checks to prevent NullPointerExceptions when accessing empty + facets. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java: + getMaxQ() now returns constant '1000' until it is properly fixed. + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Code for generating charts more or less complete but untested due to bugs in facets. + +2012-06-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Added method double [] interpolate(keyName, key, columnNames). + This construct is better suited for the extraction of + coefficients for building functions. In pseudo code: + + fitting.Function function = + FunctionFactory.getInstance().getFunction("log"); + + double km = 42.35; + + double [] coeffs = parameters.interpolate( + "km", km, function.getParamterNames()); + + math.Function f = function.instantiate(coeffs); + +2012-06-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java, + src/main/java/de/intevation/flys/artifacts/states/GaugeDischargeState.java: + Removed superfluous imports. + +2012-06-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Added interpolate methods that return an array of linear interpolated + values for a given key. Say you have a column named "km" you can call + 'values = parameters.interpolate("km", 12)' to fetch a set + of proportional interpolated parameters even if there are only + "km": 10 and "km": 15 in the data structure. Returns null if out of bounds. + +2012-06-11 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/artifacts/minfo.xml: + Added states and transitions for S-Q-relation. + + * src/main/java/de/intevation/flys/artifacts/states/PeriodsSelect.java, + src/main/java/de/intevation/flys/artifacts/states/OutliersInput.java, + src/main/java/de/intevation/flys/artifacts/states/SQRelation.java: + New. States for multiple periods input, outliers input and final + S-Q-relation. + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java: + Added name filter for locations. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings for states. + +2012-06-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java: + Fixed broken logger class. + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Re-establish old indentation. + +2012-06-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + (doWOut): Interpolate values from WKms. + +2012-06-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/GaugeDischargeState.java: + Enable caching. + +2012-06-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Simplified choice of gauges for discharge c. + + * src/main/java/de/intevation/flys/artifacts/GaugeDischargeArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/GaugeDischargeState.java: + Create better name for facets, minor refactoring, polishing. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings. + +2012-06-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java, + src/main/java/de/intevation/flys/artifacts/StaticFLYSArtifact.java: + Cosmetics, docs + +2012-06-07 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/fixation/PreprocessingSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Use i18n strings. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings. + +2012-06-07 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Changed facet description. + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/GaugeDischargeFacet.java, + src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeComputeState.java, + src/main/java/de/intevation/flys/utils/FLYSUtils.java: + Cosmetics, doc. + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/GaugeDischargeArtifact.java: + Fix issues, import river, documentation, more debug. + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/GaugeDischargeFacet.java: + Hard-code state id, instruct computation to result in facets. + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Doc. + +2012-06-06 Raimund Renkert <raimund.renkert@intevation.de> + + Added facet for derivate curve and fixed facet names. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixDerivateFacet.java: + New. Facet for derivate curve. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisPeriodsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixOutlierFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java: + Added name for facet to constructor. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Add one facet for each output using a different name. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added facet names. + + * doc/conf/artifacts/fixanalysis.xml: + Changed facet names. + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/MiddleBedHeightExporter.java: + Trivial doc. + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/datacage.txt: More documentation of datacage conf. + +2012-06-06 Raimund Renkert <raimund.renkert@intevation.de> + + Added new facet for analysis periods and updated facet names. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisPeriodsFacet.java: + New. Facet for analysis periods. Returns the date ranges for the analysis + periods. + + * doc/conf/artifacts/fixanalysis.xml, + src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new facet and updated facet names. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java: + Updated facet names. + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/CollisionFreeXYTextAnnotation.java: + Minor doc. + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/datacage.txt: More documentation of datacage conf. + +2012-06-06 Raimund Renkert <raimund.renkert@intevation.de> + + Implemented facets and splitted up the event facet. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixEventsFacet.java: + Removed. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixReferenceEventsFacet.java: + New. Facets for events. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixOutlierFacet.java: + Implemented getData(). + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Add new event facets. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java: + Fixed return value. + +2012-06-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/Function2DAdapter.java: + New. Adapter class to brigde de.intevation.flys.artifacts.math.Function + to org.jfree.data.function.Function2D. + + Function2D objects can be used by org.jfree.data.general.DatasetUtilities + to sample functions into XYDatasets. + See DatasetUtilities.sampleFunction2D() + +2012-06-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/datacage.txt: New file that will contain datacage configuration + documentation. + +2012-06-06 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml: + Fixed outputmodes. + +2012-06-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + Local variable shadowed instance variable. + +2012-06-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Fixed index problem with name of chi^2. + +2012-06-06 Raimund Renkert <raimund.renkert@intevation.de> + + Added facets for fix analysis. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixAvSectorFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixWQCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixOutlierFacet.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixEventsFacet.java: + New. Facets for W/Q-Chart in fix analysis. FixAvSectorFacet is implemented, + the others are just stubs. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Add facets to artifact after calculation. + + * src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: + Added method to get the current km for charts. The km is used for + synchronous navigation in fix analysis charts. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new facet types. + + * doc/conf/artifacts/fixanalysis.xml: + Added facets to config. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Added some binary search methods. TODO: Sort by column. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/DeltaWtExporter.java: + Use new data structures for export. + + * src/main/java/de/intevation/flys/utils/KMIndex.java: + Implements java.lang.Iterable now. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DeltaWT.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/DeltaWTsKM.java: + Removed. Obsolete. + + * src/main/java/de/intevation/flys/jfree/CollisionFreeXYTextAnnotation.java: + Removed superfluous import. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: + Prevent duplicates in analysis periods. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DateRange.java: + Added equals. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/EpsilonComparator.java: + Removed. Obsolete now. + +2012-06-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/JFreeUtil.java: + Improved collision detection. + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Avoid collisions of line labels, documentation. + + * src/main/java/de/intevation/flys/jfree/CollisionFreeXYTextAnnotation.java: + Use JFreeUtil. + + * src/main/java/de/intevation/flys/jfree/CollisionFreeLineLabelEntity.java: + New, ChartEntity class for Line labels. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + Store the QWs that are actually used in the fitting as referenced. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Store the referenced QWs for each km. TODO: Use same index structure. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java: + Store the referenced QWs, too. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixResults.java: + Removed. Obsolete. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/AnalysisPeriodsKM.java: + Removed. Not needed any longer. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Store the AnalysisPeriod per km into FixResult. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java: + Uses KMIndex<AnalysisPeriod []> instead of DeltaWTsKM now. + + * src/main/java/de/intevation/flys/exports/DeltaWtExporter.java: + Commented out old code. + TODO: Rewrite exporter to use AnalysisPeriods. + +2012-06-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: Override + endOfLife() to remove files and directories produced for WMS output. + +2012-06-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/JFreeUtil.java: + New jfreechart-related utility class. + +2012-06-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/utils/Formatter.java: + (getMeterFormat): New. + Doc. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + i18n and formatting for line labels. + +2012-06-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Added better doc and TODO. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java: + Now uses the KMIndex for outliers. + TODO: Use KMIndex for DeltaWTs, too. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/KMIndex.java: New. + Serializable index structure to find objects by there km. + TODO: Use in fixings analysis. + +2012-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/EpsilonComparator.java: + Fixed sign problem in comparison. + +2012-06-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Implemented outlier checks in fixings analysis. Expected to be + still broken, but the code is in the right place now and has the + right structure. + + * src/main/java/de/intevation/flys/artifacts/math/Outlier.java: + Fixed endless loop. + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Added further set methods for indexed access. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/Fitting.java: + New. Out factored fitting code from FixCalculation. Checks for outliers, too. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Moved fitting code out to separate class. Streamlined code a bit. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java: + Store the outliers from fitting in separate data structure, too. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/QW.java: New. + Base class for delta W/t data. Used as storage for outliers. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/QWD.java: + Is a sub class of QW now. + +2012-06-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Store Chi^2 of fitting into result, too. + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Added indexed set method. + +2012-05-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Function.java: + Added inner class Derivative representing the first derivative of the + function. Can be instantiated with a given set of parameters. + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Log.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Pow.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Linear.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Quad.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/Exp.java, + src/main/java/de/intevation/flys/artifacts/math/fitting/LogLinear.java: + Added the derivatives of all fitting functions. + +2012-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Calculate the Delta W/ts + + the average Delta W/ts per Q sector per analysis period. + !!! Very complicated stuff !!! + TODO: + - Store results into the new data structures AnalysisPeriod and + AnalysisPeriods. + - Remove the old DeltaWTsKM and DeltaWT. + - Adjust the facets and the export. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/QWD.java: + Added convinience constructor. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Added sector filter. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsFilterBuilder.java: + Expose the new sector filter to the fixing overview service. Syntax: + <sector value="<value>"/> + +2012-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/DateAverager.java: + New. Averages a list of dates preventing overflows. + +2012-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Added a km filter to find columns which touches a given km. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsFilterBuilder.java: + Expose the new km filter to the fixing overview service. Syntax: + <position km="<value>"/> + +2012-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Better persistence model for delta w/t calculations. Supports + storage of Q sector averages, too. TODO: Use the new model. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/QWD.java: + New. Will be used as a replacement for DeltaWT. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/AnalysisPeriod.java: + New. Will be used as a replacement for DeltaWTsKM.KM. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/AnalysisPeriodsKM.java: + New. List<AnalysisPeriodsKM> Will be used as a replacement for DeltaWTsKM. + +2012-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: + Use DateRange objects now. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DateRange.java: New. + Model for date ranges. To be used in re-factored persistance model. + +2012-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Added method to find the Q sector of fixing column for a given km. + Useful to classify fixing events at certain kms. + +2012-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: + Fixed access to analysis periods. + +2012-05-30 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml: + Changed data fields to a single string data field. The data contains a + string of semi-colon separated 'long' value pairs. + + * src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: + Process the new data. + +2012-05-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/RelativePointFacet.java: + trivial doc. + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java: + Removed disturbing comment. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java + (SimpleAxis): Add ommitted Y_AXIS2 to enum. + +2012-05-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + solve issue417: duration curve annotations as line to curve. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java + (createStickyLineAnnotation): New. + Resolved todos, use the line style. + +2012-05-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Doc, TODOs added. + +2012-05-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Consider theme setting before drawing line to curve. + +2012-05-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Donate own theme for mainvalues. + +2012-05-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Fit from Q to W not from W to Q! + Delta w/t's are now in cm. + Slimmed down fitting error report. + + * src/main/java/de/intevation/flys/exports/DeltaWtExporter.java: + Changed default column header of delta W to cm. + +2012-05-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Made Delta W/t calculation work. + + * src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java: + Added toString() method. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsColumn.java: + Fixed problem accessing Ws. + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Fixed silly 'name.equals(name)' bug. This mainly prevented delta W/t + computation from working. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DeltaWTsKM.java: + More deug code. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + More debug code. Simplified access to data a bit. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Allow CSV exporter to throw IOExceptions. + + * src/main/java/de/intevation/flys/exports/DeltaWtExporter.java: + More debug output. Flush CSV after writing. + +2012-05-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Units of step is in meter and not km. Added more debug output. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Stupidly forgot to add facet to return the delta w/t as CSV. + +2012-05-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ReportFacet.java: + There was a cast to WINFOArtifact where a cast to FLYSArtifact + is sufficient. This prevented generating error reports that + does not inherit from WINFOArtifact like FixationArtifact. + +2012-05-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml, + doc/conf/conf.xml: Added CSV and error report generator/facets. + +2012-05-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFactory.java: + CrossSectionFactory.isNewest() will return true if the CrossSection is + the only CrossSection found in the database. No IndexOutOfBounds is + thrown. + +2012-05-27 Ingo Weinzierl <ingo@intevation.de> + + * Tagged module as '2.7'. + +2012-05-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Don't break chart creation if no hyks are existing. + +2012-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DeltaWTsKM.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java, + src/main/java/de/intevation/flys/artifacts/ExternalWMSArtifact.java: + Removed superfluous imports. + +2012-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DeltaWTsKM.java: + Added getters to access the inner data structures. + + * src/main/java/de/intevation/flys/utils/Formatter.java: Added formatting + support for delta w/t exports of fix analysis. + + * src/main/java/de/intevation/flys/exports/DeltaWtExporter.java: + New. CSV exporter for delta w/ts of fix analysis. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Reordered imports. + +2012-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FitResult.java: + Removed. Obsolete. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java: + New. Stores the result of the fixing analysis. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Return the right structure (FixResult) from the calculation. + +2012-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Fixed stupid index bug. + +2012-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + Call the computing. + +2012-05-25 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Use the correct Artifacts for wms fixpoints and + floodmaps (they were interchanged). + +2012-05-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixResults.java: + New. Stores all results of a fixing analysis. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DeltaWTsKM.java: + New. Km indexed container for Delta W/t diagrams. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Create FixResults and DeltaWTsKM now to store the results. + +2012-05-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeParser.java: + Replaced another silly "@attribute" XPATH with direct getAttribute() + call. + +2012-05-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Draw line of mainvalues to duration curve hit point to ground. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Also work for q-value case on second y-axis, refactored. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java: + Doc and fix.Doc and fix. + +2012-05-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Also draw lines to curve from q-mainvalues in dur. curve + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java: + In analogy to the W-case, calculate where line from main value hits + a wqday-curve from DurationCurve. + +2012-05-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Draw line of w-mainvalue to duration curve hit point to ground. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + If StickyAxisAnnotation has a hit point set, also add line annotation + from the crossing point to the x-axis. + +2012-05-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Draw line of w-mainvalue to duration curve, baby version. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Added field "hitPoint", when a line to a point should be drawn + - leveraging this annotation into the second dimension. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesWFacet.java: + Calculate where mainvalue hits a duration curve. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + If StickyAxisAnnotation has a hit point set, add line annotation + to hit (the duration) curve. + +2012-05-25 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/themes.xml: + Added a warning to not use virtual themes for facets. + +2012-05-25 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/themes.xml: + Added concrete themes for maps. + +2012-05-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Moved parameter of addAnnotations out, renamed to addVisibleAnnotation. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Adjusted. + +2012-05-25 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/themes.xml: + Added concrete themes for areas. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Load mainvalues in reference curves. + + * doc/conf/artifacts/winfo.xml: Add mainvalues to compatibility list + of reference curves; fix typo. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Render mainvalues as annotations. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Render static wkms data. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Cosmetic. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java, + src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: + (flipStickyAxis): Allow easy change of sticky axes. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java + (getWaterlevelData): Exception for discharge case. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java + (getLocations): Exception for discharge case. + +2012-05-24 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 667. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Added data to jfreechart data source. + +2012-05-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/services/ThemeListingService.java, + src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/HYKArtifact.java, + src/main/java/de/intevation/flys/artifacts/AreaArtifact.java, + src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java, + src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java, + src/main/java/de/intevation/flys/artifacts/GaugeDischargeArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticWQKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java, + src/main/java/de/intevation/flys/themes/ThemeGroup.java: Removed + needless imports. + +2012-05-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: Reproject + geometries into the coordinate reference system defined in the + configuration. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Include other "thematic" heights for + reference curve relative points dc conf. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + Cosmetics. + + * src/main/java/de/intevation/flys/artifacts/model/RelativePointFacet.java: + Added TODO. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/relativepoint.xml, + doc/conf/conf.xml: Remove relativepoint artifact remainders, so far + all cases are covered by facet. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + Handle reference curve case, slightly refactored. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Handle points in doOut. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + Expose data via blackboard. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Serve fixations + with relative points for reference curves. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java + (getReferenceStartKm, getReferenceEndKms): Made public. + +2012-05-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Add relative point to compatibility + list of reference curve out. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Remove second facet from + StaticWKmsArtifact from compatibility list of duration curves. + + * doc/conf/themes.xml: Add basic theme for relativepoint. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Serve floodprotections and heightmarks + with relative points for duration curves. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Handle relative points in doOut. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Serve fixations with relative points + for duration curves. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/ExternalWMSArtifact.java: + Use superclass static field and method. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/RelativePointFacet.java: + Handle duration curve case. Do a linear interpolation of the day. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DurationCurveFacet.java: + Be a DataProvider, provide the duration curve and its km. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + (getWAtKmLin): Linear interpolating version of getWAtKm. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/RelativePointFacet.java: + Add (dummy-) implementation of a relative point facet. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Use superclass infrastructure. Spawn RelativePointFacet. + + * doc/conf/winfo.xml: Add relativepoint facet to compatibility list + of duration curve out. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Add RELATIVE_POINT Facet Type. + +2012-05-23 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Function.java: + Allow instantiation of a function with concrete parameters. + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + Enable indexed access to parameter names. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FitResult.java: + New. Bundles the results of the fitting. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/DeltaWT.java: + New. Stores results of Delta W/t calcs. + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java: + Calculate Delta W/t s, too. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Make component filters ('and', 'or') more easy to construct. + +2012-05-23 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java, + src/main/java/de/intevation/flys/themes/ThemeFactory.java: + Improved startup performance. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticFLYSArtifact.java + (getDatacageIDValue): New, extracted from various duplicates. + + * src/main/java/de/intevation/flys/artifacts/HYKArtifact.java, + src/main/java/de/intevation/flys/artifacts/AreaArtifact.java, + src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java, + src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java, + src/main/java/de/intevation/flys/artifacts/GaugeDischargeArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticWQKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: + Use getDatacageIDValue() from superclass or static context. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticFLYSArtifact.java: + Define XPath to access "id" value of element coming from datacage-document. + + * src/main/java/de/intevation/flys/artifacts/HYKArtifact.java, + src/main/java/de/intevation/flys/artifacts/AreaArtifact.java, + src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java, + src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java, + src/main/java/de/intevation/flys/artifacts/GaugeDischargeArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticWQKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: + Use xpath defined in superclass. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/BlackboardDataFacet.java: + Whitespace-Cosmetics. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/relativepoint.xml: New artifact-state-config for upcoming + artifact. + + * doc/conf/conf.xml: Register artifact factory and artifact for + upcoming artifact. + +2012-05-23 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/themes/ThemeGroup.java: + New. A theme group takes a set of themes configured in the themes.xml. + + * src/main/java/de/intevation/flys/themes/ThemeFactory.java: + Read the theme groups configured in the themes.xml. + Improved reading the xml file. Thanks to Sascha for the patch. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Get a theme using the new parameter themegroup. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Create theme groups while configuring themes. + + * src/main/java/de/intevation/flys/artifacts/services/ThemeListingService.java: + New. This service returns a list with all configured theme groups, each + containing exactly one theme filtered by name. + The theme name has to be provided as parameter. + + * doc/conf/conf.xml: + Added new service to config. + + * doc/conf/themes.xml: + Introduced theme groups and added new group. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Repair CS-DC-Conf, allow loading + waterlevels, add fixations and heightmarks. + +2012-05-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Cosmetics. + +2012-05-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Allow loading of fixations in cross-sections. + +2012-05-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/GaugeDischargeState.java: + More debugging of discharge curve issue. + +2012-05-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/GaugeDischargeArtifact.java + (getDischargeCurveData): Moved to more specific class. + + * src/main/java/de/intevation/flys/artifacts/model/GaugeDischargeFacet.java: + Cosmetics, be louder in miscondition. + +2012-05-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Allow loading of fixations and thmatic + heights in longitudinal sections, make discharge-curve-misbehavior + testable with trunk. + +2012-05-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Render discharge outs (was own out once). + +2012-05-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Allow cross-section stuff in + dischargelongitudinal state. + + * src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java: + Add CrossSectionWaterLineFacets, will trigger the cross section output. + +2012-05-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FixationArtifact.java: + Added vim line. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Removed empty line. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Removed invalid/not helpful comments. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java + (outputExists): Doc. + +2012-05-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/fixation/ReferencePeriod.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/AnalysisPeriods.java: + Adjusted ui providers to make parameter names unique in client. + +2012-05-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Fixed short evaluation problem. + + * src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: + Added more debuf output. + +2012-05-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FixationArtifactAccess.java: + New. Access the state data of fixings artifacts. + +2012-05-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml: Make "start" and "end" parameters + unique in fixings artifact states. + +2012-05-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/winfo.xml: Extend compatibility lists. + + * doc/conf/conf.xml: Add gaugedischarge factory and artifact. + + * src/main/java/de/intevation/flys/artifacts/model/GaugeDischargeFacet.java, + src/main/java/de/intevation/flys/artifacts/GaugeDischargeArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/GaugeDischargeState.java: + New, State, Facet and Artifact to access discharge curves of gauges. + + * doc/conf/gaugedischarge.xml: New trivial state model for gaugedis. + +2012-05-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Allow loading of prev. reference curves. + +2012-05-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: (yet unused) sceleton for ref-curve dc conf. + +2012-05-21 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings for fix analysis. + +2012-05-21 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/fixation/EventSelect.java: + Implemented static data for state. + + * doc/conf/artifacts/fixanalysis.xml: + Changed transition in 'volmer' states. + + +2012-05-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java: + Include km in names of duration curve facets. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Adjusted i18n for + duration curve facet names (now include km). + +2012-05-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Allow loading of previous duration curves and + fixations in duration curves. + +2012-05-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/SoundingsSelect.java: + Take the current km range into account in getOptions(). + +2012-05-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java, + doc/conf/artifacts/minfo.xml: Adapted facets for middle bed height. We + now distinguish between epochs and singles. + + * doc/conf/conf.xml: Registered new output generator for middle bed height. + + * doc/conf/themes.xml: Added new themes for middle bed height epoch and + single curves. + + * src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightCalculation.java: + Take the km range into account. + + * src/main/java/de/intevation/flys/artifacts/states/MiddleBedHeight.java: + Create facets for single and epochs. + + * src/main/java/de/intevation/flys/exports/MiddleBedHeightInfoGenerator.java, + * src/main/java/de/intevation/flys/exports/MiddleBedHeightGenerator.java: + Chart and info generator for middle bed height charts. + +2012-05-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightData.java: + Added new methods that create names for singles and epochs. + + * src/main/java/de/intevation/flys/utils/Formatter.java: Added number + formatters used to export middle bed heights values. + + * src/main/java/de/intevation/flys/exports/MiddleBedHeightExporter.java: + New exporter for middle bed heights values. + + * doc/conf/conf.xml: Registered new output generator for middle bed height + exports. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: New i18n strings for middle + bed height facets and csv export. + +2012-05-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightData.java: + New model class for storing data for middle bed height exports (chart, + data exports). + + * src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightCalculation.java: + New Calculation that generates new MiddleBedHeightData. + + * src/main/java/de/intevation/flys/artifacts/model/MiddleBedHeightFacet.java: + New Facet which is used for middle bed height charts. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + new facet type for middle bed height curves. + + * src/main/java/de/intevation/flys/artifacts/states/MiddleBedHeight.java: + Calculate middle bed height data using MiddleBedHeightCalculation and + create new facets for charts and csv export. + + * src/main/java/de/intevation/flys/artifacts/MINFOArtifact.java: Added new + methods that return the IDs of selected single bed heights and epoch bed + heights. + +2012-05-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/SoundingsSelect.java: + Implemented getOptions() and getLabelFor(). + +2012-05-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Stabilized legend item aggregation. + +2012-05-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Extensive - although mostly trivial - doc adds. + +2012-05-16 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/minfo.xml: Added states and transitions for MINFO + middle bed height calculation. + + * src/main/java/de/intevation/flys/artifacts/states/MultiStringArrayState.java: + New. Nearly a copy of MultiIntArrayState but uses String values. + + * src/main/java/de/intevation/flys/artifacts/states/SoundingsSelect.java: + New subclass of MultiStringArrayState. It will be used for bed heights + selection. We need to do handle the values as string, because singles + and epochs are mixed, so the DB ID is not enough as parameter value. + + * src/main/java/de/intevation/flys/artifacts/states/MiddleBedHeight.java: + New. This state will trigger the calculation for middle bed height in + MINFO module. + +2012-05-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/MultiIntArrayState.java: + Do not add a <art:choices> element to the dynamic DESCRIBE but add the + <art:item> directly to <art:select> which allows using default mechanism + in FLYS client. + +2012-05-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Replaced event name by its description, which combines the + description of the fixing (= WST file description) and the name + of the column. + + * contrib/fixoverview2html.xsl: Adjusted. + +2012-05-16 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/minfo.xml: Added a chart output and relevant facets to + flow velocity state. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + new facet types for mainchannel, totalchannel and tau of flow velocity + calculation. + + * src/main/java/de/intevation/flys/artifacts/model/FlowVelocityFacet.java: + New Facet that returns FlowVelocityData in getData(). + + * src/main/java/de/intevation/flys/artifacts/model/FlowVelocityData.java: + Added new methods that return xy points for mainchannel, totalchannel and + tau. + + * src/main/java/de/intevation/flys/artifacts/states/FlowVelocityState.java: + Create new mainchannel, totalchannel and tau Facets for each + FlowVelocityData instance retrieved by FlowVelocityCalculation. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Commented + legend aggregation out. + + * src/main/java/de/intevation/flys/exports/FlowVelocityInfoGenerator.java, + src/main/java/de/intevation/flys/exports/FlowVelocityGenerator.java: New + chart generator for flow velocity data and its info generator. + + * doc/conf/conf.xml: Registered the chart and chart info generator for flow + velocity data. + + * doc/conf/themes.xml: Added new themes for mainchannel, totalchannel and + tau of flow velocity calculation. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for flow + velocity facets. + +2012-05-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/MultiIntArrayState.java: + Add a 'label' attribute to each <data> element in the static DESCRIBE. + In addition to that, the <data> element created in this class can have + multiple <item> elements which consist of a 'value' and a 'label' + attribute. This 'label' attribute is taken from getLabelFor() which is + abstract and needs to be implemented by subclasses. + + * src/main/java/de/intevation/flys/artifacts/states/DischargeState.java: + Implemented the abstract method getLabelFor(). + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties: New i18n strings for MINFO + parameter names. + +2012-05-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: New i18n strings for MINFO + states. + +2012-05-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/FlowVelocityExporter.java: + Append the name of a location for the km row which is provided by + FLYSUtils.getLocationDescription(km); + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for flow + velocity CSV export headers. + +2012-05-16 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/minfo.xml: Added new state and csv export for MINFO flow + velocity calculation. + + * doc/conf/conf.xml: Registered a new CSV exporter for flow velocity + values. + + * src/main/java/de/intevation/flys/artifacts/model/FlowVelocityCalculation.java: + New calculation for MINFO flow velocity. Actually, this is no + calculation but a bundling of data. + + * src/main/java/de/intevation/flys/artifacts/model/FlowVelocityData.java: + New model class that is used to store flow velocity relevant data. + + * src/main/java/de/intevation/flys/artifacts/states/FlowVelocityState.java: + New state that triggers the FlowVelocityCalculation and creates new + facets. Currently, only a CSV Facet is created. + + * src/main/java/de/intevation/flys/artifacts/MINFOArtifact.java: Added + methods to retrieve the IDs of main channels and total channels for the + flow velocity calculation. + + * src/main/java/de/intevation/flys/utils/Formatter.java: New formatters + that are used in CSV exporter for flow velocity. + + * src/main/java/de/intevation/flys/exports/FlowVelocityExporter.java: New + concrete subclasses of AbstractExporter that currently implements the + path to export FlowVelocityData as CSV. + +2012-05-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/HYKArtifact.java, + src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java: + Removed getDataAsDouble() which is now implemented in FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Implemented getDataAsDouble(). This method will return a Double based on + a given parameter name. + +2012-05-15 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml: + Changed data type for state 'eventselect'. + +2012-05-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSQPSArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSKmArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSHydrBoundaryArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFixpointsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFloodmapsArtifact.java, + src/main/java/de/intevation/flys/artifacts/FixationArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSHwsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSCatchmentArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/QSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/ReferencePeriod.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationVolmerCompute.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/PreprocessingSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationPeriod.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FunctionSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/GaugeRange.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/LocationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/AnalysisPeriods.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java, + src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java, + src/main/java/de/intevation/flys/artifacts/WMSHydrBoundaryPolyArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSBuildingsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSGaugeLocationArtifact.java, + src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSLineArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFloodplainArtifact.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Removed superfluous imports. + +2012-05-15 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml: + Adjusted state data fields. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/ReferencePeriod.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/PreprocessingSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FunctionSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/AnalysisPeriods.java: + Implemented states. + +2012-05-15 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Function.java: + Fixed constructor. Descriptions are now available. + +2012-05-15 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/minfo.xml: Added new transistions and states for + MINFO flow velocity calculation. + + * src/main/java/de/intevation/flys/artifacts/states/MultiIntArrayState.java: + New abstract states that might be used to append a list of available + integer values to the DESCRIBE document. + + * src/main/java/de/intevation/flys/artifacts/states/DischargeState.java: + Concrete subclass of MultiIntArrayState which implements the abstract + method getOptions(). + +2012-05-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Parameters.java: + New. Model for storing fitting results in cache. + +2012-05-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java: + Removed the computeFeed() method that created Facets for discharge + curves to make this state ready to use in MINFO calculations. + +2012-05-14 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/minfo.xml: New Artifact configuration for module + MINFO. + + * src/main/java/de/intevation/flys/artifacts/MINFOArtifact.java: New + Artifact for module INFO. + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelectMinfo.java: + New. The state is used for choosing the calculation in module MINFO. + + * doc/conf/conf.xml: Registered the MINFO Artifact. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: New strings for states and + calculations. + +2012-05-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Removed unused code. + +2012-05-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Doc. + +2012-05-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Allow duration_curve.q loading via datacage. + +2012-05-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Allow hyk loading also when in non- + recommendation mode. + +2012-05-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Improved middle height calculations for waterlevels. + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java + (area): Improved or even corrected area calculation. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Corrected middle height calculated, have a very verbose label for + the time being. + +2012-05-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Somewhat improve area calculation during line computation. + Still faulty. + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java + (fillWater): Piecewise calculate area in more cases. + +2012-05-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Tackle water-through-mountain issue that exists since r4099. + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java + (addPoints): Add parameter that decides whether or not to skip NaNs. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Set new parameter to StyledSeriesBuilder.addPoints calls. + For waterlines it is important that NaNs stay included! + +2012-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSGaugeLocationArtifact.java: + New Artifact for storing geometries for gauges. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + a new facet type for WMSGaugeLocationArtifact 'floodmap.gaugelocation'. + + * doc/conf/artifacts/winfo.xml, + doc/conf/artifacts/map.xml: Added 'floodmap.gaugelocation' facet to the + list of valid facets for map and floodmap output. + + * doc/conf/conf.xml: Added a factory for creating + WMSGaugeLocationArtifacts. + + * doc/conf/themes.xml: Added a theme for 'floodmap.gaugelocation' facets. + + * doc/conf/meta-data.xml: Added a datacage section for gauge locations to + the floodmap and map section. + +2012-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + new facet types 'floodmap.hydr_boundaries' and + 'floodmap.hydr_boundaries_poly' + + * doc/conf/artifacts/winfo.xml, + doc/conf/artifacts/map.xml: Registered 'floodmap.hydr_boundaries' and + 'floodmap.hydr_boundaries_poly' for floodmap and map output types. + + * doc/conf/conf.xml: + + * doc/conf/themes.xml: Added themes for 'floodmap.hydr_boundaries' and + 'floodmap.hydr_boundaries_poly'. + + * doc/conf/meta-data.xml: Improved datacage configuration specific to + floodmaps and maps. + + * src/main/java/de/intevation/flys/artifacts/WMSHydrBoundaryArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSHydrBoundaryPolyArtifact.java: + New artifacts to save information about hydrological boundaries. + + * src/main/java/de/intevation/flys/artifacts/WMSQPSArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSKmArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFixpointsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFloodmapsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSHwsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSCatchmentArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSBuildingsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java, + src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSLineArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSFloodplainArtifact.java: + Moved the methods getRiverId() and getTitle() into WMSDBArtifact. + +2012-05-10 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/wsplgen_layer.vm, + doc/conf/mapserver/shapefile_layer.vm: Added a 'PROJECTION' section. + +2012-05-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: + Minor refactoring, doc. + +2012-05-10 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/layer.vm: Added a 'PROJECTION' section. + +2012-05-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: + Minimal doc, TODO. + +2012-05-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix issue620: synchron navigation at impossible kms. + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java + (searchCrossSectionLine): Do not return a CrossSectionLine if there + is none found within 1km. + +2012-05-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Minimal cosmetics. + +2012-05-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Preparations for fix issue620: Synchron navigation on non-existing km. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java + (getData): Return empty lines if no cross section found. + +2012-05-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Display mittlere hoehe (which is not yet calculated). + + * doc/conf/themes.xml: Added theme prop to display middlere hoehe or not. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + (parseShowMiddleHeight): New, parse the new theme prop. + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: + (fillWater, ListWithArea): Return new type wich also contains area. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Respect new theme prop and adjust label if set. + +2012-05-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Beginning of calculation of Mittlere Hoehe: area calculation. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Adjusted to LineData constructor. + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java + (area): New, calculate area of a polygon. + Added todos where area calculation code paths are missing. + +2012-05-08 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Moved the hws layers out to an own node. + + * src/main/java/de/intevation/flys/artifacts/WMSCatchmentArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: Moved the + 'name' property from WMSCatchmentArtifact to WMSDBArtifact. + + * src/main/java/de/intevation/flys/artifacts/WMSHwsArtifact.java: Create + more specific filter and extent that takes the 'name' into account. + +2012-05-08 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Moved the catchments out to an own node. + + * src/main/java/de/intevation/flys/artifacts/WMSCatchmentArtifact.java: + Parse the name of required catchments fetch name specific catchments + only. + +2012-05-08 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/map.xml: Added the 'floodmap.floodmaps' facet to the + list of valid facets of the 'map' output. + + * doc/conf/themes.xml: Renamed the 'Line' theme used for floodmaps to + 'FloodmapLines'. + +2012-05-08 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/db_layer.vm: Added a PROJECTION section which is + filled by the LayerInfo object. + + * src/main/java/de/intevation/flys/artifacts/model/LayerInfo.java: Added + a 'srid' property. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Set the + 'srid' property of all LayerInfo objects. + +2012-05-07 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/artifacts/fixanalysis.xml: + Changed state data and added new state. + + * src/main/java/de/intevation/flys/artifacts/states/fixation/QSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/EventSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationPeriod.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/GaugeRange.java: + Modified states and added new state for concrete event selection. + +2012-05-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes: Add text-bg properties to Area style. + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java + (TextStyle.apply): Apply text bg theme-properties to renderer. + + * src/main/java/de/intevation/flys/jfree/StyledAreaSeriesCollection.java: + Cosmetics. + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Added field to store labels background color, calculate arithmetic + middles of polygons, to put label there (improves situation slightly). + +2012-05-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java + (parseShowArea): parse show area field of theme. + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java + (TextStyle.apply): Be applicable to StableXYDifferenceRenderers. + + * src/main/java/de/intevation/flys/jfree/StyledAreaSeriesCollection.java: + Apply setting from theme to renderer. + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Simplified area calculation (always calculate). Added getters and + setters for text for label style, respect most of that. + +2012-05-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes: Let Area style not inherit from colorlines (as labels + work slightly different. Enable showarea property. Comment dupe Lines. + +2012-05-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java + (doArea): Add Lines.LineData datatype to areable data types. + +2012-05-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Add two new options for waterlevel label in cs. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + Parse new theme properties. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Adjust label according to chosen properties. + +2012-05-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java + (parseShowLineLabelBG): parse show line label bg field of theme. + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Respect show line label bg setting of theme. + + * src/main/java/de/intevation/flys/jfree/XYStyle.java: + Apply setting from theme to renderer. + +2012-05-03 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added a 'helpText' field to each state. + The 'helpText' field represents in this case a message in the i18n + resources which should be a link to a online help page. + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Append the 'helpText' to the DESCRIBE document. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added links to help text in + the FLYS wiki. + +2012-05-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Use the colors specified in theme document for linelabel. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + New methods to find colors specified for linelabels. + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Store and use background and foreground color for linelabels. + + * src/main/java/de/intevation/flys/jfree/XYStyle.java: + Communicate colors of linelabels to renderer. + +2012-05-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Actually use the font specified in theme document for linelabel. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + Fixed paths for linelabel-related fields in theme doc. + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Set font for linelabel. + +2012-05-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: No default background show for linelabels. + +2012-05-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelInfoState.java: + Cosmetic, added annotation. + +2012-05-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Parse font for linelabels, do not use it yet. + + * doc/conf/themes.xml: Add more theme properties related to linelabels. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java + (parseTextSize, parseLineLabelSize): New and slightly refactored. + (parseLineLabelFont): New. + (parseTextStyle, parseLineLabelStyle): New and slightly refactored. + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java + (setLineLabelFont, getLineLabelFont): New, accessors to + linelabelfont field. + + * src/main/java/de/intevation/flys/jfree/XYStyle.java + (applyLineLabelFont): New. + +2012-05-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Make it compile again after signature change in backend. + +2012-04-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Doc. + +2012-04-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: + Added local class LineData and return it to also include + Length of lines. + + * src/main/java/de/intevation/flys/artifacts/WaterLineArtifact.java: + Changed signature of interfaces getWaterLines. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + (getWaterLines): adjusted signature. + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Adjusted to return type of Lines.createWaterLines. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Include length in label (stub). + + * src/main/java/de/intevation/flys/jfree/HasLabel.java: + New interface. + + * src/main/java/de/intevation/flys/jfree/StyledXYSeries.java: + Implement new HasLabel interface. + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Take into account that StyledXYSeries are HasLabel. + +2012-04-26 Raimund Renkert <raimund.renkert@intevation.de> + + Initial transition configuration and artifact/state stubs for fixation + analysis. + + * doc/conf/artifacts/fixanalysis.xml: + New. Initial transition configuration. + + * doc/conf/conf.xml: + Added artifact and factory entry to config. + + * src/main/java/de/intevation/flys/artifacts/FixationArtifact.java: + New. Stub with initial implementation. + + * src/main/java/de/intevation/flys/artifacts/states/fixation, + src/main/java/de/intevation/flys/artifacts/states/fixation/QSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/ReferencePeriod.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationVolmerCompute.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/PreprocessingSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationPeriod.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FunctionSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/GaugeRange.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/LocationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/AnalysisPeriods.java, + src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java: + New. Stubs for fixation states. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings. + +2012-04-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: + Add method to calculate length of water lines. + +2012-04-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Most of issue454: Label waterlevels. + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java + (drawSecondaryPass): Use correct label for lines. + +2012-04-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java + (showSeriesMinimunX, showLineLabel): Renamed field. + (isShowLineLabel, setShowLineLabel): Added getters and setters for + showLineLabel field. + (drawSecondaryPass): Respect showLineLabel field, draw static text + as placeholder for real label (stub). + + * doc/conf/themes.xml: Define theme prop 'showlinelabel' for Lines. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Parse theme + theme prop. + + * src/main/java/de/intevation/flys/jfree/XYStyle.java: Apply showline + theme prop. + +2012-04-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Cosmetics, doc. + +2012-04-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/Outlier.java: + Gah! Checked in out dated version. + + * src/main/java/de/intevation/flys/artifacts/services/FileUploadService.java, + src/main/java/de/intevation/flys/artifacts/states/ScenarioSelect.java: + Removed superfluous imports. + +2012-04-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/Outlier.java: + New. Simple Grubb's outlier test. Needs testing. ;-) + +2012-04-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java + (isMinimumX): Implemented minimum finding for x in analogy to the ones for + y values. Stub to label dataset curves in plot. + +2012-04-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Cosmetics, added doc, TODO and an OPTIMIZE. + +2012-04-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FileUploadService.java: + Make it cross platform. + +2012-04-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FileUploadService.java: + Make it compilable. + +2012-04-18 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 657. + + * src/main/java/de/intevation/flys/artifacts/services/FileUploadService.java: + New. Service to upload a file as base64 string embedded in xml structure. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Extract shape files from zip archive and move them to artifact directory. + Add the user shapefile as parameter for wsplgen calculation. + + * src/main/java/de/intevation/flys/artifacts/states/ScenarioSelect.java: + Remove the artifact directory on step back. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java, + src/main/java/de/intevation/flys/exports/MapGenerator.java: + Create layer to display the uploaded shapefile. + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java: + Create a facet to output the user defined layer. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added type for user shape file. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java: + Resized array for '-lin' parameter. + + * doc/conf/artifacts/winfo.xml: + Added facet to diplay user defined shapefile. + + * doc/conf/conf.xml: + Added file upload service. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n string. + +2012-04-18 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 560. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENLayerFacet.java: + New. Facet for WSPLGEN layers. + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java: + Create a new WSPLGEN facet when creating uesk layers. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java, + src/main/java/de/intevation/flys/exports/MapGenerator.java: + Use WSPLGENLayerFacet to create uesk layer. + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + Switch back to false as return value in isQueryable(). + +2012-04-18 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 560. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: + Generate WSPLGEN-Layer with its own template and set the layertitle to + an i18n string. + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: + Call createUeskLayer with a CallContext. + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + Set queryable to true. + + * doc/conf/mapserver/wsplgen_layer.vm: + New. Template for WSPLGEN-Layer. + +2012-04-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Removed superfluous imports. + +2012-04-18 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/themes.xml: + Added mapping for manual points in historical discharge chart. + +2012-04-18 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Fixed duplicated legend entry for manual points. + +2012-04-18 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 494. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Create manual points with text annotations in time charts. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + Add manual points to the chart. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added historical discharge to chart types. + + * doc/conf/artifacts/winfo.xml, + doc/conf/artifacts/manualpoints.xml: + Added manual points facet to output modes. + +2012-04-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/fixoverview2html.xsl: Render optional check boxes. + Use different font. TODO: Move to client, + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Ignore hours and seconds. + +2012-04-13 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 528, 637 + + * src/main/java/de/intevation/flys/artifacts/model/WWQQJRDataSource.java: + Added fields for new columns. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Added columns for 'W at gauge' and fixed column header. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added filenames for new pdf export templates. + +2012-04-13 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/jasper/reference_gauge_end.jasper, + doc/conf/jasper/reference_gauge.jasper, + doc/conf/jasper/reference_gauge_start_end.jasper: + Small fixes in pdf templates. + +2012-04-12 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 528, 637. + + * doc/conf/jasper/reference_gauge.jasper, + doc/conf/jasper/reference_en_gauge.jasper: + Modified templates. + + * doc/conf/jasper/reference_gauge_end.jasper, + doc/conf/jasper/reference_gauge_start_end.jasper, + doc/conf/jasper/reference_en_gauge_end.jasper, + doc/conf/jasper/reference_en_gauge_start_end.jasper: + New. Templates for reference curve pdf export. + +2012-04-12 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 528, 637. + + * doc/conf/jasper/reference.jasper, + doc/conf/jasper/reference_en.jasper: + Fixed column header. + + * doc/conf/jasper/reference_gauge.jasper, + doc/conf/jasper/reference_en_gauge.jasper: + New. + +2012-04-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/check-i18n-properties.py: Checked in unsaved version. :-/ + +2012-04-11 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 656. + + * src/main/resources/messages_en.properties: + Added missing i18n strings. + +2012-04-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/check-i18n-properties.py: New. Script to check inconsistencies + of i18n properties files: Detects duplicates and keys not defined in other + properties files. Usage: + + $ find -name messages\*.properties | \ + xargs contrib/check-i18n-properties.py + +2012-04-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Generate error message when more than one Q is found for given + Q in "W auf freier Strecke". + + * src/main/java/de/intevation/flys/artifacts/model/Calculation.java: + Added feature to adopt problems from other reports. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n for the error message. + +2012-04-11 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Use factor to calculate steps in range input mode. + +2012-04-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/cache.xml: Increased number of fixings columns a bit. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsColumnFactory.java: + Corrected misspelled cache name. Added bebug output. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverviewFactory.java: + Added debug output. + +2012-04-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Small fixes: The service works as expected but there seems + to be a caching issue. + +2012-04-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Generate chart and deliver the image as the response of the service. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsColumnFactory.java: + Return null when looking for a fixing data column that does not exist. + +2012-04-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsColumnFactory.java: + Load ws and qs from database. Cache the fixings columns. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsColumn.java: + Removed column id and added q values. + + * doc/conf/cache.xml: Added cache for the columns of the fixings. + +2012-04-05 Raimund Renkert <raimund.renkert@intevation.de> + + Fix for 'W free' validation and theme names. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Append the current Q values to theme name if the previous theme has + the same name. + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Use the start km to get min/max W values in distance mode and use the + first km to get min/max W values if in location mode. + +2012-04-05 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 499. + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Added validation for 'W free' using WstValueTable min/max values. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Added getter for WstValueTable. + +2012-04-05 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Defined a theme for WSPLGEN layers. + + * src/main/java/de/intevation/flys/artifacts/model/MapserverStyle.java: + Made style creation more robust against nullpointers and added an + Expression class. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Added a static + method createWSPLGENStyle() and some helpers to create a WSPLGEN style. + + * src/main/java/de/intevation/flys/exports/MapGenerator.java, + src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Methods + for creating the WSPLGEN layer now take a style document. + +2012-04-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + Extract parameters from input xml and fetch fixings filters and overview + to find the columns to be viewed. + TODO: Generate chart. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsColumn.java: Added + boolean result to indicate if value comes from table or is interpolated. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsColumnFactory.java: + New. Factory to fetch fixings column data from cache or database. Stub by now. + +2012-04-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsKMChartService.java: + New. Service to generate a chart of fixings for given river and km applied + some filters. + + Usage: + $ curl http://localhost:8181/service/fixings-km-chart \ + -d @fix-overview.xml > chart.png + + The input XML is nearly the same as for the overview service. + Besides the river, filters and range it accepts elements + <km value="..."/> for passing the river km, + <extent width="..." height="..."/> for the extent of the output chart, + <mime type="..."/> for type of result. Currently ignored. + + ATM only a static fixed sized PNG image is delivered. + + * doc/conf/conf.xml: Added service to list of services. + +2012-04-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Made bullet proof for null filters and ranges. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsFilterBuilder.java: + Fixed bug which leeds to always generating a null range filter. + +2012-04-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Squashed performance bug introduced in rev4070, which slowed down + CSV export about 245 times! + + * src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java: + Added debug output about savings when joining neighbored nodes. + +2012-04-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsOverviewService.java: + Removed the code for filter building. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsFilterBuilder.java: + New. Now contains the code for filter building. This useful because other + services like the "Fixierungs-Rohdaten am KM" service need this filtering, too. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Refactored the code to obtain a filtered list of fixings columns without + the XML serialization, too. The "Fixierungs-Rohdaten am KM" service + does not need the overview data but the ids of the fixing columns to be + displayed. + +2012-04-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/CacheInvalidationService.java, + src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java, + src/main/java/de/intevation/flys/artifacts/services/FLYSService.java: + Derive from XMLService now. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Removed superfluous import. + +2012-03-30 Ingo Weinzierl <ingo@intevation.de> + + flys/issue460 (W-Differenzen: Frühere Berechnungen aus den Datenkorb werden doppelt geladen) + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Removed + code to find out all Outputs of this Artifacts. A method getOutputs() + had been implemented some time ago that does exactly this work. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Heavy + bugfix! Adding the current state id to the list of previous state ids + for temporary usage was no good idea! Now, the list of previous state + ids only modifified in advance(). This solves the problem of having + duplicated Outputs in the Artifact's DESCRIBE document. + +2012-03-29 Ingo Weinzierl <ingo@intevation.de> + + flys/issue366 (W-INFO / Abflusskurve, Diagramm: Umbenennen von Themen und Anzeige im Diagramm) + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Use description from ArtifactAndFacet objects for JFreeChart Series + creation. + +2012-03-28 Ingo Weinzierl <ingo@intevation.de> + + flys/issue362 (W-Info / Abflusskurve, Diagramm) + + * doc/conf/themes.xml: Adjusted text color of w and q main values for + computed discharge curves. + +2012-03-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + flys/issue639: Bezugsliniendiagramm,Achsen-Intervall-Skalierung vereinheitlichen + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Render only axis ticks in meters. + +2012-03-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Let hyks have a text orientation in themes. + +2012-03-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue491, if area fill between curve and axis, draw not only + to zero. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java + (doArea): Add an artificial dataset to set lower bounds for area. + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java + (addPoints): New convenience method to be used in future. + (createGroundAtInfinity, createCeilingAtInfinity): Create artificial + datasets for better areas. + +2012-03-20 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 506. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Create the date from long values instead of the year. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: + Added method to transform a String into an array of long values. + + * doc/conf/artifacts/winfo.xml: + changed data type from intrange to longrange. + +2012-03-20 Ingo Weinzierl <ingo@intevation.de> + + flys/issue544 (Historische ATs: Eingabeunterstützung W/Q) + + * src/main/java/de/intevation/flys/artifacts/services/GaugeInfoService.java: + New service that returns information for gauges based on a specified + river. + + * doc/conf/conf.xml: Registered the GaugeInfoService. + +2012-03-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/DischargeInfoService.java: + Skip DischargeTables that have no time interval set or that are marked + as master DischargeTable. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: Skip + DischargeTables that have no time interval set. + +2012-03-20 Ingo Weinzierl <ingo@intevation.de> + + flys/issue146 (In WINFO Diagramm Abflusskurve raus, wenn nicht gewünscht) + + * doc/conf/artifacts/winfo.xml: Do not create outputs for discharge curves + at gauge any longer. + +2012-03-20 Ingo Weinzierl <ingo@intevation.de> + + flys/issue252 (W-INFO: Wasserspiegellagenberechnung / Mitführung der Jährlichkeiten in der Diagramm-/Ergbnisausgabe) + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Added + the numeric value of a selected named main value to the WST column name. + +2012-03-16 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/db_layer.vm: Set the FILTER expression into double + quotes (") instead of single quotes (') which allows single quotes in + expressions. + + * doc/conf/meta-data.xml: Moved the floodmaps from kilometrage to its + parent folder. + + * src/main/java/de/intevation/flys/artifacts/WMSFloodmapsArtifact.java: + Fixed broken filter expression and set geometry type (MapServer does not + know a 'MULTIPOLYGON'). + +2012-03-16 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Remove unnecessary outputs from attributes instead of copying outs to + new attribute element. + +2012-03-16 Ingo Weinzierl <ingo@intevation.de> + + * Tagged module as 'pre2.7-2012-03-16'. + +2012-03-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Removed useless imports. + +2012-03-16 Ingo Weinzierl <ingo@intevation.de> + + flys/issue523 (W-INFO / Bezugslinienverfahren / Linieneinstellungen / Min+Max anzeigen) + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Improved the look of the minimum and maximum shape of a series. They are + now rectangles with a darker fill color as the line color is. + +2012-03-15 Ingo Weinzierl <ingo@intevation.de> + + flys/issue522 (W-INFO / Bezugslinienverfahren / Schriftgröße der Achsenbeschriftung) + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Label and + tick label fonts for axes will now always be the same. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Removed the createYAxis() method which is already implemented in an + upper class. There, the method also takes the ChartSettings into account. + +2012-03-15 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 547. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveExporter.java: + Use date format with MEDIUM style. + + * src/main/java/de/intevation/flys/utils/Formatter.java: + Added date format with MEDIUM style. + +2012-03-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartHelper.java: Added a new + method that returns the Bounds for a given XYDataset. Based on the + concrete type of the XYDataset, the call is dispatched to a more specific + method. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Removed the whole "range" stuff and some methods that are implemented in + upper classes. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Removed the + setXRange() and setYRange() methods. In our own code, we will use Bounds + instead of JFreeChart's Range instances to save range/bounds information. + This is necessary to save information which is not not from type double + (which is the case in Timeseries charts). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Replaced + usage of Range with Bounds in the whole class. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Adapted the method signature of zoom() and zoomX(). + +2012-03-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Copied the adjustAxes() method from XYChartGenerator which enables axes + label font sizes. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + Removed unnecessary axes creation method which is implemented in upper + classes. + +2012-03-14 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 640. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Remove all unnecessary output settings from attributes. + +2012-03-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial for flys/issue358, rough stub for legenditem aggregation. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Added rough stub for legend aggregation. + +2012-03-08 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Fixed broken XML syntax. + +2012-03-08 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Modified the datacage structure of 'floodmaps'. + +2012-03-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSFloodmapsArtifact.java: New. + This Artifacts allows loading 'floodmaps'. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added a + new Facet type "floodmap.floodmaps" which are created by + WMSFloodmapsArtifact. + + * doc/conf/artifacts/winfo.xml: Registered the "floodmap.floodmaps" facet + for "floodmap" output. + + * doc/conf/conf.xml: Registered the new WMSFloodmapsArtifact. + + * doc/conf/themes.xml: Added a theme for the "floodmap.floodmaps" facet. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n string for + "floodmap.floodmaps" title. + +2012-03-08 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Improved datacage configuration to serve + floodmaps. + +2012-03-05 Ingo Weinzierl <ingo@intevation.de> + + flys/issue566 (ÜSK: Formalien in der Parametrisierung) + + * src/main/java/de/intevation/flys/artifacts/states/FloodplainChoice.java: + Override getLabelFor() method to return better I18N strings for selected + floodplain option. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added options + for floodplain (active/inactive) and adapted a german I18N string. + +2012-03-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue 528 for csv. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Fixed column order, reworked todos. + +2012-03-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Fixed column order. + +2012-03-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Stub to export the "W (cm)" column conditionally on Gauge presence. + +2012-03-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/StepCSVWriter.java: + New utility to handle csv rows of more "dynamical" length. + +2012-03-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/StepCSVWriter.java: + New utility to handle csv rows of more "dynamical" length. + +2012-03-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue501 (manual points have two legend entries). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Respect wish to not have a legend entry. + +2012-03-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue636 (cross-section: name of waterlevel facets). + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Corrected name for waterlevel facets. + +2012-03-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial fix flys/issue615 (datacage: events for fixations). + + * doc/conf/meta-data.xml: Adjusted to make loading single events + possible. + +2012-03-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial Dontcrash on flys/issue647 (NaNs from WstValueTable interpolation). + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java: + Do not add data pairs where a NaN is present. + +2012-03-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Cosmetics, doc. + +2012-02-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Added functions to be used for fitting in + the "Fixierungsanalyse" and "Extremwertermittlung". + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Function.java: New. + Abstract base class for functions to fit. Provides the name of the function, + a short description, the names of the parameters and an initial parameter guess + for the fit processe. Sub classes have to overwite the function evaluation and + the partial derivative of the function in respect to the parameters. + + TODO: Add a meachnism for the inverse function (needed for AT export) and + the first derivative (needed for the respective diagram). + + * src/main/java/de/intevation/flys/artifacts/math/fitting/FunctionFactory.java: + New. Factory to fetch a function by its name. + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Exp.java: New. + exp: W(Q) = m * a^Q + b + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Quad.java: New. + quad: W(Q) = n*Q^2 + m*Q + b + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Linear.java: New. + linear: W(Q) = m*Q + b + + * src/main/java/de/intevation/flys/artifacts/math/fitting/LogLinear.java: New. + log-linear: W(Q) = a*ln(m*Q + b) + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Log.java: New + log: W(Q) = m*ln(Q + b) + + * src/main/java/de/intevation/flys/artifacts/math/fitting/Pow.java: New. + pow: W(Q) = a*Q^c + d + + !!! This power function is new in the pool of functions to be fit. !!! + See my mail "Manuelle Punkte in der Fixierungsanalyse" 2011-10-27 for details. + The function exp-new found in the old FLYS function pool is omitted + because it is worthless and was maybe never used. + + * src/main/java/de/intevation/flys/artifacts/math/fitting/App.java: New. + Small test driver to check if the fitting is working. The points to + fit are read from stdin the function to fit is determined by the + system property 'function'. Example usage: + + $ mvn -e \ + -Dfunction=linear \ + -Dexec.mainClass=de.intevation.flys.artifacts.math.fitting.App exec:java <<EOF + 357.390696917 7546.72096163 + 61.4291036312 1334.54835721 + 799.962128234 16836.7698076 + 126.52761023 2703.69789985 + 900.448553398 18955.0578748 + EOF + +2012-02-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/resources/messages_de.properties: + Added ommitted translations. + +2012-02-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + fix flys/issue638. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java + (doArea): Ract to WKms as upper/lower area data again. + +2012-02-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial fix flys/issue637. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java, + src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Modified translations. + +2012-02-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + - Calculate the extent of the river by the extents of the fixings. + Reason: The river Elbe has only has fixings up to km 351. The other half + of the river is empty which results in a sparse looking overview. + - Add the name of the river as name attribute to resulting <river> element. + + * contrib/fixoverview2html.xsl: New. Demo XSL transformation to turn + the output of the overview service directly into HTML. Used in the + client a variant of this script could be used for producing the content + of the assistance widget. Usage: + + $ curl http://localhost:8181/service/fixings-overview \ + -d @fix-overview.xml | \ + xsltproc contrib/fixoverview2html.xsl - \ + > fixings-overview.html + +2012-02-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FixingsOverviewService.java: + Made the filter mechanisms available via the incoming XML document. + + 1 - range: Simply add a <range from="..." to="..."/> element next to the + <river> element. Optional. Defaults to full extent. + + 2 - filters: Add a <filter> element next to the <river> element. + Optional. Defaults to accepting all. + The <filter> element can contain the following elements: + + <column cid="..."/>: Creates an IdFilter. + <date when="..."/>: Creates a DateFilter. + <date-range from="..." to="..."/>: Creates a DateRangeFilter. + <sector-range from="..." to="..."/>: Create a SectorRangeFilter. + <not>...</not>: Creates a NotFilter. The nested element is negated. + <and>...</and>: Create an AndFilter: The nested elements are 'and'ed. + <or>...</or>: Create an OrFilter: The nested elements are 'or'ed. + + These filters need testing! + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Made date format a public constant. + +2012-02-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Added a filter mechanism for generating output. + + There are two kinds of filters: + + 1 - A range. Defaults to [-Double.MAX_VALUE, Double.MAX_VALUE] + The resulting sectors are cut to this range. Sectors outside + this range are omitted. + + 2 - column filters: Given a fixing column they can decide to keep + or not to keep it. Following filters exist: + + - IdFilter: Keep column if column id matches. + - DateFilter: Keep column if column date matches. + - DateRangeFilter: Keep column if column date is in range. + - SectorRangeFilter: Keep colum if one of its q sectors is in given range. + - NotFilter: Negates another nested filter. + - AndFilter: Keep column if all nested filters accept column. + - OrFilter: Keep column if at least one of the nested filters accepts it. + +2012-02-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + Refactored to build the Q sectors once at construction time and not + every time output is generated. + This will ease the job of applying filters to the Overview. + +2012-02-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Service to generate the data needed to build the "Fixerungen pro Fluss Uebersicht" + + * src/main/java/de/intevation/flys/artifacts/services/FixingsOverviewService.java: + New. A service that serves an XML overview version of the fixings of a given river. + + The input documents look like this: + + <?xml version="1.0" encoding="UTF-8"?> + <fixings> + <river name="Saar"/> + </fixings> + + The output documents looks like this: + + <?xml version="1.0" encoding="UTF-8"?> + <fixings> + <river from="0.0" rid="1" to="93.0"/> + <events> + ... + <event cid="85" date="29.01.1995 00:00" name="Fixierungen/0-93_1988-2001.wst"> + <sector class="0" from="82.7" to="92.85"/> + </event> + <event cid="86" date="13.11.1996 00:00" name="Fixierungen/0-93_1988-2001.wst"> + <sector class="2" from="0.0" to="50.599999"/> + <sector class="1" from="50.6" to="65.89"/> + </event> + ... + </events> + </fixings> + + The <river> element contains the extent of the whole river + and its db id. + The <events> sections contains serveral <event> elements. + They have a meassure date, db id, a name and a number of <sector>s. + These sectors are q classified from/to ranges. Classes are: + + 0: smaller (MNQ+MQ)/2 + 1: (MNQ+MQ)/2 to (MQ+MHQ)/2 + 2: (MQ+MHQ)/2 to HQ5 + 3: greater HQ5 + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverview.java: + New. Cacheable instance of the overview. + TODO: Apply a filter mechanism when generating the output. + + * src/main/java/de/intevation/flys/artifacts/model/FixingsOverviewFactory.java: + New. Fetched the fixing overviews from cache if configured. + + * doc/conf/conf.xml: Added the service. + * doc/conf/cache.xml: Configured the cache for the fixing overviews. + +2012-02-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java(getMinMaxQ): + Argh! Forget to check in the range method. + +2012-02-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java(getMinMaxQ): + Symmetrical to getMinMaxW() add two methods to find min/max Q for a given + km or a range. The range method is maybe a bit slow. + +2012-02-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java(getMinMaxW): + Added signature to give w extend for a given km range. + +2012-02-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java(getMinMaxW): + Added method to find the w extent for a given km. Useful + for validating "W auf freier Strecke". + + * src/main/java/de/intevation/flys/artifacts/model/HYKFactory.java: + Removed superfluous import. + +2012-02-17 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java, + src/main/java/de/intevation/flys/utils/FLYSUtils.java, + doc/conf/artifacts/winfo.xml: + Renamed state data fields: wq_mode -> wq_isq + wq_free -> wq_isfree + wq_selection -> wq_isrange + +2012-02-17 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Write the description instead of the Q value to CSV file. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java: + Added parameter to overriden method. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: + Get Qs without range. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Adjusted i18n string for CSV metadata. + +2012-02-17 Ingo Weinzierl <ingo@intevation.de> + + Part II/III flys/issue497 (Diagrammeigenschaften in Zeitseriendiagrammen) + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Apply legend specific settings (show/hide). + +2012-02-17 Ingo Weinzierl <ingo@intevation.de> + + Part I/III flys/issue497 (Diagrammeigenschaften in Zeitseriendiagrammen) + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Moved + adjustPlot() from XYChartGenerator to ChartGenerator which enables the + TimeseriesChartGenerator to call this method as well. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Call adjustPlot() in generateChart() to apply the settings specific to + gridlines in the timeseries plot. + +2012-02-16 Raimund Renkert <raimund.renkert@intevation.de> + + Refactored the wq data fields. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Changed the wq data fields to boolean values. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: + Changed the wq data fields to boolean values and added method that + returns the km input mode. + +2012-02-16 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + Fixed W->Q conversion for "W fuer ungleichwertige Abflusslaengsschnitte." + +2012-02-16 Ingo Weinzierl <ingo@intevation.de> + + flys/issue509 (Dauerlinie: Q-Achse sollte bei 0 beginnen) + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Set the lower bounds of the Q axis to 0 to avoid displaying negative + discharge values. + +2012-02-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WKmsImpl.java, + src/main/java/de/intevation/flys/artifacts/model/WKms.java: + (guessWaterIncreasing): Removed from interface. + +2012-02-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue150 (exposure of gravitational anomalies) + + * src/main/java/de/intevation/flys/artifacts/model/WKmsImpl.java, + src/main/java/de/intevation/flys/artifacts/model/WKms.java: + (guessWaterIncreasing): In analogy to W->WQ->WQKms defined and + implemented. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + (needInvertAxis): Changed Parameter type to WKms (was WQKms). + (doW): Use in this case weaker wkms cast to find out whether axis + has to be inverted. + +2012-02-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/HYKFactory.java: Fixed + SQL statement to fetch hyk formations for rivers with 'km_up' = 0. + +2012-02-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Another partial fix for flys/issue499: Do the W to Q conversions + needed for "W am Pegel" correctly. + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Repaired getQsForW(): The mapping from W to Q is not unique! There + could be more then one Q having the the same W. + Ws are not strictly monoton/sorted so doing a binary search on this + is just a fail. We now scan them linearly. + + XXX: The whole class is mess. The scaling stuff is a stupid + and there is no caching. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Fetch the master discharge table for converting Ws to Qs. Handle + the case that there are more Qs for a given W. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + Adjusted to new semantic. + +2012-02-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial Fix flys/issue500: text-orientation for texts. + + * doc/conf/themes.xml: Change default text orientation for text + annotations. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Minor cosmetics. + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java: + Parse and apply text rotation field. + +2012-02-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Partial fix for flys/issue499 (Wasserspiegellagen: Berechnung für W frei und Pegel kaputt) + There are still validation issue in the client. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Fixed state evaluation for "W auf freier Strecke"/"W am Pegel". + There is still an issue in the client with the input validation + which prevents entering the right W values for + "W auf freier Strecke". :-/ + +2012-02-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Make it compilable again. + +2012-02-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial Fix flys/issue500: text-backgrounds for manual points. + + * doc/conf/themes.xml: Added text-related style items to manual + point themes. + +2012-02-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial Fix flys/issue500 + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java: + Parse whether to show text background. Apply to textannotation. + +2012-02-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue490 + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Pass artifact and facet for doAnnotation. + +2012-02-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WWAxisTypes.java: + Use AddScaleFunction instead of LinearFunction. + + * src/main/java/de/intevation/flys/artifacts/math/AddScaleFunction.java: + New. f(x) = m*(x+b). I know its aequivalent to m*x + m*b but it + makes more clear that the datum [m] (PNP) is substracted before the + scaling to cm is done. + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Bugfix: take + care on empty ArtifactAndFacet objects in doAnnotations(). + +2012-02-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/NormalizedReferenceCurveGenerator.java: + Inherits from ReferenceCurveGenerator now which really simplifies it a lot. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Added to methods to be overwritten by sub classes. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Adjusted i8n. + +2012-02-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WWAxisTypes.java: + Indexed access to getInCm. + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + Simplified. Do not provide any data to blackboard. Only side effect the + call context. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Added convinience method to i18n string with defaulting to key name. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Label the axis according the scale types of the data. + TODO: Let the NormalizedReferenceCurveGenerator be a sub class of + this. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: i18n for the reference curve axes. + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveExporter.java: + Fixed wrong double array dimension for PDF exports and write correct + differences into PDF. + +2012-02-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java, + src/main/java/de/intevation/flys/artifacts/model/BlackboardDataFacet.java: + Adjust function to deliver data provider ('blackboard') keys. + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + Change the way we exploit the blackboard-mechanism. TODOs added. + +2012-02-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Argh! Finally found the stupid bug in the W~W relation: + Used iQ1 index on W2(Q2). + +2012-02-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Improved error messsages even more. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Adjusted messages. + +2012-02-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + Forget to put new created WWAxisType onto blackboard. + +2012-02-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WWAxisTypes.java: + Adjust offset of linear function by same factor as the values. + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: Write + correct min and max values for date axes into the info document. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Enabled zooming for timeseries charts. + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/jfree/Bounds.java, + src/main/java/de/intevation/flys/jfree/TimeBounds.java, + src/main/java/de/intevation/flys/jfree/DoubleBounds.java: Added a method + applyBounds(ValueAxis, int) that might be used to adapt the range of the + axis to the bounds adding a space to the left and right. + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Defined + new abstract methods for setting and getting Bounds. Modified and + renamed getValueAxisRange(). This method is now called + getValueAxisRangeFromRequest() and returns no longer a Range object but + a String array that consists of the raw string values speicified in the + request document. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Implemented the missing method getDomainAxisRange(). This method returns + a Range object based on the String array returned from + getValueAxisRangeFromRequest(). + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/jfree/TimeBounds.java: Added new + methods getLowerAsDate() and getUpperAsDate(). The toString() method + will now return a string that contains a human readable date string. + + * src/main/java/de/intevation/flys/jfree/DoubleBounds.java: Made 'lower' + always be smaller than 'upper' in the default constructor. + +2012-02-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Give more precise message when an error occurs in W~W relation. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Improved error messages. + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Modified + and renamend getDomainAxisRange(). This method is now called + getDomainAxisRangeFromRequest() and returns no longer a Range object but + a String array that consists of the raw string values specified in the + request document. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Implemented the missing method getDomainAxisRange(). This method returns + a Range object based on the String array returned from + getDomainAxisRangeFromRequest(). + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartHelper.java: Added a + helper function to determine the min and max bounds (x and y) for + TimeSeriesCollections. + +2012-02-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/jfree/TimeBounds.java, + src/main/java/de/intevation/flys/jfree/DoubleBounds.java: Removed + useless imports. + +2012-02-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WW.java: + Add accessors to relative heights. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Add relative heights (to gauge) to csv export. + +2012-02-09 Ingo Weinzierl <ingo@intevation.de> + + * pom.xml: Added dependency to GeoTools swing module. + + * src/main/java/de/intevation/flys/artifacts/map/PrintMap.java: Standalone + demo application to print WMS layers to file. + +2012-02-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/jfree/TimeBounds.java, + src/main/java/de/intevation/flys/jfree/DoubleBounds.java, + src/main/java/de/intevation/flys/jfree/Bounds.java: New model classes that + should be used for adapting axes ranges later. + +2012-02-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation5.java: + Generate a valid intial i18n name. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + Pass call context to calculation. + +2012-02-09 Ingo Weinzierl <ingo@intevation.de> + + flys/issue485 (Themen können umgenannt werden, dies wird nicht in der Legende reflektiert) + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Use ArtifactAndFacet.setFacetDescription() to set the description for + themes which are stored in the Collection's XML attribute. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/NormalizedReferenceCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Some refactoring of doXXXOut() methods. We pass the ArtifactAndFacet + objects of doOut() into those concrete doOut() methods which allows us to + generate series names for chart curves. + +2012-02-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Replaced dashes by underscores in entities + to ease translation. + +2012-02-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/NormalizedReferenceCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Fixed problem with including Y-Zeros. + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Removed superfluous imports. + +2012-02-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Allow points in "new chart"s. + + * doc/conf/artifacts/chart.xml: Added manualpoint facets to + compatibility lists. + +2012-02-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/jfree/Style.java: New. A Style object + needs to implements a method applyTheme() which takes a + XYLineAndShapeRenderer. + + * src/main/java/de/intevation/flys/jfree/XYStyle.java: New. This subclass of + Style modifies the XYLineAndShapeRenderer specified in applyTheme(). + + * src/main/java/de/intevation/flys/jfree/StyledSeries.java: New. This + interface defines two methods getStyle() and setStyle() to adjust and + retrieve the Style of a series. + + * src/main/java/de/intevation/flys/jfree/StyledTimeSeries.java: New. + Implementation of StyledSeries that subclasses JFreeChart's TimeSeries. + + * src/main/java/de/intevation/flys/jfree/StyledXYSeries.java: Removed the + code for adapting a XYLineAndShapeRenderer. Instead of implementing this + stuff in StyledXYSeries itself, this instance now implements StyledSeries + and stores an instance of XYStyle. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + Create new instances of StyledTimeSeries now which enables styling in this + chart. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Enabled + styling of series for all series that implement StyledSeries. + +2012-02-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java(relateWs): + Be more conservative about arrays and indices in "Bezugslinienverfahren". + +2012-02-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Allow areas in new chart/longitudinal_section. + + * doc/conf/artifacts/chart.xml: Added area facet to compatibility + list. + +2012-02-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue490. Allow CollisionFree..Annotations to collide with + non-collision-free annotations. + + * src/main/java/de/intevation/flys/jfree/CollisionFreeXYTextAnnotationEntity.java: + New, to take advantage of cheap instanceof operator. + + * src/main/java/de/intevation/flys/jfree/CollisionFreeXYTextAnnotation.java: + Only avoid collisions with members of same family (i.e. allow + collision with annotations of other types). + +2012-02-09 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added themes for historical discharge curves and + the differences to a reference curve. + +2012-02-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: Some + bugfixes and improvements: + 1) take only historical discharge tables into account for calculation + 2) use the correct values for computing differences + 3) moved timerange preparation into an own method + +2012-02-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/EnterMultipleLocationsState.java: + Fix call to StringUtils.join . + +2012-02-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n string for waterlevels (from datacage). + +2012-02-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/EnterMultipleLocationsState.java: + Locale-format multiple double values also. + +2012-02-09 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Registered a new facet for difference curves + to the historical discharge output. + + * src/main/java/de/intevation/flys/artifacts/model/HistoricalWQTimerange.java: + New model that is able to store a further double value "diff" besides a W, + Q and a Timerange. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: Create + new HistoricalWQTimerange instances with difference between the reference + discharge table and the historical discharge tables. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: New type + for historical differences. + + * src/main/java/de/intevation/flys/artifacts/model/WQTimerange.java: Cast + Timerange array in getTimeranges(). + + * src/main/java/de/intevation/flys/artifacts/model/HistoricalDischargeDifferenceFacet.java: + New Facet for historical discharge difference curves. + + * src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeComputeState.java: + Create new Facets for the difference curves if the processed data are from + type HistoricalWQTimerange. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + Added doOut() path for difference curves. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveExporter.java: + Increased the size of a double array to be able to get results from + HistoricalWQTimerange. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added translation for warning + if no reference discharge table was found for the specified gauge. + +2012-02-09 Raimund Renkert <raimund.renkert@intevation.de> + + Added PDF export to reference curve calculation. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Added PDF export. + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java, + doc/conf/artifacts/winfo.xml: + Add facet for PDF export to state. + + * src/main/java/de/intevation/flys/artifacts/model/WWQQJRDataSource.java: + New. Datasource for JasperReports containing reference curve data. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings for JasperReports template file and calculation mode. + + * doc/conf/jasper/reference.jasper, + doc/conf/jasper/reference_en.jasper: + New. Templates for reference curve PDF export. + +2012-02-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java(getReferenceEndKms): + Prevent duplicates in end kms for reference curve calculation. + +2012-02-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + doc/conf/artifacts/winfo.xml: Renamed data item names to allow + translations. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + Give (Normalized)ReferenceCurveFacets are more appropriate + description (to be seen in client). + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Prepare Reference curves to eat multiple locations as 'Ziel'. + + * src/main/java/de/intevation/flys/artifacts/states/EnterLocationState.java: + Cosmetics. + + * src/main/java/de/intevation/flys/artifacts/states/EnterMultipleLocationsState.java: + New. State to provoke multi_location_panel. + + * doc/conf/artifacts/winfo.xml: Made end state of ref curves a (new) + EnterMultipleLocationState. + +2012-02-08 Ingo Weinzierl <ingo@intevation.de> + + flys/issue483 (Historische Abflusstafeln ohne Ergebnis) + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: Add + a problem for the calculation report if no discharge tables were found + for the given timerange. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added translation for error + messages created by Calculation6. + +2012-02-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/Formatter.java: + Format kms in error reports at least with one digit after + the decimal separator. + +2012-02-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix flys/issue468 (Fehler beim Projekt-Duplizieren) + + * src/main/java/de/intevation/flys/exports/ReportGenerator.java: + Always create a new XML document when calling report generation. + XXX: There is a bug somewhere which calls error reporting twice + when cloning a collection. Speculation: It has something to do with + the settings stuff. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Remove superfluous imports. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENCalculation.java: + Added missing Override annotation. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Handle Manual Point Facets, added TODO. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java: + Subclass BlackboardDataFacet to repair areas over cross sections. + +2012-02-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Let text + and line annotations placed at x or y axes always be in foreground. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue474 (manual points in reference curves). + + * doc/conf/artifacts/winfo.xml, + doc/conf/artifacts/manualpoints.xml: + Add manualpoints to lists just so that really everybody knows. + + * doc/conf/themes.xml: Add styles for manual points in ref curves. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Add ref curve chart types. + + * src/main/java/de/intevation/flys/exports/NormalizedReferenceCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Handle manual point facets. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial Fix flys/issue474. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added translation for + normalized_reference_curve. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue475. + + * doc/conf/themes.xml: Register theme for reference_curve_normalized. + +2012-02-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Add a "/" to the + URL of the user wms if the URL configured in conf.xml doesn't end with + a "/". + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue472. + + * doc/conf/themes.xml: Added theme for discharge_curve manualpoints. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added discharge_curve as chart type. + +2012-02-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix flys/issue484 ((i18n: Ungleichwertige... Report)) + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Fixed key spelling. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue478 (Manuelle Punkte: Stil nicht änderbar). + + * doc/conf/themes: Map correct theme to manualpoint themes. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial fix flys/issue472 . + + * doc/conf/artifacts/winfo.xml: Add manual points to compatibility + list of cross_sections. + + * doc/conf/artifacts/manualpoints.xml: Add manualpoints to list of + generated facets. + +2012-02-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Commented styling option for show area until + area calculation works. + +2012-02-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation.java: + i18n the km of the error report. + + * src/main/java/de/intevation/flys/artifacts/resources/Resources.java: + Fixed potential race conditions. + + * src/main/java/de/intevation/flys/utils/Formatter.java: Added + formatter for error report kms. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java: + Removed superfluous imports. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Commented out some imports. They are used be out commented code. + +2012-02-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/LocationProvider.java: + Use the correct km key for an unspecific km for fetching the whole river + annotations. + +2012-02-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Added missing config of chart info generator + of normalized reference curve. + +2012-02-07 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Fixed wrong chart info generator name for historical + discharge curves. + +2012-02-07 Raimund Renkert <raimund.renkert@intevation.de> + + Added PDF export for historical discharge curve calculations. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveExporter.java: + Implemented PDF export for calculation results. + + * src/main/java/de/intevation/flys/artifacts/model/WQTJRDataSource.java: + New. Datasource for JasperReports. + + * doc/conf/artifacts/winfo.xml: + Added facet for PDF export to historical discharge curve output mode. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings for historical discharge curve export. + + * doc/conf/jasper/historical-discharge.jasper, + doc/conf/jasper/historical-discharge_en.jasper: + New. Templates for JasperReports PDF creation. + +2012-02-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Handle WWQQs, extended CSV export of reference curves. + +2012-02-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/DurationCurveExporter.java, + src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Recactored, moved Formatter accessors to base class AbstractExporter. + +2012-02-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Let reference curve calculation result in specific WWQQ, extended CSV + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java + (getWW,getWWQQ): Renamed and changed result type. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation5.java, + src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + Result in WWQQs, not in WWs. + +2012-02-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Log error as warning. + +2012-02-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/LinearFunction.java: + New. Linear function f(x) = m*x + b. + + * src/main/java/de/intevation/flys/artifacts/model/WWAxisTypes.java: + Do the normalizing. Cascading functions is not required. + +2012-02-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/NormalizedReferenceCurveInfoGenerator.java: + Added missing chart info generator for the normalized reference curves. + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties: Fix i18n. + +2012-02-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WWAxisTypes.java: + Added optional boolean flag to indicated if the data should be 'normalized'. + TODO: Build the cascading normalising function call chain. + + * src/main/java/de/intevation/flys/exports/NormalizedReferenceCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Fetch WWAxisTypes from call context to do the right scaling. + +2012-02-06 Raimund Renkert <raimund.renkert@intevation.de> + + Added service for discharge infos at a specific gauge. + + * doc/conf/conf.xml: Added service factory entry. + + * src/main/java/de/intevation/flys/artifacts/services/DischargeInfoService.java: + New. Returns description, start year and end year of discharges at a + specific gauge. + + * src/main/java/de/intevation/flys/artifacts/states/GaugeTimerangeState.java: + Return a more specific ui provider string. + +2012-02-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Registered generator for normalized reference curves. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added "reference_curve_normalized". + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + Added facets for normalized reference curves. + + * src/main/java/de/intevation/flys/exports/NormalizedReferenceCurveGenerator.java: + Generator for normalized reference curves. + +2012-02-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added config for "reduzierte Bezugslinie". + +2012-02-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added error report. + +2012-02-06 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: Set + proper bounds for date axis elements; tell the transformation matrix which + type it is (number/date). + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Include location description string in csv output of referencecurve- + exporter. + +2012-02-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WW.java: Added constructor call. + * src/main/java/de/intevation/flys/artifacts/model/WWQQ.java: New. + Stores the Qs for the Ws, too. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation5.java: Create + WWQQs instead of WWs. + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Added further i18n stubs and slightly more data. + +2012-02-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java(relateWs): + Return the Qs of the Ws, too. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation5.java: + Adjusted to cope with the return Qs. TODO: Create WQWQ or WWQQ dataset + for storing the result. + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Added further i18n stubs. + Also added a second Y axis (experimental, to ease axis labeling etc.). + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Register new export output and csv + facet for reference curves. + + * doc/conf/conf.xml: Register Exporter for reference curve. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java: + Primitive exporter, bland copy of another one. + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Enabled some i18n of labels. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Basic i18n for reference + curves added. + +2012-02-06 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Registered the HistoricalDischargeCurveInfoGenerator. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveInfoGenerator.java: + New. This info generator returns information of a + HistoricalDischargeCurveGenerator. + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: Add an + attribute "axistype" to axes nodex based on the JFreeChart Axis type. + Number axes get a "number", date axes a "date". + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Defined an + abstract method getRangesForAxis(). + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: Awaits + now an instance of ChartGenerator instead of XYChartGenerator. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Implemented the getRangesForAxis() method (copied from XYChartGenerator). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Added + @Override annotation to getRangesForAxis(). + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java, + src/main/java/de/intevation/flys/exports/WDifferencesExporter.java: + Cosmetics. + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + Add CSV facet (not yet evaluated). + +2012-02-06 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveExporter.java: + New. This OutGenerator exports historical discharge curves to CSV and PDF. + Currently, only the CSV export is implemented! + + * doc/conf/artifacts/winfo.xml: Registered a new Output CSV for historical + discharge curves. + + * doc/conf/conf.xml: Registered the HistoricalDischargeCurveExporter. + + * src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeComputeState.java: + Generate new Facets for CSV and PDF output. + + * src/main/java/de/intevation/flys/utils/Formatter.java: Added new functions + that return number formatters for historical discharge curves and a date + formatter for short dates. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added strings for CSV header of + historical discharge curve export. + +2012-02-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Adjusted to name change in River ('hibernate fix'). + +2012-02-03 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Adapted the data type of W/Q input values + for historical discharge curve calculation (intarray -> doublearray). + + * src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeState.java: + Adapted the data type of W/Q input values. + +2012-02-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + First steps to serve the data in cm if we are are gauges only. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Fetch map gauge station -> gauge datum from backend for reference curve. + + * src/main/java/de/intevation/flys/artifacts/math/LinearFilterFunction.java: + New. Linear transforms another function. + + * src/main/java/de/intevation/flys/artifacts/math/FilterFunction.java: + New. Allows cascading functions. + + * src/main/java/de/intevation/flys/artifacts/model/WWAxisTypes.java: + New. Classifier what kind of axis types are needed. + + * src/main/java/de/intevation/flys/artifacts/model/NormalizedReferenceCurveFacet.java: + Removed. Is now obsolete. + + * src/main/java/de/intevation/flys/artifacts/model/WW.java: + Stores gauge station kms for start and end km if they are any. + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + Should generate a WWAxisTypes classifier via side effect to the + call context. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation5.java: + Figure out for each start/end km if its a gauge station and store this + information in the result WWs. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Uses the WWAxisTypes classifier now to generate the right data. + TODO: Use the blackboard object. + +2012-02-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/EnterLocationState.java: + Removed superfluous imports. + +2012-02-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Set number of interpolation steps for relation curve to 200. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Do not sort the XYSeries. + +2012-02-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveInputState.java: + Removed. Was stub. + +2012-02-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Improved Reference Curves. + + * doc/conf/artifacts/winfo.xml: Add start/end input step for reference + curves. + + * doc/conf/themes.xml: Add theme for reference curve. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Disable start/end point-hack for reference curve. Go with 'live' + values. + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + i18n. + + * src/main/java/de/intevation/flys/artifacts/states/EnterLocationState.java: + New. State to enter location. + + * src/main/java/de/intevation/flys/artifacts/states/InputDoubleState.java: + New. + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Take WW name to display in themepanel. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added translations. + +2012-02-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: Use + the current date for discharge tables which doesn't have a stop time set. + A warning message is written to log. + + * src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeComputeState.java: + Generate report facet before leaving the computeXXX() method when no + calculation results has been computed. + +2012-02-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a function + that returns the name of a reference gauge (for historical discharge + curves). + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + Create title, subtitle and axes labels for charts of this type. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added title, subtitle and axes + labels for historical discharge curves. + +2012-02-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Fix. + +2012-02-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added translations for + states (will be shown in client). + +2012-02-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Ja!vadoc. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Declare getYAxisWalker as abstract to avoid weird issue with + overriden methods of this name. + +2012-02-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java: + Use the WW.ApplyFunctionIterator to fetch the data. + + * src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java: + Removed superfluous imports. + +2012-02-03 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Registered a ReportFacet for historical + discharge curve report. + + * doc/conf/conf.xml: Registered a ReportGenerator for historical discharge + curves. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: Add + problems if we were not able to find a Q for a given W. + + * src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeComputeState.java: + Generate a ReportFacet if there were problems during calculcation. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added error messages for the + case that we were not able to find a Q for a given W while calculating + historical discharge curve data. + +2012-02-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + Improved adding new data for historical discharge curves: skip NaN + values; use JFreeChart's Day TimePeriod instead of Second. + +2012-02-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: Refactoring: + moved addDatasets(), applyThemes() and some other methods into + ChartGenerator; enhanced the AxisDataset interface. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Implemented necessary abstract methods and improved internal AxisDataset + class (added new methods). + +2012-02-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartHelper.java: Added a + function that expands a given range. Take care on NaN in getRanges(). + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Prevent of NullPointerExceptions in isMinimumShapeVisible() and + isMaximumShapeVisible(). + +2012-02-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + Create new AxisDatasets and new TimeSeriesCollections for each Facet. + +2012-02-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQTimerange.java: Added a + method getTimerange(idx) that returns the Timerange at a given index. + + * src/main/java/de/intevation/flys/artifacts/model/HistoricalDischargeFacet.java: + Return the correct WQTimerange object in getData(). + +2012-02-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: More + refactoring: the AxisDataset is defined by an interface in ChartGenerator + now. Each subclass of ChartGenerator should implement its own AxisDataset. + This allows us to provide multiple XYDataset types in different charts. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Implemented some necessary methods (abstract definitions of parent class) + and create new empty timeseries charts. + +2012-02-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartHelper.java: New helper + class for working with charts. + +2012-02-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Removed useless import. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: More + refactoring: moved more base code from XYChartGenerator to its parent + class ChartGenerator. + +2012-02-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java: + Refactored. Use supers static field. + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + Refactored. Use static field. + + * src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java, + src/main/java/de/intevation/flys/utils/FLYSUtils.java + (getMinMax, getRiverMinMax): Refactored. Moved to FLYSUtils. + + * src/main/java/de/intevation/flys/artifacts/states/MinMaxState.java: + Add so-called javadoc. + +2012-02-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: Moved + further base code from XYChartGenerator into its ChartGenerator. + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + Override generateChart() instead of generate() which is now implemented + in ChartGenerator. + +2012-02-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java: + New. This ChartGenerator should be used for timeseries charts. Currently, + this class is a stub only! WORK IS IN PROGRESS! + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + Subclasses TimeseriesChartGenerator now instead of XYChartGenerator, + because historical discharge curve charts will have a time x axis set. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: Moved some + basic stuff from XYChartGenerator into ChartGenerator. + +2012-02-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/charts/TimeseriesStepChart.java: + Added standalone demo app for evaluating different timeseries charts. + +2012-02-02 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 466: CSV export for chart themes. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Export a CSV file if the requested format is 'csv'. + + * src/main/java/de/intevation/flys/exports/ChartExportHelper.java: + Generate the CSV file containing X-Y-data of all activated themes. + +2012-02-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Moved code to load values of a discharge table into an own static + function to be able to reuse it in Calculation6. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: + Implemented the findValueForW(). + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fake some reference curve input values to have working prototype + to work on. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Syntax-stunt fake reference inputs. + + * src/main/java/de/intevation/flys/artifacts/model/WW.java + (getW1): Accessor for first w at index (for the raw ww). + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java + (doReferenceOut): Plot the raw W-over-W. + +2012-02-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Create time + millis for timerange used in Calculation6. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: Added + the first step of the calculation: fetch relevant discharge tables based + on the given input parameters. The calculated values are not the right + ones! Finding Ws and Qs in discharge tables is still not implemented! WORK + IN PROGRESS! + + * src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeComputeState.java: + Create facets for each WQTimerange object calculated by Calculation6. + +2012-02-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Timerange.java: Added a + new constructor that takes Date objects for start and end time. + +2012-02-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/W.java: + Forget to create ws data in constructor. + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Replaced Reference Curve input state + with LocationSelect-State for debugging purposes. Add output to + reference.curve- state. + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml: Register ReferenceCurve*Generators. + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java: + Cosmetics. + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + Added pro forma facet. + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + Added comment. + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added reference curve facet type. + +2012-02-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Fetch + necessary parameters for 'historical discharge curve' calculation and call + Calculation6 with those parameters. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: + Modified default constructor and calculate() signatures and added a + parameter check which is evaluated before the calculation starts. + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ReferenceCurveInfoGenerator.java: + Added outline of a new chart-generator. + +2012-02-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Timerange.java: New. + This class might be used to store timeranges. Start and end time are + stores as long (milliseconds since january 1, 1970). + + * src/main/java/de/intevation/flys/artifacts/model/WQTimerange.java: + New. This class should be used to save Ws, Qs and timeranges. + +2012-02-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added helper + methods to extract int[] and double[] from string. + +2012-02-01 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Registered new facet type + 'historical_discharge.historicalq' to the 'historical_discharge' output. + + * doc/conf/conf.xml: Registered new HistoricalDischargeCurveGenerator for + output type 'historical_discharge'. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + new facet type for HISTORICAL_DISCHARGE_Q. + + * src/main/java/de/intevation/flys/exports/HistoricalDischargeCurveGenerator.java: + New. This ChartGenerator is used to generate new charts for historical + discharge curves. WORK IN PROGRESS! + + * src/main/java/de/intevation/flys/artifacts/model/Calculation6.java: New. + This class should 'compute' the historical discharge curves. WORK IN + PROGRESS! + + * src/main/java/de/intevation/flys/artifacts/model/HistoricalDischargeFacet.java: + New. This Facet is used during the calculation of historical discharge + curves. + + * src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeComputeState.java, + src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Added stubs + to trigger the calculation of data used for generating historical + discharge curve charts. + +2012-02-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Removed needless imports. + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/resources/messages_de.properties, + src/main/resources/messages_de_DE.properties: + Fixed "W bei ..m" -> "W fuer ...n" . + +2012-02-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Avoid NPE, add warning to log to not forget about it. + +2012-01-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation.java: + Fixed problems with unformatted numbers in error message. + +2012-01-31 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeState.java: + Override getLabelFor() to return the I18N string for the selected + evaluation mode. + +2012-01-31 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Modified types of parameters in the + 'historical discharge curves' transitions. + +2012-01-30 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Fix transition type (Stupid Bug 1.0 reverse). + +2012-01-30 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceGaugeState.java: + Override getLabelFor() method defined in DefaultState to return the name + of a Gauge based on the official number which is stored in the + parameterization. + +2012-01-30 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Allow manual points in more diagram types. + + * doc/conf/artifacts/winfo.xml: Add respective facet types to + compatibility lists of output modes. + + * doc/conf/artifacts/manualpoints.xml: Mention facet types. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added ChartType enum to ease later iteration. + (IS.MANUALPOINTS): Added helper. + + * src/main/java/de/intevation/flys/artifacts/model/ManualPointsFacet.java: + Help artifact figuring out which data to provide by passing facet + name. + + * src/main/java/de/intevation/flys/artifacts/ManualPointsArtifact.java: + Respond to getPointData with correct data item, depending on facet + name. + + * src/main/java/de/intevation/flys/artifacts/states/ManualPointsSingleState.java: + Iterate over chart types. Add facets if corresponding data is found. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Handle manual point facets. + +2012-01-30 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Clone + StateData model objects to save parameters in this Artifact - create + new StateData instances only if no StateData model was found for a + parameter. This solves the problem of loosing the type of a StateData. + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Implemented a getLabelFor() method that is used to format a parameter + value. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java: + Adapted method signature of transform(). + + * src/main/java/de/intevation/flys/artifacts/states/MinMaxState.java: + Override getLabelFor() method to create a well formatted label for min/max + values. + +2012-01-30 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/StateFactory.java: + Bugfix: use correct order of parameters in DefaultStateData constructor. + +2012-01-30 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Fixed a stupid bug. Use + ValueCompareTransition instead of DefaultTransition to evaluate values. + +2012-01-30 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/MinMaxState.java: + Write default values for min and max items into the DESCRIBE document. + +2012-01-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WW.java: + Added field 'startKm' and 'endKm' to make it easier to associate + gauge to km to return Ws in cm if km is at a gauge. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation5.java: + Construct the WWs with startKm and endKm. This is necessary because + if an error occurs in calcuting an in between km in a list of end kms + the index does not correspond to the input value any more. + +2012-01-30 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added transitions for "historical discharge + curves" calculation. + +2012-01-30 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + (doPoints): Skip 'inactive' points. + +2012-01-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WW.java: + Removed the createNormalized() method because it did not + solve all problems with the transformation of the W~W data we have. + + - We need to shift the values to be based in (0, 0). + - We need to linear transform the values if they are at gauges. + - Copying the data is memory expensive. + + Therefore there is now a new inner class ApplyFunctionIterator + that is able to transform the values in an iterator like manner. + The transform functions default to the identity. + + * src/main/java/de/intevation/flys/artifacts/math/Sub.java: New. + Simple function that subtract a scalar from the parameter. + + * src/main/java/de/intevation/flys/artifacts/model/W.java: Added + method minWs() to calulate the minimal W of the data. + + * src/main/java/de/intevation/flys/artifacts/model/NormalizedReferenceCurveFacet.java: + getData() returns a WW.ApplyFunctionIterator with identity transform. + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + getData() returns a WW.ApplyFunctionIterator with a base shift to (0, 0). + +2012-01-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WW.java: + Added method createNormalized() to shift the data to start in (0, 0). + + * src/main/java/de/intevation/flys/artifacts/model/NormalizedReferenceCurveFacet.java: + Returns the 'normalized' data of the reference curve. + +2012-01-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/NormalizedReferenceCurveFacet.java: + New. Facet for the normalized W~W relation. + TODO: Implement the on-the-fly creation logic. + + * src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java: + New. Facet for the W~W relation. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java: Cosmetics. + +2012-01-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java: + Added stub loop for creating facets. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Cosmetics. + +2012-01-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Call the 'Bezugslinienverfahren'. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + I18N for the 'Bezugslinienverfahren' error messages. + +2012-01-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Better theme for manual points. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Theme text part of manual points. Offset it a bit. + +2012-01-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation5.java: + Fixed stupid bug. + +2012-01-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceGaugeState.java, + src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeComputeState.java, + src/main/java/de/intevation/flys/artifacts/states/HistoricalDischargeState.java, + src/main/java/de/intevation/flys/artifacts/states/GaugeTimerangeState.java: + New. States used in the 'historical discharge curve' calculation. + +2012-01-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/MinMaxState.java: New + state that eases adding min/max value pairs to describe document. + + * src/main/java/de/intevation/flys/artifacts/states/IntRangeState.java: + New. Subclasses MinMaxState and allows adding min/max integer value pairs. + +2012-01-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: Moved + code to add items to a data node for dynamich UI into an own method. + +2012-01-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQKmsFacet.java: Removed + useless import. + +2012-01-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added strings which are used n + the calculation "historical discharge curve". + +2012-01-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation5.java: + New. Calcutation to be created from WINFOArtifact + for the 'Bezugslinienverfahren'. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Added TODO about optimization of the 'Bezugslinienverfahren'. + Added number of default samples of the W~W relation. + + * src/main/java/de/intevation/flys/artifacts/model/WW.java: + Added convinience constructor to store the calculation results. + + * ChangeLog: Removed false TODO. + +2012-01-27 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java, + src/main/java/de/intevation/flys/exports/WDifferencesExporter.java: + Read jasper template file from resources to support i18n reports. + + * doc/conf/jasper/wdifferences.jasper, + doc/conf/jasper/duration.jasper, + doc/conf/jasper/computed-discharge.jasper, + doc/conf/jasper/waterlevel.jasper: + Updated report template. Resized left margin. + + * doc/conf/jasper/computed-discharge_en.jasper, + doc/conf/jasper/duration_en.jasper, + doc/conf/jasper/wdifferences_en.jasper, + doc/conf/jasper/waterlevel_en.jasper: + New. Templates for english reports. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings for template files and modes. + +2012-01-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Prevent second Legend Entry for points (prior was one for the + TextAnnotations and one for the points). + +2012-01-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Blindly render Text of manual points if it does not collide with + other text. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Handle TextAnnotations, create some for manual points. + + * src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: + Added setter for TextAnnotations, documentation. + +2012-01-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + +2012-01-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Refactored class hierachy to integrate model for W~W: + + NamedObjImpl + \-- W + +-- WW + \-- WQ + +-- WQDay + \-- WQKms + \-- WQCKms + + * src/main/java/de/intevation/flys/artifacts/model/W.java: + New. Base class + + * src/main/java/de/intevation/flys/artifacts/model/WW.java: + New. Model for W~W + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java, + src/main/java/de/intevation/flys/artifacts/model/WQDay.java, + src/main/java/de/intevation/flys/artifacts/model/WQ.java, + src/main/java/de/intevation/flys/artifacts/model/WQCKms.java: + Adjusted to follow the new class hierarchy. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java: + Removed superfluous imports. + +2012-01-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties, + src/main/java/de/intevation/flys/artifacts/states/ManualPointsSingleState.java: + i18n for ManualPointsFacets. + +2012-01-27 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 138: PDF output for calculations. + + * src/main/java/de/intevation/flys/exports/WDifferencesExporter.java: + Create the PDF data source and generate the PDF report output. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Add the PDF facet to state. Add export facets only once. + + * doc/conf/artifacts/winfo.xml: + Added PDF facet to state. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsJRDataSource.java: + Added new field type 'differences'. + + * doc/conf/jasper/wdifferences.jasper: + New. Template for w-differences PDF export. + +2012-01-27 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: + New method that creates and returns the chosen differences of w-difference + calculation as string. + +2012-01-27 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 138: PDF output for calculations. + + * src/main/java/de/intevation/flys/exports/DurationCurveExporter.java: + Create the PDF data source and generate the PDF report output. + + * src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + doc/conf/artifacts/winfo.xml: + Added PDF facet to state. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsJRDataSource.java: + Added new field type 'day'. + + * doc/conf/jasper/duration.jasper: + New. Template for duration curve PDF report. + +2012-01-26 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 138: PDF output for calculations. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java: + Create the PDF datasource and generate the PDF report output. + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + doc/conf/artifacts/winfo.xml: + Added PDF facet to state. + + * doc/conf/jasper/computed-discharge.jasper: + New. Template for computed discharge PDF report. + +2012-01-26 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 138: PDF output for calculations. + + * pom.xml: New Dependency to net.sf.jasperreports/jasperreports and + org.codehaus.groovy/groovy-all. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Added methods for PDF generation. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Create the PDF data source and generate the PDF report output. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsJRDataSource.java: + New. Data source for jasper reports containing the waterlevel calculation + result. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Added facet for PDF export to state. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added PDF facet type. + + * src/main/java/de/intevation/flys/exports/DurationCurveExporter.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java, + src/main/java/de/intevation/flys/exports/WDifferencesExporter.java: + Added stub for inherited abstract method. + + * doc/conf/artifacts/winfo.xml: + Added PDF facet to outputmode 'export'. + + * doc/conf/jasper, + doc/conf/jasper/waterlevel.jasper: + New. Folder for jasperreports templates and first template for + waterlevel report. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n string for calculation mode. + +2012-01-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Renderer 'manual' points in LongitudinalSectionGenerator. + + * pom.xml: New dependency to org.json/json. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + (doOut): Handle manual points. + (doPoints): Add point- series. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added MANUALPOINTS Facet Type. + + * doc/conf/themes.xml: Added Default Theme for Manual Points. + + * doc/conf/artifacts/winfo.xml: Added manual point facet to + compatibility list of longitudinal section diagram. + +2012-01-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * src/main/java/de/intevation/flys/artifacts/model/ManualPointsFacet.java, + src/main/java/de/intevation/flys/artifacts/ManualPointsArtifact.java: + Removed obsolete imports. + +2012-01-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add initial infrastructure for user-provided data ('manual points'). + + * doc/conf/artifacts/manualpoints.xml: Trivial state model for new + Artifact. + + * doc/conf/conf.xml: Registered manualpoint artifact and factory. + + * src/main/java/de/intevation/flys/artifacts/model/ManualPointsFacet.java, + src/main/java/de/intevation/flys/artifacts/states/ManualPointsSingleState.java, + src/main/java/de/intevation/flys/artifacts/ManualPointsArtifact.java: + New. Basic infrastructure for ManualPoints. + +2012-01-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/winfo.xml: Removed superfluous condition checks. + +2012-01-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Cosmetics, documentation. + +2012-01-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/winfo.xml: Add states/transitions stubs for + "Bezugsllinenverfahren." + + * src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveInputState.java: + Stubs for the two new states. + +2012-01-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/visualize-transitions.xsl: Fixed output of the conditions + of the transitions. Now you can see the circumstances + when a branch is taken. + +2012-01-25 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 461. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Override buildChartSection() to disable the chart subtitle entry in + ChartSettings. + +2012-01-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + I18N for WINFO calculations messages. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation.java: + Allow optional arguments in error messages to support meaningful + formatting containing e.g. numbers. + + * src/main/java/de/intevation/flys/artifacts/resources/Resources.java: + Added a convenience getMsg() method. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation2.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation3.java, + src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + Adjusted the code to use the I18N symbols now. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added the I18N strings. + +2012-01-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Handle the case in "W auf freier Strecke" where more than + one Q is related to a W. TODO: Generate user report. + +2012-01-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Added code for the simple case of "Bezugslinienverfahren" ("W auf freier Strecke"). + TODO: Handle case if the model returns more than one Q for a given W. + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Micro optimizations. + +2012-01-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue452 (Annotations at second y-axis). + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new type (duration_curve.mainvalues.q). + + * doc/conf/themes.xml: Added theme mapping for new facet type. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Create another Facet. + + * doc/conf/artifacts/winfo.xml: Added new facet type to compatibility + list. + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Handle new Facet. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Added field to be able to remember which axis to stick to. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java: + Tell Annotations to stick to Q axis in the special duration_curve + environment. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (AxisDataset): Added plotAxisIndex to now have a + two-way-association. + Tell own axisDatasets to which 'jfreechart'-axis they are assigned. + Evaluate which axis the StickyAxisAnnotations should be sticked to, + and calculate text and line positions accordingly. + Removed junk. + +2012-01-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix compilation. + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationFacet.java: + Use StickyAxisAnnotations instead of XYTextAnnotations. + +2012-01-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Some unification of Annotation handling. + + * src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: + Add a third annotation type (now have text, hyk and sticky). + + * src/main/java/de/intevation/flys/jfree/CollisionFreeXYTextAnnotation.java: + Use double instead of float values, removed commented code. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Reduced to keep information about placements etc only. Not a + Annotation (in JFreeChart sense) anymore. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java, + src/main/java/de/intevation/flys/artifacts/model/MainValuesWFacet.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Use StickyAxisAnnotations instead of XYTextAnnotations. + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java: + Added new LineStyle class. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Call addAnnotationsToRenderer later, where positioning information + is already known. + (addAnnotationsToRenderer): Deal with the three Annotation types. + Instead of StickyAnnotations, add + CollisionFreeXYText- and + XYLineAnnotations. + (Area): Helper class. + +2012-01-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Some unification of Annotation handling. + + * src/main/java/de/intevation/flys/exports/ChartExportHelper.java: + +2012-01-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue395 (SVG/PDF-Export: Längsschitt enthält keine + Streckenfavoriten.) + + * src/main/java/de/intevation/flys/exports/ChartExportHelper.java: + Fix pdf/svg rendering of annotatios, by adding a + ChartRenderingInfo-object to the chart.draw call. + +2012-01-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Added new key and getter for a short subtitle. The short subtitle is + used if no range exists. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n string for shor subtitle. + +2012-01-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/ChartArtifact.java: + Removed state validation. Validation prevents drawing the diffenrences + diagramm and all states except of WDifferencesState always return + true. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/CollisionFreeXYTextAnnotation.java: + New. Candidate to replace StickyAxisAnnotation eventually. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java: + Added null-guards to functions parameters. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/HYKFactory.java: + Respect flowing direction of river when finding valid + hykformations. + +2012-01-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Add an empty facet to this state if the artifact is a Chartartifact. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Do not add the range to subtitle if no range exists. + +2012-01-20 Raimund Renkert <raimund.renkert@intevation.de> + + 'New chart' for cross sections. + + * doc/conf/artifacts/chart.xml: Updated the states and transitions for + new charts. + + * doc/conf/meta-data.xml: Added cross sections to datacage. + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + Changed cast from WINFOArtifact to FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/ChartArtifact.java: + Changed artifact data strings for chart_type. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Changed i18n string for cross sections and logitudinal sections. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add basic (text) styling for HYKs. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Minor cleanup, pass HYK theme on. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Apply TextStyle to TextAnnotation part for HYK zones. + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java: + (TextStyle): New class to bundle text-styling info. + + * src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: + Refactored constructors to ease setting Style in the newly + created usage scenario. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/StaticHYKState.java: + Cleanup. Mark spot where State-based caching could happen. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/HYKFacet.java: + Cosmetics. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/cache.xml: Added Cache for HYKS. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/HYKFactory.java: + Made HYKFactory.Zone Serializable. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/HYKArtifact.java: + Cosmetics. + +2012-01-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added style definition for hyks. + + * doc/conf/themes.xml: Added hyk style (text). + +2012-01-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/cache.xml: Removed cache "service-distanceinfo". + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java: + Now uses the annotations from the LocationProvider and the + XML documents are no longer cached. + +2012-01-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/cache.xml: Removed "annotations" cache. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Removed annotation caching. + + * src/main/java/de/intevation/flys/artifacts/model/LocationProvider.java: + Changed internal data structure to FastAnnotations which are also cached. + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationFacet.java: + Use FastAnnotations now which are fetched via the LocationProvider. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Added + time measurement for writing the CVS output. + + * src/main/java/de/intevation/flys/artifacts/states/StaticHYKState.java: + Removed superfluous import. + +2012-01-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Respect visibility flag of HYK facet. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Log malcondition, make colored hyk-box a bit smaller. + +2012-01-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFactory.java, + src/main/java/de/intevation/flys/artifacts/model/DataFacet.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java, + src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java, + src/main/java/de/intevation/flys/artifacts/StaticWQKmsArtifact.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Cosmetics, docs, improved logging. + +2012-01-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Recommend hyks for current river if hit by + a crosssection-out. + +2012-01-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Somewhat improved HYK handling and rendering. + + * src/main/java/de/intevation/flys/artifacts/HYKArtifact.java: + Store ids in more sensibly named data item and expose it. + Spawn all facets in inactive state. + + * src/main/java/de/intevation/flys/artifacts/model/HYKFactory.java: + Make HYK name accessible, do not query hyks by river, but by hyk-id, + made query more real-world. + + * src/main/java/de/intevation/flys/artifacts/states/StaticHYKState.java: + Use hyks name as facet name, pass hyk-id when asking for hyks. + +2012-01-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Somewhat improved HYK handling and rendering. + + * src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: + Added ability to store 'zones', next to text annotations. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (getLowestYValue, getUppestYValue, colorForHYKZone), + (addBoxAnnotations): New. Create box annotations from zones. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + (doHYK): New, handle hyk facets by adding zones to annotation + container. + +2012-01-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Preparing improved HYK handling. + + * src/main/java/de/intevation/flys/artifacts/model/HYKFactory.java: + (Zone.getTo): New accesor. + TODOs and documentation added. + +2012-01-18 Raimund Renkert <raimund.renkert@intevation.de> + + 'New Chart' for w-differences curve. + + * doc/conf/artifacts/chart.xml: Added empty facet to output mode. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Add an empty facet if the artifact is a ChartArtifact. + +2012-01-18 Raimund Renkert <raimund.renkert@intevation.de> + + 'New Chart' for discharge longitudinal section curve. + + * doc/conf/artifacts/chart.xml: Added transition for location input. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Changed cast from WINFOArtifact to FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java: + Add an empty facet if the artifact is a ChartArtifact. + +2012-01-18 Raimund Renkert <raimund.renkert@intevation.de> + + 'New Chart' for duration curve. + + * doc/conf/artifacts/chart.xml: Added state and transition for location input. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Changed cast from WINFOArtifact to FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java: + Add an empty facet if the artifact is a ChartArtifact. + +2012-01-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added accidentally ommitted HYKFacet, fixing build. + + * src/main/java/de/intevation/flys/artifacts/model/HYKFacet.java: + New, stubby facet for hyk infrastructure. + +2012-01-18 Raimund Renkert <raimund.renkert@intevation.de> + + 'New Chart' for computed discharge curve. + + * doc/conf/artifacts/chart.xml: Fixed transitions and added state for km input. + + * src/main/java/de/intevation/flys/artifacts/model/EmptyFacet.java: + New. Added an empty facet to avoid deleting an empty output. + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java, + src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java, + src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java: + Changed some return values if the artifact is a ChartArtifact. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java: + Changed casts from WINFOArtifact to FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java: + Add an empty facet if the artifact is a ChartArtifact. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Set a default axis range if the range is null. + +2012-01-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added stub hyk infrastructure. + + * doc/conf/artifacts/hyk.xml: Added trivial transition configuration + for hyk artifacts. + + * doc/conf/conf.xml: Register HYK artifact and its transition conf. + + * src/main/java/de/intevation/flys/artifacts/HYKArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/HYKFactory.java, + src/main/java/de/intevation/flys/artifacts/states/StaticHYKState.java: + Added static 'hyk' artifact, facet and state. + +2012-01-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Add 'hyk' facet type. + +2012-01-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add hyk facet to compatibility list of winfo.xml . + + * doc/conf/artifacts/winfo.xml: Add hyk facets to compatibility list. + +2012-01-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + method getDataAsLong that returns a Long representation of a data item or + null if no such data item is existing or it cannot be parsed as Long. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a function + that returns the selected reference gauge (specified by 'reference_gauge' + parameter) of a FLYSArtifact. + +2012-01-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/LocationProvider.java: + Cache a TreeMap<km, annotation string> of the annotation values of whole + rivers. This is _much_ more efficient than firing an HQL/SQL statement for + each km and caching these results. + +2012-01-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FastCrossSectionLine.java: + Deleted. It is in the backend now. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/FastCrossSectionChunk.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java, + src/main/java/de/intevation/flys/artifacts/model/FastCrossSectionLineFactory.java, + src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java, + src/main/java/de/intevation/flys/artifacts/WaterLineArtifact.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Adjusted to use the fast cross section line from backend now. + + * doc/conf/cache.xml: Store cross section lines cache on disk. + + * src/main/java/de/intevation/flys/artifacts/states/StaticWQKmsState.java, + src/main/java/de/intevation/flys/artifacts/model/DataFacet.java, + src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: Removed + superfluous imports. + +2012-01-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix assignment of stateId/hash in WaterlevelFacet. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java: + More verbose logging, fix hash/stateid assignment. + + * src/main/java/de/intevation/flys/artifacts/model/BlackboardDataFacet.java: + (deepCopy): implemented. + +2012-01-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + "Ported" StaticWQKmsArtifact to use compute-type caching mechanism. + + * doc/conf/artifacts/staticwqkms.xml: Declare trivial info. + + * doc/conf/conf.xml: Register staticwqkms artifact and factory. + + * src/main/java/de/intevation/flys/artifacts/model/WQKmsFacet.java: + Sublacss DataFacet. + + * src/main/java/de/intevation/flys/artifacts/states/StaticWQKmsState.java: + New. State. + + * src/main/java/de/intevation/flys/artifacts/StaticWQKmsArtifact.java: + Refactored. Most computation and stuff now done in State and Facet. + +2012-01-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Minor cosmetics. + +2012-01-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Refactoring. + + * src/main/java/de/intevation/flys/artifacts/model/BlackboardDataFacet.java: + Added new constructor. + + * src/main/java/de/intevation/flys/artifacts/model/DataFacet.java: + Refactored, subclass BlackboardDataFacet. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java: + Refactored, subclass DataFacet. + + * src/main/java/de/intevation/flys/artifacts/math/DifferenceCurveFacet.java: + Adjusted. + +2012-01-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DataFacet.java: + Cosmetics, added new constructor. + +2012-01-16 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Use improved caching for cross section data. + !!! This commit needs heavy testing !!! + + * src/main/java/de/intevation/flys/artifacts/services/CrossSectionKMService.java: + Refactored to provide the map to determine the nearest cross section line + neighbors for a given km to the public. This is a bit hackish because + it hhould have its own factory which is then used by this service and + other parts of the code. + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + searchCrossSectionLine() now returns a FastCrossSectionLine. To find this + line efficiently it uses the map of the CrossSectionKMService which + already provides a nearest neighbor searching mechanism for cross + section lines. The FastCrossSectionLine is fetched with the + FastCrossSectionLineFactory which uses a cache as described in the + previous commit. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java + src/main/java/de/intevation/flys/artifacts/WaterLineArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java, + src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Uses + the FastCrossSectionLine instead of CrossSectionLines now. + + * src/main/java/de/intevation/flys/artifacts/model/FastCrossSectionLine.java: + Added method fetchCrossSectionProfile() to access the point data in + the profile generating compatible way. + + * src/main/java/de/intevation/flys/artifacts/ChartArtifact.java: Removed + superfluous import. + +2012-01-16 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/cache.xml: Added cache for fast section lines chunks. + + * src/main/java/de/intevation/flys/artifacts/model/FastCrossSectionChunk.java: + New. Chunks of FastCrossSectionLines. Stores cross section lines for ranges + of one KM. + + * src/main/java/de/intevation/flys/artifacts/model/FastCrossSectionLineFactory.java: + New. Access fast cross section lines. It uses the cache 'fast-cross-section-lines' + configured in cache.xml to store chunks of cross section lines. + + * src/main/java/de/intevation/flys/artifacts/model/FastCrossSectionLine.java: + New. Stores the important data (points) of a cross section line. + +2012-01-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Added a new calculation option for historical discharge curves. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added translations for + historical discharge curves. + +2012-01-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added certain facets to to + compatibility matrices. + +2012-01-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/annotation.xml: Fixed accidental change. + +2012-01-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/annotation.xml: Cosmetics. + +2012-01-16 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Enabled old floodmap calculations for output + type 'map'. + +2012-01-13 Raimund Renkert <raimund.renkert@intevation.de> + + Initial implementation for module 'new chart'. + + * src/main/java/de/intevation/flys/artifacts/ChartArtifact.java: + New. Artifact for module 'new chart'. + + * doc/conf/artifacts/chart.xml: + New. Artifact description for the new artifact. + + * doc/conf/conf.xml: + Added new artifact to config. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings for 'new chart' chart types. + +2011-01-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Cosmetics. + +2011-01-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Avoid NPE when copying data from one artifact to another. + +2011-01-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (expandRange): Prevent collapse due to negative values. + +2012-01-12 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/artifacts/map.xml, + doc/conf/conf.xml, + src/main/java/de/intevation/flys/artifacts/MapArtifact.java: + Changed the MapArtifact name to 'new_map'. + +2011-01-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Added code to calculate the area of the generated polygons. + TODO: Render the generated area sum to the plot. + +2011-01-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Replaced System.err.println()s with proper logging. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelInfoState.java, + src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Removed + superfluous imports. + +2011-01-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + flys/issue450 (i18n: Datenkorb: longitudinal-section) + + * doc/conf/meta-data.xml: Replaced dash by underscore in + longitudinal-section. + +2011-01-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Towards areas on other than the first axes. + + * src/main/java/de/intevation/flys/artifacts/model/BlackboardDataFacet.java: + Changed signature on which to provide data via the blackboard. + Include facets name to allow unique identification. + + * src/main/java/de/intevation/flys/artifacts/model/AreaFacet.java: + Store name of one of the facets involved in area creation. + (AreaFacet.Data): New class to hold result data. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + New methods to find out whether we have a general Q or W type of + facet. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + (doArea): Use new Result-Data object instead of Object[], resolve + which axis to put area to. + (axisIdxForFacet): New. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Subclass LongitudinalSectionGenerator. + +2011-01-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelInfoState.java: + Do not intefere with CrossSections. + +2011-01-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics, cleanups. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + (getCrossSections, getCrossSectionNames): Removed. + +2011-01-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + flys/issue439 (Streckenfavoriten lassen sich nicht über den Datenkorb + hinzuladen) + + * doc/conf/meta-data.xml: Made Annotations available via datacage + in longitudinal section, cosmetics. + +2012-01-11 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/conf.xml: + Added output generator for output type 'map'. + + * doc/conf/artifacts/map.xml: + Changed output name to 'map'. + + * doc/conf/meta-data.xml: + Added new output type 'map'. + +2011-01-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue446 (Dauerline/Abflusskurve am Pegel: Eigenschaften vom + Hauptwertthema nicht aufrufbar) + + * doc/conf/themes.xml: Add default styles for mainvalues.q/w and other + themes. + +2012-01-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java: + Removed XPath injection security hole. A serious one because it allowed + inspecting the conf.xml file ... with all the db passwords. + +2012-01-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Removed superfluous imports. + +2012-01-11 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Added the definition of old calculation results + for floodmaps. + +2012-01-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: Added + methods getLayers() and removeLayer(). + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + method getFacets() which returns a list of Facets supported by this + Artifact. In addition, the FLYSArtifact is now more verbose while + filtering Facets for Outputs. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Implemented initialize() which now copies the shapefile directory of the + model Artifact and modifies its Facets (adapts the shapepath which is the + uuid of the Artifact). + +2012-01-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java, + src/main/java/de/intevation/flys/collections/OutputParser.java: Made + them more verbose for better debugging. + +2012-01-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Initialize() now also calls State.initialize() for each State. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Override initialize() which is defined in AbstractState. NOTE: Currently, + this method has no code. + +2012-01-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/CacheInvalidationService.java: + New. The service to invalidate the caches. (Argh! Forgot to 'svn add') + +2012-01-06 Ingo Weinzierl <ingo@intevation.de> + + flys/issue298 (Karte: Automatischer Zoom auf Berechnungsergebnisse) + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java: Added a + debug statement that prints out the WSPLGEN extent. + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: Create new + Envelope instances for initial and max extent if they are not existing. + Some debug statements have now been removed. + +2011-01-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add cache for 'static' wqkms (e.g. BaseData) to default cache conf. + + * doc/conf/cache.xml: Add Cache Config for static wqkms. + + * src/main/java/de/intevation/flys/artifacts/model/StaticWQKmsCacheKey.java: + Adjust typo in cache name, minor cosmetic. + +2011-01-06 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MapArtifact.java: + The map artifact has two states now and overrides describe() to + generate UI sections in the describe response. + The map state overrides computeAdvance() instead of computeFeed(). + + * src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: + Changed the WMSDBArtifact in WMSDBState to FLYSArtifact and adjusted + constructors in state classes. + + * doc/conf/artifacts/map.xml: + Added initial state and transition. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added i18n strings for new state. + +2011-01-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial fix for flys/issue437 (Querprofil: Zugeladene Basisdaten + ignorieren W/Q-heit, falsche Namen). + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Set name also for first column (zero based). + +2012-01-06 Ingo Weinzierl <ingo@intevation.de> + + flys/issue196 (i18n/l10n: Zahlenformate einheitlich) + + * src/main/java/de/intevation/flys/artifacts/model/WQ.java: New method + getRawValue() that extracts the raw double value from 'name' parameter. + + * src/main/java/de/intevation/flys/utils/Formatter.java: New method + getRawFormatter() that returns a NumberFormat instance for the current + locale. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Localized the W/Q labels in CSV exports. + +2011-01-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + flys/issue442 (i18n: Datenkorb: flood-protections) + + * doc/conf/meta-data.xml: Replaced dash in flood-protection by + underscore to allow translation. + +2011-01-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + flys/issue438 (i18n: Datenkorb: additionals) + + * doc/conf/meta-data.xml: Fix typo. + +2011-01-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/CacheInvalidationService.java: + New. Uses the CacheFactory to invalidate caches by their names. + This can be used by external ETL processes like the AFT/DIPS importer + to prevent cache inconsistencies. + + Input documents look like this: + + <caches> + <cache name="my-cache"/> + ... + <cache name="your-cache"/> + </caches> + + Output documents look like this: + + <caches> + <cache name="my-cache">All elements removed.</cache> + ... + <cache name="your-cache">Error: Cache not found.</cache> + </caches> + + * doc/conf/conf.xml: Added the cache invalidation service. + + * src/main/java/de/intevation/flys/artifacts/services/FLYSService.java: + Added Override annotation. + +2011-01-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + flys/issue432 (Diagrammeigenschaften/Flächenrenderer: + Legenden-schriftgröße für Flächenthemen wird ignoriert) + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Respect legend item size when generating legend items for + area dataseries. + +2011-12-09 Raimund Renkert <raimund.renkert@intevation.de> + + Implemented new module "new map". + + * src/main/java/de/intevation/flys/artifacts/MapArtifact.java: + New. Artifact for the new module, extends RiverAxisArtifact and + contains the MapState class. + + * src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: + Added empty constructor to embedded state classes to allow instantiation + of MapState that extends the RiverAxisState. + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: + Do not generate an initialExtent element if the initial extent is + empty. + + * doc/conf/artifacts/map.xml: + New. Describes the state for the new module. + + * doc/conf/conf.xml: + Added new config file. + +2012-01-05 Ingo Weinzierl <ingo@intevation.de> + + flys/issue444 (error_no_export_found bei "W bei ungleichwertigem Abfluss") + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: If no boolean + value "wq_free" exists in getWQMode(), false is the default. + +2011-01-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + flys/issue443 (Querprofile: Hibernate LazyInitializationException) + + * doc/conf/cache.xml: Disable cache for cross-sections. + +2012-01-05 Ingo Weinzierl <ingo@intevation.de> + + flys/issue447 (W-Differenzen: Fehler beim Hinzufügen einer Parameterisierung) + + * src/main/java/de/intevation/flys/collections/CollectionAttribute.java: + Added a new method cleanEmptyOutputs() which removes Outputs that have + no Facets set. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: Call + CollectionAttribute.cleanEmptyOutputs() at the end of write() to remove + empty Outputs that have been added during the merge process. + +2012-01-05 Ingo Weinzierl <ingo@intevation.de> + + flys/issue440 (Karte: WSPLGEN Berechnungen für Mosel schlagen fehl) + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: Modified the + getRiverBoundary() method because the signature of + RiverAxis.getRiverAxis() has changed. This method will now take each + geometry into account, that is retrieved by + RiverAxis.getRiverBoundary(). + + * src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java: + Use GeometryUtils.getRiverBoundary() to determine the boundary of a + river. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Create the riveraxis shapefile with all geometries returned by + RiverAxis.getRiverAxis(). + +2012-01-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Repaired + broken items in legend. The new renderer requires the current plot. This + is set now. + +2012-01-04 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added a new field 'pointsize' to the virtual theme + 'HiddenColorLines'. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Added methods to + parse the new field of 'HiddenColorLines'. + + * src/main/java/de/intevation/flys/jfree/StyledXYSeries.java: Apply the + pointsize defined in themes. + +2012-01-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Use correct keys for buffering in getMinimum() and getMaximum(). + +2012-01-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java, + src/main/java/de/intevation/flys/exports/StyledAreaSeriesCollection.java, + src/main/java/de/intevation/flys/exports/EnhancedLineAndShapeRenderer.java: + Moved to de.intevation.flys.jfree. + + * src/main/java/de/intevation/flys/jfree/StyledXYSeries.java, + src/main/java/de/intevation/flys/jfree/StyledAreaSeriesCollection.java, + src/main/java/de/intevation/flys/jfree/EnhancedLineAndShapeRenderer.java: + Moved from de.intevation.flys.exports. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Added necessary imports. + +2012-01-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/EnhancedLineAndShapeRenderer.java: + Buffered the computation results of getMinimum() and getMaximum(). + +2012-01-04 Ingo Weinzierl <ingo@intevation.de> + + flys/issue393 (Themenstileditor: Minimum anzeigen / Beschriftung anzeigen) + + * src/main/java/de/intevation/flys/exports/EnhancedLineAndShapeRenderer.java: + New renderer that overrides JFreeChart's XYLineAndShapeRenderer. This + renderer brings the option to explicitly display the minimum and/or + maximum or a series as shape. Currently, there are no options to adjust + the style of those shapes. + + * doc/conf/themes.xml: Added a new virtual theme 'MinMaxPoints'. All line + theme inherit from that theme now. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Added methods to + parse the fields 'showminimum' and 'showmaximum' of 'MinMaxPoints' theme. + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java: Added + methods to apply the fields of the new Theme 'MinMaxPoints'. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Modified + the getRenderer() method which now always returns a new instance of + EnhancedLineAndShapeRenderer. + +2011-01-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Allow styling of outline of areas. + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Allow styling of outline of areas. + + * src/main/java/de/intevation/flys/exports/StyledAreaSeriesCollection.java: + Parse outline style for areas, apply it to renderer. + +2012-01-03 Ingo Weinzierl <ingo@intevation.de> + + flys/issue104 (W-INFO: Wasserspiegellagenberechnung / Strecke) + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: Call + the new flys-backend method Wst.determineMinMaxQFree() to determine the + min/max Qs at a given kilometer. + +2011-01-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Reflect name chnage of longitudinal sections + area artifacts and include ColorLine style for area styles. + +2012-01-02 Ingo Weinzierl <ingo@intevation.de> + + flys/issue370 (WINFO: Berechnungsausgabe W/Pegel [cm] fehlt bei Wasserspiegellage und W am Pegel) + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: New method that + extracts the double value of a WQ object's name. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Adapted + the header of CSV exports and the content of the "W at gauge" column. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java: + Adapted method signatures that have been changed in WaterlevelExporter. + +2012-01-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added strings used in the CSV + export. + +2012-01-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Check + if the location of a CSV row is in range of the reference gauge. Write + "outside reference gauge" into CSV in such cases. + +2012-01-02 Ingo Weinzierl <ingo@intevation.de> + + PART II of flys/issue125 (W-INFO: Wasserspiegellagenberechnung / tabellarische Berechnungsausgabe) + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Add the + named main value of a Q and the name of the gauge used for the calculation + if the WQ mode is "W at gauge" or "Q at gauge". + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java: + Adapted the method signatures that have been modified in + WaterlevelExporter. + +2012-01-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/StyledAreaSeriesCollection.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/AxisSection.java, + src/main/java/de/intevation/flys/exports/ExportSection.java, + src/main/java/de/intevation/flys/exports/LegendSection.java, + src/main/java/de/intevation/flys/exports/ChartSection.java: Removed + unused imports. + +2012-01-02 Ingo Weinzierl <ingo@intevation.de> + + PART I of flys/issue125 (W-INFO: Wasserspiegellagenberechnung / tabellarische Berechnungsausgabe) + + * doc/conf/cache.xml: Registered a new Cache for the LocationProvider. + + * src/main/java/de/intevation/flys/artifacts/model/LocationProvider.java: + New. This class is able to return the description of a location based on a + river and kilometer parameter. The LocationProvider stores single + locations into a Cache if one is configured for this class. + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java: + Added a method that returns a single Annotation for a specific kilometer and + river. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a method + getLocationDescription() that might be used to determine the description + of a specified kilometer for a given river. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Make use + of FLYSUtils.getLocationDescription() to add a new column that contains + the location description. + +2011-12-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: Write + min/max values for free Qs into Artifact's DESCRIBE document. + +2011-12-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: Fixed + broken order to determine the step width of Qs and Ws. + +2011-12-28 Ingo Weinzierl <ingo@intevation.de> + + flys/issue104 (W-INFO: Wasserspiegellagenberechnung / Strecke) + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Validate user defined free Q values. + +2011-12-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Compute better step width based on a maximal number of steps = 30. + Results with digits are rounded up. E.g.: + Q range = 9.6 - 1750 + Step width = 58.01 + Rounded result = 60 + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/AxisSection.java, + src/main/java/de/intevation/flys/exports/LegendSection.java, + src/main/java/de/intevation/flys/exports/ChartSection.java: Subclasses + TypeSection to be able to use convinience methods for string, integer, + double and boolean values. + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: The + getSize() method now returns null if no width and height is specified in + the request document or if width/height <= 0. It no longer returns the + result of getDefaultSize(). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Set the + size of a chart export to the size specified in the ChartSettings if + there are no valid values in the request document. + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: Set the + chart size to ChartGenerator.getDefaultSize() if no valid values are + returned by ChartGenerator.getSize(). This has been done autoamtically + before. + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/TypeSection.java: New. This + Section defines some convinience methods to add/set string, integer, + double and boolean values. + + * src/main/java/de/intevation/flys/exports/ExportSection.java: New. + Subclasses TypeSection. The ExportSection currently offers attributes + 'width' and 'height'. + + * src/main/java/de/intevation/flys/exports/ChartSettings.java: Added + getter/setter methods to support an ExportSection. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Create an + ExportSection while initial ChartSettings creation. + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Added and + make use of a new method createLegendLabelFont() to create unified Fonts for + LegendItems. This method considers the user defined size for LegendItems. + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Implemented adjustAxes(). This method now sets the label Font of the X + axis. Its size is determined by getXAxisLabelFontSize(). + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/AxisSection.java: Added method + getFontSize() to retrieve the font size for an axis. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Modified createYAxis(int): call super.createYAxis(int) and adjust + necessary settings - no Axis creation takes place here. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Added + getXAxisLabelFontSize() and getYAxisLabelFontSize(int) to retrieve the + user defined font size for an axis. The getYAxisLabelFontSize() is used in + createYAxis(int) to set the font size for axes labels. + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Override getYAxisWalker(). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Create new + instances of IdentifiableNumberAxis in createYAxis(int) default + implementation. + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/AxisSection.java: Added + getLabel() to retrieve the axis label. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Override getDefaultXAxisLabel() and getDefaultYAxisLabel() defined in + XYChartGenerator. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Implement + getXAxisLabel() and getYAxisLabel(int). Both methods search for an axis + label defined in the ChartSettings first. If no label is specified or if + no ChartSettings is set, getDefaultXAxisLabel() or + getDefaultYAxisLabel(int) is called to retrieve the initial/default axis + label. + +2011-12-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartSettings.java: Modified the + signature of addAxisSection(). This method now accepts AxisSections only. + In addition, there is a new method getAxisSection(String) that returns an + AxisSection specified by its identifier. + + * src/main/java/de/intevation/flys/exports/AxisSection.java: Added new + methods getIdentifier(), isFixed(), getUpperRange() and getLowerRange() to + retrieve the attributes supported by this Section. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Make use + of axes ranges specified in ChartSettings if an axis is fixed. + +2011-12-23 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/IdentifiableNumberAxis.java: New. + Subclasses JFreeChart's NumberAxis and offers a getId() method which + returns an identifiable key. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Implements + a createNumberAxis() method that should be used by all subclasses to + create new axes. This method returns an instance of IdentifiableNumberAxis + which is required for zooming. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Create new NumberAxis instances by using XYChartGenerator.createNumberAxis(). + +2011-12-23 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Implemented the methods getChartTitle() and getChartSubtitle(). Both + methods try to get the required information from ChartSettings. If no + ChartSettings is set for this OutGenerator, these methods will call + getDefaultChartTitle() and getDefaultChartSubtitle(). + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Renamed getChartTitle() and getChartSubtitle() to + getDefaultChartTitle() and getDefaultChartSubtitle(). In addition, the + methods addSubtitles() became more robust - these OutGenerators add + subtitles only if the subtitle is not empty. + +2011-12-23 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/OutGenerator.java: Added a + setSettings(Settings) method. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Call OutGenerator.setSettings() before calling doOut() for each Facet. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Implemented + setSettings() and added convinience methods to access chart specific + settings. + + * src/main/java/de/intevation/flys/exports/MapGenerator.java, + src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java, + src/main/java/de/intevation/flys/exports/ATExporter.java, + src/main/java/de/intevation/flys/exports/ReportGenerator.java: Implemented + setSettings(). + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Make use + of the attributes specified in the Settings: the title, subtitle, + displayGrid and displayLegend settings are functional now. + +2011-12-23 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartSettings.java, + src/main/java/de/intevation/flys/exports/LegendSection.java, + src/main/java/de/intevation/flys/exports/ChartSection.java: Use more + concrete classes than Settings and Section in these classes to avoid a lot + of castings. + +2011-12-22 Ingo Weinzierl <ingo@intevation.de> + + flys/issue242 (W-INFO: Fehlende Header in Datenexporten) + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added functions + getQs(), getWs(), getGauge(), getGaugename() and getRivername() that all + take a parameter FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Moved the + implementation of getGauge() to FLYSUtils. The getGauge() in this class + just calls and returns FLYSUtils.getGauge(). + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Write a + header into a CSV export containing meta information about this export. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added strings used in the CSV + export as header. + +2011-12-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + (getKm): Removed, not called anymore. + +2011-12-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Include km of cross-section-master in diagrams subtitle (fetched + from 'blackboard'. + +2011-12-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: + Cosmetics, docs. + +2011-12-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java + (getInitialFacetActivity): Only newest CrossSection is initially + active. + +2011-12-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFactory.java + (isNewest): New, query whether a CrossSection is the newest for its + river, doc. + +2011-12-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + convinience method to retrieve the value of an data object stored at + FLYSArtifact as Boolean value. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a method that + returns the named value of a given double value. This method returns only + the named value, if the WQ mode is "Q at gauge" and if the value fits to a + named value. In addition to this method, there is a new method to retrieve + the selected WQ mode as 'WQ_MODE' enum. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Removed prepareData() and its call. The data preparation had a bad side + effect: the modifications are "persisted" into cache, which has again bad + side effects. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Removed + prepareData(). The label creation for columns in the WST export will now + take place in addWSTColumn(). With help of the master Artifact (I forgot + this Artifact in my last commit) we are able to replace Q values with + their named main value. + +2011-12-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + Cover 'locations' case for initial km of cross section artifacts. + +2011-12-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + (initialize): Eat ld_from from master artifact. + (setup): Set cross_section.km to either masters km or the lowest + defined cross-section line, whatever is bigger. + +2011-12-21 Ingo Weinzierl <ingo@intevation.de> + + flys/issue252 (W-INFO: Wasserspiegellagenberechnung / Mitführung der Jährlichkeiten in der Diagramm-/Ergbnisausgabe) + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a function + stripNamedMainValue(). The result of this function is a named main value's + base name without declaration of a year. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: Added a + method pepareData() that is called in doOut() before the data supported by + the current Facet is added using addData(). + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Override + the prepareData() method to reset the name of WQKms objects. The Qs in a + waterlevel export should be the Q value or the named main value if the + value fits to a named main value. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Survive cases where the first dataset has an area-renderer assigned. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/AreaArtifact.java: + Store additional parameter (whether or not to fill everything in + between two curves.) + + * src/main/java/de/intevation/flys/artifacts/model/AreaFacet.java: + Deliver additional info from artifact. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Evaluate new parameter. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Add transparency setting to area theme style. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Helper to + access transparency setting in theme. + + * src/main/java/de/intevation/flys/exports/StyledAreaSeriesCollection.java: + Respect transparency setting. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFacet.java: + Subclass BlackboardDataFacet to provide data for area calculation. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Cast data to WKms instead of WQKms. + +2011-12-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Use a ';' as seperator between Qs and Ws. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java + (doOut, doArea): Added handling for areafacets. Code yet mostly + copied from CrossSectionGenerator. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Refactoring, subclass BlackboardDataFacet, remove duplicate code. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * doc/conf/artifacts/winfo.xml, + src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Renamed facet for consistency reasons. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Make Waterlevelfacet deliver data via blackbord. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java: + Subclass BlackboardDataFacet. + +2011-12-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Create all formatted string labels for Ws and Qs in this class, because + this class is the only instance that knows that there are double values + to format. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Introduced new Facet that will deliver whatever getData returns via + blackbord under key which is defined by convention. Attention, the + data is not cached if handled this way. + + * src/main/java/de/intevation/flys/artifacts/model/BlackboardDataFacet.java: + New facet, will be useful for easing implementation of facets that + can contribute to area-computations. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/VisibleAttribute.java: + Removed obsolete imports. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Removed obsolete imports. + + * src/main/java/de/intevation/flys/artifacts/model/AreaFacet.java, + src/main/java/de/intevation/flys/artifacts/AreaArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/AreaCreationState.java, + src/main/java/de/intevation/flys/exports/StyledAreaSeriesCollection.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Removed obsolete imports. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + With StableXYDifferenceRenderer, create legend items in rectangular + form, to discern "line" from "area" in legend. + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java + (legendLine, legendShape): Renamed. + (getLegendItem): Create LegendItem with fill, use PositivePaint for + that. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added further 'area' infrastructure. + + * src/main/java/de/intevation/flys/exports/StyledAreaSeriesCollection.java: + New, "area dataset". + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java + (doOut): Use helper to decide if facet is an 'area' facet. + (doArea): Construct StyledAreaSeriesCollection instead of two + dataseries. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (AxisDataset.isArea): Distinguish area datasets with instanceof. + (AxisDataset.addArea): New. Replaces addAreaDataset. + (addAreaSeries): Simplified with new custom SeriesCollection. + (applyTheme): Register and style StableXYDifferenceRenderer for + StyledAreaSeriesCollections. + Added various TODOs and debug output to stabilize development. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added facets to compatibility + matrices. + + * doc/conf/themes.xml: Added Area theme defaults. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Lay ground for having areas in longitudinal section diagrams, too. + This is done by different naming of the facets. + + * src/main/java/de/intevation/flys/artifacts/model/AreaFacet.java: + Make the name dynamic. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added further facet types, helper. + + * src/main/java/de/intevation/flys/artifacts/AreaArtifact.java: + Store name for facets in data item, restrict access to some fields. + + * src/main/java/de/intevation/flys/artifacts/states/AreaCreationState.java: + Use AreaArtifacts data item to use name for facets. + +2011-12-20 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java, + src/main/java/de/intevation/flys/exports/StyledXYSeries.java: + Doc. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java, + src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Whitespace. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Doc and + whitespace. + +2011-12-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java + (parseBoolean): New, extracted, updated callers. + (parseFillColorField, parseShowBorder): New, for area styles. + +2011-12-19 Ingo Weinzierl <ingo@intevation.de> + + flys/issue202 (W-INFo: Wasserspiegellagenberechnung / Vorbelegung Strecke) + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Added a system property which is used to determine, if the DESCRIBE + document of an Artifact should include default values (values, that have + been inserted by the user some time ago) or not. The default case is, + that the DESCRIBE does NOT include default values. To enable default + values, set "flys.use.default.values" to "true". + +2011-12-19 Ingo Weinzierl <ingo@intevation.de> + + flys/issue419 (Themen-Name "Q(null)" bei W bei ungl. A.) + + * src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java: + Use correct variable to create Facet names. + +2011-12-19 Ingo Weinzierl <ingo@intevation.de> + + flys/issue380 (W-INFO / Überschwemmungskarte, falsches DGM) + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + convinience method that returns a parameter of FLYSArtifact as Integer. + + * src/main/java/de/intevation/flys/artifacts/states/DGMSelect.java: Override + validate() to determine, if the DGM selected by the user is valid for the + current calculation range and river. + +2011-12-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Roll-back accidentally committed changes. + +2011-12-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java + (doOut): Hide 'invisible' (deleted) themes from Outgenerators. + +2011-12-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added area.name data item and access to areaartifact. + + * src/main/java/de/intevation/flys/artifacts/model/AreaFacet.java: + Rephrased debug output, do survive case where only one curve is + given for area calculation (this is the "above" or "under" case). + + * src/main/java/de/intevation/flys/artifacts/AreaArtifact.java + (getAreaName): Access "area.name" data item. + + * src/main/java/de/intevation/flys/artifacts/states/AreaCreationState.java: + Respect area.name data of artifact when reproducing facets. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml: Fix, accidentally added wrong factory in last + commit. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml: Register area artifact factory. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added area artifacts to cross-section + compatibility matrix. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add area dataseries when facet delivering one. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java + (doOut): Handle area facets. + (doArea): Register areas for area facets. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add simple area registerig functions. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (AxisDataset.addAreaDataset): New, add an area dataset. + (AxisDataset.isArea): New. + (addAreaSeries): New. Add Area Dataset. + (applyThemes): Pass info if we have an area, to set different + renderer. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/StaticState.java: + Added convenience function and easy sybclassing. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Register AREA ("area") facet type. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Register blackboard key uuid+index and respond with data to it, as + assumed by the areaartifact and facet. + +2011-12-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added partial area-infrastructure. + + * src/main/java/de/intevation/flys/artifacts/model/AreaFacet.java, + src/main/java/de/intevation/flys/artifacts/AreaArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/AreaCreationState.java: + New artifact, facet and state for area rendering. + +2011-12-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Defined an + interface YAxisWalker that allows to walk over each Y axis definition in + subclasses. This walker can be retrieved using the new getYAxisWalker() + method. The AxisSections are built in this class now. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Implemented the YAxisWalker interface and the getYAxisWalker() method. + Removed the code to build AxisSections. + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Implemented getYAxisLabel(int pos) and getYAxisWalker(). + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Implemented the getYAxisWalker() method. + +2011-12-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Some optimizations during out() operation - the CollectionAttribute is + parsed a single time now (*i guess*). This code really needs some + refactoring! + +2011-12-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Added an INFO message that displays the duration time for the out() + operation. + +2011-12-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Calls super.buildAxisSections(). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Implemented the method buildAxisSections(). The result list will contain + an AxisSection for the X axis. + +2011-12-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: Bugfix: + Add new Outputs to the current CollectionAttribute if no old one is + existing. + +2011-12-16 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + Directly fetch key/value pairs when writing a collection attribute. + +2011-12-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartSettings.java: Added new + functions that allow parsing a ChartSettings object from DOM Node. + + * src/main/java/de/intevation/flys/collections/AttributeParser.java: Parse + the Settings of each Output. + +2011-12-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/CollectionAttribute.java: + Added a method to set a new Settings object for a specific Output and a + method to clear the list of Facets of a specific Output. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: The + AttributeWriter no longer creates new CollectionAttributes - it only + modifies the old CollectionAttribute. At first, it clears the Facets of + all Outputs. Finally, the merged Facets are added to the Outputs. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Added the CollectionAttribute to the AttributeWriters constructor. + +2011-12-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/DoubleAttribute.java: New. An + Attribute that stores double values. + + * src/main/java/de/intevation/flys/exports/AxisSection.java: Added methods + to set values for 'fixation', 'font-size', 'lower' and 'upper'. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Set new attributes mentioned above for each axis' AxisSection. + +2011-12-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/AxisSection.java: Added methods + to set the axis label and id. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Improved + the ChartSettings that will now contain a set of AxisSections. The new + buildAxisSections() method in this class is not implemented and needs to + be implemented by subclasses. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Override buildAxisSections() of XYChartGenerator to create an AxisSection + for each axis that is able to be displayed in this sort of chart. In + addition, there is a new method getYAxisLabel(int) that returns the label + for a specific Y axis. + +2011-12-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/IntegerAttribute.java: New. + Concrete subclass of a DefaultAttribute for storing integer values. + + * src/main/java/de/intevation/flys/exports/LegendSection.java: New. A + concrete Section subclass to store legend specific attributes. + + * src/main/java/de/intevation/flys/exports/BooleanAttribute.java, + src/main/java/de/intevation/flys/exports/StringAttribute.java: Removed + needless import of org.w3c.dom.Attr. + + * src/main/java/de/intevation/flys/exports/ChartSettings.java: ChartSettings + is able to store a Section for legends now. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Added + methods to retrieve the font size of legends and if the legend should be + visible or not. In addition, the ChartSettings returned by this instance + will now contain a LegendSection as well. + +2011-12-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Introduced + methods getChartSubtitle() and isGridVisible(). getChartSubtitle() returns + in this implementation null. Concrete subclasses should override this + mehtod if they require subtitles in charts. isGridVisible() determines if + the grid in the chart should be visible or not. This method return always + true in this implementation. + In addition, the Settings object returned by getSettings() will now have a + ChartSection set properly. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Override getChartSubtitle(). + +2011-12-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Prepare the OutGenerator (process each of the Output's Facets) during the + describe() operation to be able to return an initial Settings object. + +2011-12-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/BooleanAttribute.java, + src/main/java/de/intevation/flys/exports/VisibleAttribute.java, + src/main/java/de/intevation/flys/exports/StringAttribute.java: Fixed wrong + usage of DOM operations. + +2011-12-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/BooleanAttribute.java, + src/main/java/de/intevation/flys/exports/VisibleAttribute.java, + src/main/java/de/intevation/flys/exports/StringAttribute.java: New. + Concrete subclasses of a DefaultAttribute. + + * src/main/java/de/intevation/flys/exports/ChartSettings.java, + src/main/java/de/intevation/flys/exports/AxisSection.java, + src/main/java/de/intevation/flys/exports/ChartSection.java: + Implementations for chart settings. WORK IN PROGRESS! + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Override + the getSettings() method. The implementation here returns a ChartSettings + instance. + + * src/main/java/de/intevation/flys/exports/EmptySettings.java: Modified the + node name of the settings ("art:settings" -> "settings"). + +2011-12-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + Cosmetics, doc. + +2011-12-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + Remove needless imports. + +2011-12-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix/Guard certain misconditions. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Do + not crash when given null-range. + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java: + Do not crash when given malformed array. + +2011-12-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * src/main/java/de/intevation/flys/artifacts/math/DifferenceCurveFacet.java, + ChangeLog: Whitespace cosmetic. + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + Annotation cosmetic. + + * src/main/java/de/intevation/flys/artifacts/ExternalWMSArtifact.java: + Convenience cosmetic. + + * src/main/java/de/intevation/flys/utils/DataUtil.java: + vim-magicosmetic. + +2011-12-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Implement new WaterLineArtifact where needed so far. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Declare that we implement WaterLineArtifact. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + (getWaterLines): Implement to fulfil new WaterLineArtifact- + interface-impl. Also generate new Facet. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Do not depend on WINFOArtifacts, but on WaterLineArtifacts instead. + +2011-12-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added interface WaterLineArtifact to be implemented by artifacts + that know how to create a water line "against" a cross section. + + * src/main/java/de/intevation/flys/artifacts/WaterLineArtifact.java: + New, straight-forward interface. + +2011-12-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/EmptySettings.java: An + implementation of the Settings interface defined in the artifact-database + module. This implementation accepts no Section objects at all and creates + an empty "settings" Node in its toXML() operation. + + * src/main/java/de/intevation/flys/exports/OutGenerator.java: Defined a new + method getSettings() that returns a Settings instance. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/ReportGenerator.java, + src/main/java/de/intevation/flys/exports/MapGenerator.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java, + src/main/java/de/intevation/flys/exports/ATExporter.java, + src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: + Implemented the getSettings() operation. All OutGenerators will currently + return an instance of EmptySettings. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Before the DESCRIBE document is created, we gonna evaluate each Output + defined in the Collection's attribute document, if it has a Settings + object set. If this is not the case, the relevant OutGenerator is called + to retrieve a new instance of Settings. + + * src/main/java/de/intevation/flys/collections/CollectionAttribute.java: + Append the Settings of Outputs to the Output nodes in the XML + representation. + +2011-12-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Recommend cross-sections. + + * doc/conf/meta-data.xml: When having a cross-section out, recommend + respective artifacts. + +2011-12-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Register factory for CrossSectionArtifacts. + + * doc/conf/conf.xml: Register CrossSectionArtifact-Factory. + +2011-12-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/CollectionAttribute.java: + New. This class will store the information provided in the Collection's + attribute (which is a DOM document). + + * src/main/java/de/intevation/flys/collections/CollectionDescriptionHelper.java: + Store an instance of CollectionAttribute and append its XML representation + to the DESCRIBE document. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: Removed + all DOM operations from this writer. Its new task is to create a new + CollectionAttribute object which represents a merged version of the old + CollectionAttribute and the information provided by the Collection's child + Artifacts. + + * src/main/java/de/intevation/flys/collections/AttributeParser.java: The + result of AttributeParser's parse() operation is a CollectionAttribute + object now. The methods getOuts() and getFacets() are as of now proxy + methods that call the relevant methods of CollectionAttribute. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Some structural changes in the process to build the attribute Document of + the Collection's DESCRIBE. We will no longer work with Document during + this process but with instances of CollectionAttribute. + +2011-12-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Server-side of newer Cross-Section diagram construction architecture. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java + (searchCrossSectionKmLine, getCrossSectionSnapKm), + (getCrossSectionData): Removed, most functionality contained in + CrossSectionArtifact. + (getWaterLines): Now get CrossSectionLines to calculate water line. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Get a CrossSectionLine from blackboard. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Hard TODO, commented out function needed for subtitle to allow + compilation. + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java: + Added Empty-Dataset- guard. + +2011-12-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Cosmetics. + +2011-12-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/CrossSectionKMService.java, + src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + Removed superfluous imports. + +2011-12-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/CollectionDescriptionHelper.java: + New. This class helps generating the DESCRIBE document of a collection. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Moved some of the code to create the DESCRIBE document out to + CollectionDescriptionHelper. + +2011-12-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Resolve todo about wrongly named cross sections. + Open StaticState to allow that facets survive a compute. + + * src/main/java/de/intevation/flys/artifacts/states/StaticState.java + (computeAdvance, computeFeed, computeInit): Override to call + staticCompute. + (staticCompute): New. Do nothing but be able to be overridden. + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java + (setup): Fetch facets name from db (resolves todo). + (getCurrentState): override staticstates staticcompute to let + facets survive a compute. + +2011-12-12 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/wsplgen/JobExecutor.java, + src/main/java/de/intevation/flys/wsplgen/WSPLGENCallable.java: Renamed + JobExecutor to WSPLGENCallable (because it is a Callable now). In addition + to the call() method which starts the WSPLGEN process, this Callable + offers a cancelWSPLGEN() method to destroy a running WSPLGEN process. + + * src/main/java/de/intevation/flys/wsplgen/WSPLGENFuture.java: A FutureTask + that overrides cancel(boolean). Before this instance call + super.cancel(boolean), it executes WSPLGENCallable.cancelWSPLGEN() to kill + a running WSPLGEN process. + + * src/main/java/de/intevation/flys/wsplgen/Scheduler.java: The Scheduler is + no longer a Runnable. It makes now use of a ScheduledThreadPoolExecutor to + schedule the incoming WSPLGENJobs. The ScheduledThreadPoolExecutor has a + fixed number of worker threads that process the jobs. The number is 1 per + default; it can be modified using a System property "wsplgen.max.threads". + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java: Added + a string constant SCHEDULER. + + * src/main/java/de/intevation/flys/wsplgen/SchedulerSetup.java: A + LifetimeListener that currently implements the systemUp() method to create + an instance of Scheduler. After its creation, the Scheduler is put into + the GlobalContext using FLYSContext.SCHEDULER as key. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Fetch the Scheduler from GlobalContext. + + * doc/conf/conf.xml: Registered SchedulerSetup as LifetimeListener. + +2011-12-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticFLYSArtifact.java: + (describe): Add data items to StaticFLYSArtifacts describe-doc. + +2011-12-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/StaticState.java: + (addDefaultChartOutput): Convenienve function to add a chart-output. + +2011-12-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java: + Play nice with CrossSectionArtifact. Employ blackboard. + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + Spawn a CrossSectionFacet, handle various data. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Do not produce CrossSectionFacets anymore, these now "belong" to + CrossSectionArtifacts. + +2011-12-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/cache.xml: Added cross_sections cache. + +2011-12-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFactory.java: + (getCrossSection, getCrossSectionUncached): New, access specific + CrossSection, employ caching. + +2011-12-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java: + New artifact to handle cross-section access. + +2011-12-09 Raimund Renkert <raimund.renkert@intevation.de> + + Issue 413. + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java: + Apply point size from theme attribute linewidth. + +2011-12-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFactory.java, + src/main/java/de/intevation/flys/artifacts/model/AnnotationFacet.java, + src/main/java/de/intevation/flys/exports/OutGenerator.java, + src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Cosmetics. + +2011-12-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/CrossSectionKMService.java: + Documentation added, let a value be its own neighbour (distance 0). + +2011-12-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Added "Bezugslinie" to list of calculation alternatives. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties: Added I18N. + +2011-12-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Further flys/issue420 fix (No Discharge Curves for Mosel). + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (includeYRange, mergeRanges): Moved NaN-guard to lowest level. + (combineXRanges): Also NaN guard the X Axis extent. + +2011-12-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial fix for flys/issue420 (Berechnete Abflusskurve: Kein Diagramm für + Mosel). Protect axis extent calculation from empty or invalid + datasets. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (includeRange, includeYRange): Renamed, updated callers. + (includeYRange): Protect from merging extent with NaNs. + (debugDatasets): Be more verbose on the datasets. + (zoom): Doc. + +2011-12-06 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue423 (Diagramm: Hauptwerte bei Abflusskurve am Pegel + werden an Y-Achse nicht angezeigt) - show not "raw" (vs interpolated) + values at Gauge. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java, + src/main/java/de/intevation/flys/artifacts/model/MainValuesWFacet.java: + Add parameterization to let facet know whether to fetch data at + Gauges or at Artifacts position. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Let the MainValueFacets know whether to ask for interpolated + MainValues; (do not interpolate for Gauges Main Values). + (getMainValuesQ, getMainValuesW): Added parameter to control + interpolation. + +2011-12-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Modified + prefix constants for Mapserver layers and renamed constants (which have + been postfixes before). + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java: Adjusted + usage of Mapserver constants to the changes described above. + +2011-12-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Bugfix: Evaluate the correct parameter whether to set the floodplain or + not. In addition, the scenario parameter used by WSPLGEN is now set + correctly. + +>>>>>>> .r3356 +2011-12-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Allow longitudinal_section.q facets in wdiff states output. + + * doc/conf/artifacts/winfo.xml: Added longitudinal_section.q facets + to w-diff states out compatibility- matrix. + +2011-12-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Refactored Longitudinal*/WDiff-*Generator hierarchy and change axis + ordering, resolved label-i18n TODO. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Merge, avoid duplicate code, fix axis ordering in w-diff diagram, + label in ls-diagramm. + +2011-12-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added missing state titles. + +2011-12-05 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Do not include zero on first axis. + +2011-12-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + (buildArtifactNode): Include artifacts state data in description + document of collection. + +2011-11-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/ReportGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java, + src/main/java/de/intevation/flys/exports/ATExporter.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/OutGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java, + src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Removed superfluous imports. + +2011-11-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Removed import to make it compileable again. + +2011-11-30 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Introduce pre-rendering inter-facet communication phase ('blackboard + pass'). + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java + (doBlackboardPass): New. Before actually calling doOut, bundle + ArtifactAndFacets and let them register + themselfes as DataProvider in CallContext if they + want ("announce on blackboard"). + +2011-11-30 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java + (doOut): Adjusted signature. + +2011-11-30 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Changed doOut signature to use ArtifactAndFacet, which will be + side effect of upcoming "blackboard" feature. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java + (getRangesForDataset, getRangesForAxis): Renamed, removed TODO. + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java + (createAxis): Update call to XYChartGenerator.getRangesForAxis, + cosmetics. + + * src/main/java/de/intevation/flys/exports/OutGenerator.java + (doOut): Changed Signature to accet ArifactAndFacet instead of + Artifact and Facet. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/ReportGenerator.java, + src/main/java/de/intevation/flys/exports/MapGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java, + src/main/java/de/intevation/flys/exports/ATExporter.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java + (doOut): Adjusted to new signature. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + (adjustAxes): Removed, we do not need a (manual) second axis. + +2011-11-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Fix compilation, use features of XYChartGenerator. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Set default behaviour such that 0 is not included in ranges. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Set behaviour of axis such that 0 is not (automagically) included. + +2011-11-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java: + Fix wrong documentation. + +2011-11-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix LongitudinalSections multi-axes plotting behavior. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Removed obsolete functions, use better working multi-axis + magic by XYChartGenerator. + +2011-11-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Overhaul dataset/axis/renderer housekeeping in Mother of all + ChartGenerators. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Refactored, keep axis/rendering relevant information in objects + of new class AxisDataset. Removed some obsolete code while adding + documentation. + +2011-11-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java(relateWs): + Added the implementation of the 'Bezugslinienverfahren'. Should + be complete but needs testing! + TODO: Setup a Calculation and integrate it into WINFO. + +2011-11-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Refactored the code for the "berechnete Abflusskurve" to enable + the "Bezugslinienverfahren" to use the same code paths. It also + removes a good deal of already existing code duplication. + +2011-11-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java(findQsForW): + Added method findQsForW(w, km) to retrieve the Qs that correspond + for the given w and km. + + This is to be called when doing a "W auf freier Strecke" calculation + to find out the Qs belonging to the user given W. + + * src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Removed superfluous imports. + +2011-11-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix bug when adding Q data in LongitudinalSectionGenerator. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Add data from Q -Facet as Q over Km points. + +2011-11-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added handling of empty plots. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (createAxes, removeEmptyRangeAxes): Survive empty datasets map, create + primary axis. + (recoverEmptyPlot): New. + +2011-11-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Let first visible axis be always on the left. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (createAxes): When creating axes, keep track of which is the first + one. Set its location to "left". + +2011-11-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Use multiple axis in relevant generators. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + (createYAxis): Implemented. + Define and use YAXIS enum for axes. + +2011-11-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix theming and legend items for plot with multiaxis feature. + Decouple renderer index from dataset index. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + (applyThemes): Do not get renderer based on dataset/axis-index but + count. + +2011-11-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + In XYChartGenerators allow more than two datasets. + Assign axis to indices of datasets, do not show axis if corresponding + dataset is set to be not visible. + Do proper axis-setting in LongitudinalSectionGenerator only (other + will follow). Based on a patch by Sascha Teichmann. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Keep relation between index and dataset, once its added. Compute + ranges per index. Allow subclasses to override createAxes to specify + internationalized labels etc. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java: + Add datasets to first index. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Implement createYAxis to create correct first, second and third + axis. Added enum to easy identification of axis. Stripped down + adjustAxis which was used to create second axis. + Add datasets at correct indices. + +2011-11-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/StackFrames.java, + src/main/java/de/intevation/flys/artifacts/datacage/templating/FunctionResolver.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Cosmetics, docs. + +2011-11-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Cosmetics, docs. + +2011-11-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableCacheKey.java: + Cosmetics, docs. + +2011-11-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java: + Resolved TODO about caching certain WstValueTables. + +2011-11-22 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/ExternalWMSArtifact.java: New. + This Artifact is used to allow users adding external WMS layers to their + floodmaps. An ExternalWMSArtifact stores an URL of a WMS, the name and the + title of the WMS layer. The internal State extends WMSBackgroundState. + + * doc/conf/conf.xml: Registered the ExternalWMSArtifact. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added a + new type "floodmap.externalwms" which is used by the ExternalWMSArtifact. + + * doc/conf/artifacts/winfo.xml: Allowed the "floodmap.externalwms" facet for + floodmaps. + + * src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java: + Some refactoring to allow easier subclassing. + +2011-11-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fixed flys/411. + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java: + Use different queries to avoid costy joins. + +2011-11-22 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java: + Use different queries to avoid costy joins. Patch by Sascha + Teichmann, minor typo-fix. + +2011-11-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added other.wkms.interpol facet + to compatibility matrix for computed discharge curves. + +2011-11-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Resolve cosmetic todo, use importData-convenience method. + +2011-11-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Handle STATIC_WKMS_INTERPOL and WQ/Points as Annotations. + +2011-11-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java: + Give Facet different name when its a flood*, so that it can be + understood to be e.g. a flood-protection further down the processing + line. + +2011-11-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Prevent ArrayIndexOutOfBounds, log method entry. + +2011-11-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new Facet Type: Interpolated W/Km values. + +2011-11-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java, + src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java, + src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Avoid + WMS layer names that begin with digits. This would lead to invalid + WMSGetFeatureInfo responses, where the name of a layer is the name of a + XML node. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Added and use *_wq macros for interpolated + w/q data (currently used in computed discharge curve only). + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Handle STATIC_WQ_ANNOTATION type facets, build and add annotations + for these. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java: + Set Facet type (name) based on static datas name (special case + everything starting with "height"). + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Extended compatibility matrices. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new STATIC_WQ_ANNOTATIONS Facet Type. + +2011-11-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + Added a method isQueryable() that determines if a layer is queryable via + WMS GetFeatureInfo request. This method returns false as default. + + * src/main/java/de/intevation/flys/artifacts/model/WMSDBLayerFacet.java: + Override isQueryable(). All WMSDBLayerFacets are queryable via WMS + GetFeatureInfo request. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java: + Added functionality to artifact to use single column wst + interpolators. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java: + Added methods to create WstValueTables (interpolators) for specific + columns of wsts. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Added Point Style for other.wq data. + +2011-11-16 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Do not re-evaluate constant size() in for-loops. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java: + Get ld_locations not locations data item to determine km. + (getDataAsDouble): New helper function to get data item as double. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Recommend fixations for computed discharge + curve outs, minor refactoring of dc conf. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml: Added wqinterpol factory to produce + WQKmsInterpolArtifacts. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Use StyledSeriesBuilder to add WQ data from WQKms to Series. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Handle interpolated WQ data. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticWQKmsArtifact.java: + Adjusted to similar implementations. Added TODO about merging with + these similar implementations. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Removed logging noise, find better suited rows for interpolation. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java: + Cache WstValueTables that were fetched by wst_id. + +2011-11-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFactory.java: + (getWstName): Fix and use SQL statement. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQFacet.java, + src/main/java/de/intevation/flys/artifacts/WQKmsInterpolArtifact.java: + Added new Facet and Artifact to access W over Q data. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + (importData): New function to copy data from one artifact to + another. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java + (getTable): New methods to get WstValueTable for given wst_id. + Prepolate Arrays with NaNs. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFactory.java: + (getWKmsName): Fix definition. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFactory.java: + (getWKmsName): New function. Get name (description) of a WST. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new "other.wq"/STATIC_WQ Facet-Type, e.g. for fixations in + discharge curves. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Picky cosmetics. + + * src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java, + src/main/java/de/intevation/flys/artifacts/model/ManagedFacetAdapter.java, + src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java, + src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java: + Cosmetics, docs. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added translations for Mosel, Elbe and Saar. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added translations + for Mosel, Elbe, Saar. + +2011-11-15 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added new interpolation mechanism to WstValueTable to interpolate + given columns only. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java + (linearW): New, interpolate a given columns w's between given rows. + (interpolateWQColumnwise): New, interpolate between rows ws at a + given column and km. + +2011-11-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Minor doc added. + +2011-11-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/DifferenceCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WQKmsFactory.java, + src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java, + src/main/java/de/intevation/flys/themes/ThemeFactory.java: + Removed dead ';' from empty bodies. + +2011-11-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + s/reset/resetQuick/s in TDoubleArrayLists. + +2011-11-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Added system properties 'waterlevel' and 'km'. Useful to + init the UI with a given waterlevel and drawing the cross-sections + at the given km. + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Spliting by NaNs definition holes _should_ work now. Needs + some more testing. + TODOs: + - Use log4j instead of println for logging. + - Subclass XYDifferenceRenderer instead of replacing it totally. + +2011-11-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Draw water, too. + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + First code to split datasets by NaNs. WIP. + +2011-11-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Draw ground with StableXYDifferenceRenderer. + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Removed XYDatasetToZeroMapper stuff. Not needed any longer + because we use rendereres on dataset basis now. + + * src/main/java/de/intevation/flys/jfree/XYDatasetToZeroMapper.java: + Removed.Not longer needed. + +2011-11-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Include computed discharge curves in dc + conf. + +2011-11-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Somewhat unify user-part of dc config. + +2011-11-11 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Modified some floodmap styles and added a + backgroundcolor attribute to polygon themes. + + * src/main/java/de/intevation/flys/artifacts/model/MapserverStyle.java: + Added support for backgroundcolor. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Parse + backgroundcolor from theme document. If a value is given, the + backgroundcolor is set on the Mapserver style. + +2011-11-11 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/MapserverStyle.java: + Set correct Mapserver attribute name to adjust the width of a line. + +2011-11-11 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added 'textcolor' and 'textsize' attributes to the + existing 'Kms' theme. + + * doc/conf/mapserver/fontset.txt: Defined a 'DefaultFont' that is used as + default font for Mapserver labels. + + * doc/conf/mapserver/db_layer.vm: Add a Mapserver LABELITEM if a value is + provided by LayerInfo object. + + * src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: Added a + getLabelItem() method that returns null as default. + + * src/main/java/de/intevation/flys/artifacts/WMSKmArtifact.java: Override + getLabelItem() to return "km" which is the database field that contains + the kilometer information. + + * src/main/java/de/intevation/flys/artifacts/model/LayerInfo.java, + src/main/java/de/intevation/flys/artifacts/model/WMSDBLayerFacet.java: + Added an attribute labelItem with appropriate getter/setter methods. + + * src/main/java/de/intevation/flys/artifacts/model/MapserverStyle.java: + Splitted up the internal class Clazz. Now, there are two new inner + classes Style and Label that fulfill the appropriate Mapfile sections of + Mapserver. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Also Read font + attributes and add new Clazz Label for the Mapserver layer. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Set the + "labelItem" attribute on the LayerInfo object used to fill DB layer + templates. + +2011-11-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Re-use macros to include more data to + datacage in more situations. + +2011-11-11 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + Removed needless imports. + +2011-11-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSFixpointsArtifact.java: New + WMSDBArtifact that creates facets for "fixpoints" relation. + + * doc/conf/artifacts/winfo.xml: Registered "floodmap.fixpoints" as valid + "floodmap" facet. + + * doc/conf/conf.xml: Registered the new WMSFixpointsArtifact. + + * doc/conf/themes.xml: Added a theme for "floodmap.fixpoints". + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + Facet type "floodmap.fixpoints". + + * doc/conf/meta-data.xml: Made "floodmap.fixpoints" available via datacage. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added titles for + "floodmap.fixpoints" facets. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Refactored and (re)use macros. + +2011-11-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSBuildingsArtifact.java: New + WMSDBArtifact that creates facets for "buildings" relation. + + * doc/conf/artifacts/winfo.xml: Registered "floodmap.buildings" as valid + "floodmap" facet. + + * doc/conf/conf.xml: Registered the new WMSBuildingsArtifact. + + * doc/conf/themes.xml: Added a theme for "floodmap.buildings". + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + Facet type "floodmap.buildings". + + * doc/conf/meta-data.xml: Made "floodmap.buildings" available via datacage. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added titles for + "floodmap.buildings" facets. + +2011-11-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSLineArtifact.java: New + WMSDBArtifact that creates facets for "lines" relation. + + * doc/conf/artifacts/winfo.xml: Registered "floodmap.lines" as valid + "floodmap" facet. + + * doc/conf/conf.xml: Registered the new WMSLineArtifact. + + * doc/conf/themes.xml: Added a theme for "floodmap.lines". + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + Facet type "floodmap.lines". + + * doc/conf/meta-data.xml: Made "floodmap.lines" available via datacage. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added titles for facets. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Adjusted DC configuration to + also allow heightmarks and base data in discharge longitudinal + sections. Minor refac. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Adjusted DC configuration to let old + calculations be available for discharge longitudinal sections. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java: + Handle other WQKm and WKm Facets. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java + (IS): New inner class with static method to allow queries whether + a type belongs to a however-defined "group". + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml: Reverted accidental commit. + + * doc/conf/meta-data.xml: Extracted annotations-macro, add recommendation + for discharge longitudinal sections. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml: Reverted accidental commit. + + * doc/conf/meta-data.xml: Extracted annotations-macro, add recommendation + for discharge longitudinal sections. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Made discharge longitudinal section out compatible with annotations. + + * doc/conf/artifacts/winfo.xml: Added facets to compatibility list + for discharge longitudinal section outs. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Extracted Annotations-Macro in dc conf, recommend Annotations for + discharge longitudinal sections. (Note correction two commits later). + + * doc/conf/conf.xml: Extracted annotations-macro, add recommendation + for discharge longitudinal sections. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Handle Annotations in DischargeLongitudinalSection diagrams. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java: + Call doAnnotations for LONGITUDINAL_ANNOTATION facets. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Resolve code duplicate. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java + (doAnnotationsOut): Removed duplicate code. + Theoretically handle WQKMS data. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Adjusted call to doAnnotationOut. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java + (doAnnotations): Doc from LongitudinalSectionGenerator. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Include exception when logging issue with spline creation. + +2011-11-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java: + When during XPath evaluation an exception is thrown, log the + expression that caused the trouble. + +2011-11-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Use separate XYDataset for each curve. This is needed because + "Raum/Flaeche" needs specialized renderers, which are not compatible + with the standard renderers. + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java: + Removed superfluous import. + +2011-11-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSFloodplainArtifact.java: New + Artifact that is used to create WMS layers for floodplains in maps. + + * doc/conf/conf.xml: Registered the new WMSFloodplainArtifact. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + a new type 'floodmap.floodplain'. + + * doc/conf/artifacts/winfo.xml: Registered the 'floodmap.floodplain' facet + for floodmaps. + + * doc/conf/themes.xml: Added a theme for 'floodmap.floodplain' facets. + + * doc/conf/meta-data.xml: Added configuration for 'floodplain'. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added facet titles for + 'floodmap.floodplain' facets. + +2011-11-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSCatchmentArtifact.java: New + Artifact that is used to create WMS layers for catchments in maps. + + * doc/conf/conf.xml: Registered the new WMSCatchmentArtifact. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + a new type 'floodmap.catchment'. + + * doc/conf/artifacts/winfo.xml: Registered the 'floodmap.catchment' facet + for floodmaps. + + * doc/conf/themes.xml: Added a theme for 'floodmap.catchment' facets. + + * doc/conf/meta-data.xml: Added configuration for 'catchments'. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added facet titles for + 'floodmap.catchment' facets. + +2011-11-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSHwsArtifact.java: New + Artifact that is used to create WMS layers for flood protected works. + + * doc/conf/conf.xml: Registered the new WMSHwsArtifact. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + a new type 'floodmap.hws'. + + * doc/conf/artifacts/winfo.xml: Registered the 'floodmap.hws' facet for + floodmaps. + + * doc/conf/themes.xml: Added a theme for 'floodmap.hws' facets. + + * doc/conf/meta-data.xml: Added configuration for 'hws'. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added facet titles for + 'floodmap.hws' facets. + +2011-11-09 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/dbconnection.include: Removed. DB connections are + supported by LayerInfo objects now. So, we do not need to configure it any + more. + + * doc/conf/mapserver/db_layer.vm: The database connection is provided by + LayerInfo objects. The "INCLUDE dbconnection.include" has been replaced. + + * src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: The inner + State class got two new methods that provide information about db + connection string and connection type. + + * src/main/java/de/intevation/flys/artifacts/model/WMSDBLayerFacet.java, + src/main/java/de/intevation/flys/artifacts/model/LayerInfo.java: Both + classes support getter/setter for connection and connectionType. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Fill + LayerInfo objects used to create DB layers with the connection and + connection type provided by WMSDBLayerFacet. + +2011-11-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Allow height marks with points style in w-differences diagrams. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Handle HEIGHTMARKS_POINTS facets. + +2011-11-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Made Q Duration curve initially inactive. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java + (getInitialFacetActivity): Return 0 for DURATION_Q facets. Minor + cosmetics. + +2011-11-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Recommend mainvalues for Duration Curve Diagrams. + + * doc/conf/meta-data.xml: Recommend mainvalues for duration curve + diagrams. refactored into macro. + +2011-11-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Handle MainValue Facets in Duration Curve Diagrams. + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Handle MainValues. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Adjusted to call doAnnotations. + +2011-11-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Move do*Annotation* (like mainvalue) in XYChartGenerator. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java + (doAnnotations): New, moved from DischargeCurveGenerator. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java + (doMainValueAnnotations): Moved to superclass. + +2011-11-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Removed duplicate code. + +2011-11-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java + (): Minor cosmetics, added stability. + (getInitialFacetActivity): Let facets be inactive in duration curve + diagrams. + +2011-11-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Allow other.wqkms facets in many + outputs, mainvalues in duration curves. + +2011-11-09 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/dbconnection.include: Adapted connection params for + using an oracle database. + + * src/main/java/de/intevation/flys/artifacts/WMSQPSArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSKmArtifact.java, + src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java: + Added Oracle support for Mapserver's DATA attribute. Oracle doesn't allow + a "USING UNIQUE id" string in this attribute which is required by Postgis. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Modified the geometry type of "talaue.shp" from MultiPolygon to Polygon. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a function + which returns true, if the backend uses an Oracle db instance. Otherwise, + it returns false. + +2011-11-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue406 (Themestyle-editor: themes for "other.wkms" and + "other.wqkms" missing) + + * doc/conf/themes.xml: Fixed typos in WKms and WQKms theme names. + +2011-11-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue405 (Datacage: Recommendations get loaded twice). + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java + (setup): Do not try/catch exception. + (spawn_state): Generate just one "general" output. + +2011-11-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Added a log.warn() which prints out an exception - previously it was + just skipped. + +2011-11-08 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Removed orphaned datacage configuration which is + no longer loadable. + +2011-11-07 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Added an "post-describe" hook which is necessary to + load recommendations for "floodmaps". + +2011-11-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java + (loadRows, loadColumns, loadQRanges): Refactored in preparation to + ability to create WstValueTables for given wst_id and + column_pos (interpolation for static data). + +2011-11-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java: + Minor, picky cosmetics. + + * src/main/java/de/intevation/flys/artifacts/model/WQKmsFactory.java: + Removed junk. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Added documentation. + +2011-11-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Be more specific in what to catch. + +2011-11-04 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Added the CrossSectionTracks to the "floodmap" + datacage configuration. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added a + FacetType "floodmap.qps". + + * doc/conf/conf.xml: Defined an ArtifactFactory for the "wmspqsartifact" + string. The factory will create new instances of WMSQPSArtifact. + + * src/main/java/de/intevation/flys/artifacts/WMSQPSArtifact.java: New. This + Artifact is used to create "floodmap.qps" facets. It has an internal fixed + State WMSQPSState. + + * doc/conf/artifacts/winfo.xml: Added the "floodmap.qps" layer to the + "floodmap" output. + + * doc/conf/themes.xml: Added a theme for "floodmap.qps" facets. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added strings for the QPS WMS + layer used in floodmaps. + +2011-11-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Re-enable mainvalue-recommendations for computed discharge curves, + as the NPE should be gone. + + * doc/conf/meta-data.xml: Uncomment mainvalue recommendations. + +2011-11-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + When querying metadata/datacage, use only output-names of outputs that + actually exists (in the sense of having facets). + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java: + Get output names from artifact, not from state. + +2011-11-04 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Removed DEMs from floodmap configuration, + because we are not able to draw DEMs into maps. + +2011-11-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java: + Subclasses WMSDBArtifact now and defines an inner class RiverAxisState + which subclasses WMSDBState. + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + Removed. The RiverAxisState is an inner class of RiverAxisArtifact now + which subclasses WMSDBState. + + * doc/conf/artifacts/riveraxis.xml: Removed, because the RiverAxisArtifact + has a fixed static State only. + + * doc/conf/conf.xml: Removed riveraxis.xml definition. + +2011-11-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + For a Flys-Collection, add outputt to attributes-part of describe + document only if they contain facets. -> Prevent empty output nodes + in flys-collections outputs. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + (writeFacets): Added return type to indicate whether any facet was + written. Decide whether to add an output-node depending on this + return value. + +2011-11-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Create + line and polygon layers for barriers only if they are really existing. + +2011-11-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Disable mainvalue-recommendations for discharge curves as they trigger + a yet-to-be understood NPE. + + * doc/conf/meta-data.xml: Comment mainvalue-recommendations for + discharge curves. + +2011-11-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added new matching condition for theme-mappings: the name of + the output. + + * src/main/java/de/intevation/flys/themes/ThemeMapping.java: + Added output field and function to match it against a given + output name. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Createing ThemeMapping with output attribute from configuration. + + * src/main/java/de/intevation/flys/themes/ThemeFactory.java: + (getTheme(FLYSContext, string)): Removed, never called. + (getTheme): Added outputName argument, match it. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Pass outputs name until it can be matched against mapping. + +2011-11-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Added default themes for other.w(q)kms. + +2011-11-04 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Cosmetics, reduce logging noise. + +2011-11-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added access to static W_Q_Kms - data in much the same way then static + WKms. + + * src/main/java/de/intevation/flys/artifacts/model/StaticWQKmsCacheKey.java: + Cache Key for static wqkms data. + + * src/main/java/de/intevation/flys/artifacts/model/WQKmsFacet.java: + Facet for WQKms. + + * src/main/java/de/intevation/flys/artifacts/model/WQKmsFactory.java: + Factory to access WQKms. + + * src/main/java/de/intevation/flys/artifacts/StaticWQKmsArtifact.java: + Artifact that provides 'static' WQKms. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added STATIC_WQKMS type. + +2011-11-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/XYDatasetToZeroMapper.java: + New. Maps series to zero to be compatible with XYDifferenceRenderer. + It returns an iterator over XYDatasets to enable splitting by NaNs, + which still needs to be implemented. + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + Uses a XYDatasetToZeroMapper now. Fixed package name. + +2011-11-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added new matching options for theme-mappings to allow more + overspecification of defaults (e.g. now name,description-pattern and + master-artifacts attributes are matched). The first full match from + the configuration file is done. + New matching option in the masterAttr- field of a mapping are + super-basic until new use-cases come up. + Concrete new themes are point-styles of Ws when locations where chosen + to calculate. + + * doc/conf/themes.xml: Added newly defined Themes. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Put master-artifact in flys-context. + + * src/main/java/de/intevation/flys/themes/ThemeMapping.java: + Accept masterAttr in constructor. + (masterAttrMatches): New, check masterAttr-condition against + artifact. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + When creating ThemeMappings, pass in masterAttr. + + * src/main/java/de/intevation/flys/themes/ThemeFactory.java: + (getTheme): Evaluate masterAttr-condition, always return first full + match. + +2011-11-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java: + Added ARTIFACT key, documentation. + +2011-11-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StableXYDifferenceRenderer.java: + New. At the moment a pure copy of JFreeChart's XYDifferenceRenderer. + Needs to be refactored to cope with its limitations: + + - Series numbers need to be zero based. We have more than two series + in our diagrams. + + - Cannot handle definition holes indicated by NaNs. We have these + cases e.g. more than one "Fliessbereich". + +2011-11-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Reenabled dumping data to disk. + +2011-11-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Removed superfluous import. + +2011-11-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java: + Use new pair in stack of results and connections because they are + always used in pairs. Maintaining two separate stacks is not + needed any longer. + +2011-11-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/Pair.java: New. A generic pair. + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Rewritten to useful as test bed for "Raum/Flaeche" operations. + +2011-11-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/LayerInfo.java: Added + setter methods for all parameters and removed the constructors. There is + just an empty constructor - all parameters need to be set via setter + methods. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Modified the + creation of LayerInfo objects. + + * src/main/java/de/intevation/flys/artifacts/model/DBLayerInfo.java: + Removed, because the internal structure and constructors of LayerInfo have + changed, so that we gonna use LayerInfo for all layers now. + + * doc/conf/themes.xml: Modified the color definitions of + 'floodmap.riveraxis' and 'floodmap.kms' themes and added a 'symbol' field + to 'floodmap.kms'. + + * doc/conf/mapserver/symbols.sym, + doc/conf/mapserver/fontset.txt: New. Required by Mapserver. + + * doc/conf/mapserver/db_layer.vm: Added an 'EXTENT' field that is filled + using LayerInfo.getExtent(). + + * doc/conf/mapserver/mapfile.vm: Modified FONTSET directory and added a + SYMBOLSET. + + * src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: Added an + abstract method getGeometryType(). + + * src/main/java/de/intevation/flys/artifacts/WMSKmArtifact.java: Override + getGeometryType() of WMSDBArtifact. This Artifact provides "POINT"s. + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + Create new WMSDBLayerFacets with geometry type "LINE". + + * src/main/java/de/intevation/flys/artifacts/model/WMSDBLayerFacet.java: + Added a 'geometryType' attribute and getter/setter methods. This attribute + determines the type of geometry provided by this database wms layer. Types + could be "POLYGON", "POINT", "LINE" and so on. + + * src/main/java/de/intevation/flys/artifacts/model/MapserverStyle.java: + Added a 'symbol' attribute to the inner class Clazz. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Added a function to + parse the symbol field of a theme. This symbol is used for + MapserverStyle.Clazz. + +2011-11-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Apply point theme to heightmarks when imported in longitudinal + section diagram. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new FacetType HEIGHTMARK_POINTS. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFacet.java: + Allow name to be given in constructor. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + If heightmarks were loaded, give respective name in WKmsFacet + generation. + + * doc/conf/themes.xml: Added virtual "Points" and concrete + heightmark_points - theme. + + * doc/conf/artifacts/winfo.xml: Made longitudinal_section output + compatible with heightmarks_points. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Render heightmarks like other wkms. + + * doc/conf/meta-data.xml: Changed heightmark ids such that it can be + identified in StaticWKmsFacet . + +2011-11-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java: + Documentation added. + +2011-11-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ManagedDomFacet.java: + Fix bug where (wrong) active-attribute was set, doc. + +2011-11-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Refactoring to allow mainvalues in both discharge and computed + discharge curve diagrams. + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java + (addPointsQW): New helper function. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Moved doMainValueQAnnotations, doMainValueWAnnotations from child- + to parent-class, extracetd doDischargeOut. Use + StyledSeriesBuilder.addPointsQW . + +2011-11-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Removed logger/debugging noise. + +2011-11-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + 1) Pass outputs name to artifacts getInitialFacetActivity(). + 2) Do not allow "gaps" in positions of facets in outputs in attributes + of collection (prevent e.g. positions 1,3,5; will become 1,2,3 + instead). + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + Pass outputname to artifacts getInitialFacetActivity(), prevent + gaps in facets positions in outputs (1,3,10 become 1,2,3). + +2011-11-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + 1) Give Artifacts information about the out when they have to decide + whether a given facet is initially in/active by adding parameter + to getInitialFacetActivity(+outputName). + 2) Generate separate Set of MainValueFacets for discharge curves. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java, + src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + (getInitialFacetActivity): Adjusted, new parameter outputName. + Added MAINVALUES_{Q,W} definition. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java, + src/main/java/de/intevation/flys/artifacts/model/MainValuesWFacet.java: + Accept name in constructor. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Create second pair of MainValuesFacets, give distinguishable names. + +2011-11-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added compatibility of (computed)discharge-curve diagrams with + mainvalues. + + * doc/conf/artifacts/winfo.xml: Added mainvalues to compatibility list + of (computed) discharge curve outputs. These facet-definitionss can + differ in names because we can can have up to 4 mainvalue facets in + one state. + +2011-11-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WMSKmArtifact.java: Determine + the extent of such WMS layer based on the list of RiverAxisKm objects + returned by the backend. + +2011-11-01 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Added a datacage node that represents a + kilometer WMS layer. + + * doc/conf/conf.xml: Added a new Artifact WMSKmArtifact. + + * doc/conf/themes.xml: Added a style for 'floodmap.kms' facets. + + * doc/conf/artifacts/winfo.xml: Defined 'floodmap.kms' as valid floodmap + facet. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + a 'floodmap.kms' facet. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a method to + determine the srid of a river based on its name. + + * src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java: New. This + Artifact should act as base Artifact for WMS layers that represent data + from database datastore. + + * src/main/java/de/intevation/flys/artifacts/WMSKmArtifact.java: New. This + Artifact is used to generate facets for kilometer WMS layers. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added default descriptions + for 'floodmap.kms' facets. + +2011-11-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix incompilability. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelInfoState.java: + Adjust to changed CrossSectionFacet. + +2011-11-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Minor preparations to handle multiple cross sections in one + diagram/artifact, faking certain aspects (e.g. ability to display + multiple cross sections, but let these fetch the exactly same data + for now). + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Parameterize but fake access to cross-section (always take first + one). + (getCrossSectionName,getCrossSectionNames): Renamed, access names + of all cross-sections, so that at least facets with different names + are created (they will still deliver the same data). + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java: + Allow indexing. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Index created cross-sections. + +2011-11-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Show multiple water lines and facets in cross-section diagram if + multiple waterlevel values had been entered. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java + (appendBackgroundActivity): Made static. + (getWaterLines): Add 'idx' argument to specify index of queried + waterlevel. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + Add index. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Add one Facet for each of the computed waterlevels. + +2011-10-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/VectorUtils.java: + Added code to calculate intersection points. + + * src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java: + Added polygons for trivial cases. WIP + +2011-10-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java: + Made it compilable again. + +2011-10-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/VectorUtils.java: + Made X() and Y() access macros public. + + * src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java: + More code. WIP. + +2011-10-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java: + Handle start points when building polygons. Work in progress. + +2011-10-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/VectorUtils.java: + New. Vector operations on Point2D. + + * src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java: + Moved vector operations to VectorUtils. + +2011-10-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFactory.java: + Do not call size() in for loop again and again. + +2011-10-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java: + Interim check in. Work in progress. + +2011-10-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Polygon2D.java: New. + Polygon class to help creating "Raum/Flaeche" renderers with gaps in + their definitions. WORK IN PROGRESS! + +2011-10-28 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added a default theme for the riveraxis used in the + floodmap. + + * src/main/java/de/intevation/flys/artifacts/model/MapserverStyle.java: + New. This class is used by ThemeUtil to create a style which is + compatible for Mapserver- + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: Added a method to + retrieve a Mapserver compatible style (as string) based on a given + Document (that comes from CollectionItem's attribute). + + * src/main/java/de/intevation/flys/artifacts/model/LayerInfo.java: + Implemented the setStyle() and getStyle() methods. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Added a + new parameter 'style' to createDatabaseLayer(). This parameter is set on + LayerInfo. + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: Create + Mapserver compatible styles and call createDatabaseLayer() with this + style. + +2011-10-28 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Defined "floodmap.riveraxis" and + "floodmap.wmsbackground" as compatible layers for the floodmap output. + + * doc/conf/mapserver/db_layer.vm: New. This layer template is used for + Mapserver layers with database datastore. + + * doc/conf/mapserver/dbconnection.include: New. The database configuration + used in the db_layer template. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a method + getUserWMSUrl() that returns the URL to the user specific WMS server. + This method requires a UUID of an Artifact to identify the owner of the + Artifact. + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java: Use + FLYSUtils.getUserWMSUrl() to create the URL to the user WMS for + WMSLayerFacets creation. + + * src/main/java/de/intevation/flys/artifacts/model/WMSDBLayerFacet.java: + New. Subclasses WMSLayerFacet to save data and filter parameters used + for database storage in Mapfiles. + + * src/main/java/de/intevation/flys/artifacts/model/DBLayerInfo.java: New. + Subclasses LayerInfo to save database relevant parameters. + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + Creates new WMSDBLayerFacets, so that the riveraxis layer data is + fetched from database. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Added a + public method that allows creating layers (type LINE) based on + WMSDBLayerFacets. + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: Enabled + support for Facets other than "floodmap.wsplgen" and "floodmap.barriers". + Those other Facets are supposed to be WMSDBLayerFacets. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Refactored, added StyledSeriesBuilder to unify adding points to + XYSeries. + + * src/main/java/de/intevation/flys/exports/StyledSeriesBuilder.java: + New class to help with adding points to XYSeries. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Use StyledSeriesBuilder to add points to series. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added DC-conf, such that static data can be loaded from w-difference + diagrams datacage. + + * doc/conf/meta-data.xml: Minor "refactoring" (definition of two + macros, allow certain static data to be loaded via datacage to + w-difference diagrams, too. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Load and display annotations in w-differences, minor polishing. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Use FacetType 'instead' of string. Allow Annotations in + WDifferences- diagram. + + * doc/conf/meta-data.xml: Recommend annotations in w-differences case. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + Survive case where a given output doesnt exist in compatibility + matrix. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/StaticState.java: + Added simpler constructor. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Adjusted construction of StaticStates. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Allow Annotations in longitudinal and + w-differences diagrams. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Use artifacts configuration (e.g. winfo.xml) to define which facets + can be used in which output. Hide no-matches. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java, + src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Added use of "compatibility matrix". Only include facets in in + collections description document that are marked compatible in the + masterartifacts configuration (e.g. winfo.xml). + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java + (mergeAttributes, getMasterArtifact): Extraced, updated caller. + Cosmetics to reduce indentation one step. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java + (getStateHistoryIds): New, return list of current and all previous + state ids. + +2011-10-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Trigger the re-creation of FLYS mapfile if endOfLife() of this state is + called. + +2011-10-28 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/mapfile.vm: The "layers" injected by VelocityEngine is + now used to include layers. A single string in this list represents the + path to a file which contains a LAYER section for Mapserver' Mapfile. + + * src/main/java/de/intevation/flys/wsplgen/JobExecutor.java: Removed the + update() call of MapfileGenerator. Mapfiles are generated by MapGenerator + only which requires a FLYSArtifactCollection.doOut()! + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: Call update() + of MapfileGenerator to trigger the re-creation of mapfile(s). + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Collect all + LAYER snippets from filesystem and inject the filepath for each snippet + into the Mapfile template. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java, + src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java, + src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Cosmetics, doc. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Let OutputParser and AttributeParser collect all facets on the way. + + * src/main/java/de/intevation/flys/collections/OutputParser.java, + src/main/java/de/intevation/flys/collections/AttributeParser.java: + Collect all facets while iterating over Outputs and Attributes, + documentation added. + +2011-10-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Extracted getFlysContext from FLYSArtifacts into FLYSUtils. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java + (getFlysContext): Added, extracted from FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + (getFlysContext): Moved to FLYSUtils, updated callers. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java, + src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Update callers to getFlysContext. + +2011-10-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: Bugfix: + Catch IOException - flys-artifacts compiles again. + +2011-10-28 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Defined "floodmap.barriers" as valid facet + for floodmaps. + + * doc/conf/mapserver/shapefile_layer.vm: New. Currently a copy of + layer.vm. This template will evolve to a special mapserver layer + template with a shapefile data source. + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java: Fixed broken + facet name of barriers. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Added + public methods for creating wsplgen and barriers layer files for + mapserver. + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: Use + MapfileGenerator to create new layer files for wsplgen and barriers. + +2011-10-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: Added new + method gerRiverBoundary() which returns an Envelope object (which + represents the bounding box of a Geometry) of a riveraxis specified by its + rivername. + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: Use + Geometry.getRiverBoundary() to determine the max extent of a river. + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java, + src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: Use + JTS Envelope to save the bounding boxes of WMS layers. + + * src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java: + Adapted the code to apply the changes in GeometryUtils (use Envelope to + determine the max extent of the river axis). + + * src/main/java/de/intevation/flys/exports/MapGenerator.java: New (work in + progress). This Generator will currently return a map configuration in XML + which consists of parameters required by OpenLayers to create a map. + + * doc/conf/conf.xml: Registered the new MapGenerator. + +2011-10-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Do not recommend historical data to load + when having computational discharge curves. + +2011-10-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Reduce noise, given "error" message was more of "debug" nature. + +2011-10-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Restore mapping of state id to facets (essentially revert, revision + 3083 and 3088). + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + (getInitialFacetActivity): Be more explicit on which facets to + introduce inactivated. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Minor refactoring, declare a string final static. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticFLYSArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSBackgroundArtifact.java, + src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java, + src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java, + src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Restore association from state id to facets. + +2011-10-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java, + src/main/java/de/intevation/flys/collections/OutputParser.java: + Cosmetics, documentation. + +2011-10-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Prepare rendering of "other/static wkms" (functional) and + w-differences (not yet fully functional). + +2011-10-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Cosmetics. + +2011-10-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java: + Do not store facets in a map from stateId to list of facets, but in + a pure list instead. + +2011-10-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/artifacts/winfo.xml: Adjusted to newer semantics, + minor cleanups. + +2011-10-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Resolve association of facets to states in artifacts. This eases + merging of outputs and facets and inhibition of unwanted outputs + substiantially (at the price of slightly more expensive merging). + Also, the semantics of artifacts configuration files (e.g. winfo.xml) + is changed (facet elements within an output elements are used for + merging). + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticFLYSArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java, + src/main/java/de/intevation/flys/artifacts/WMSBackgroundArtifact.java, + src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java, + src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Do not store facets in a map from stateId to list of facets, but in + a pure list instead. + +2011-10-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Added dc configuration for some data + that can be loaded from longitudinal section diagrams. + +2011-10-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Cosmetics, docs. + +2011-10-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Let Qs in Longitudinal Diagram be inactive, initally. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + (getInitialFacetActivity): Do not let Facets ending with a 'q' + enter in active state. + +2011-10-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Fix broken datacage config. + +2011-10-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Configured to include correct id to + clone artifact that produces w-diff. + +2011-10-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Revert correct behaviour of Annotations (the small axis tick shall + always be drawn). Minor refactoring. + +2011-10-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Added configuration to include differences + in datacage when longitudinal sections are shown (yet not + functional). + +2011-10-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: Cosmetics. + +2011-10-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/themes.xml: Added theme for w_differences facets. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java + (createSecondAxisRange): Survive parameter-nullness for now. + Added documentation. + +2011-10-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/themes/ThemeAccess.java: + New. Caching wrapper around an XML document theme. It uses ThemeUtil + to access the values and stores them in instance variable. + Background: ThemeUtil use XPath a lot which is expensive. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Use ThemeAccess to style the annotations. + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java: + Removed some XPath strings. They are in ThemeUtil. + +2011-10-21 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + Added methods to parse further attributes. + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java: + Apply the theme attributes and use ThemeUtils to get the attribute values. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Removed the spamy debug output. + +2011-10-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + To obtain the size of a diagram it is rendered twice. The + second time the generated image is omitted so the concrete + rendered image is not needed. To save CPU cycles in this pass + the image is rendered to to /dev/null Graphics2D object. + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: + Added boolean system property "info.rendering.nop.graphics" (default: false). + With this property set the info rendering is done via a new + NOPGraphics2D opbject which does not render the image. + + * src/main/java/de/intevation/flys/java2d/NOPGraphics2D.java: + New. Implements java.awt.Graphics2D trivial empty methods. + This prevents rendering. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Commented out spamy debug output + +2011-10-21 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Draw the text background and use orientation attribute. + +2011-10-21 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/themes.xml: + Renamed 'textbackground' to 'backgroundcolor' to have 'color' in the + attribute name. + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + Process text attributes correctly. + +2011-10-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/CrossSectionKMService.java: + New. Service to lookup the Nth nearest neighbors for a set of given + cross section ids and kms. + + * doc/conf/conf.xml: Registered service. + + * doc/conf/cache.xml: Cache config. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + Removed superfluous imports. + +2011-10-20 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + Added methods to extract further attributes from theme. + +2011-10-20 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added main value themes for longitudinal section + charts. + + * src/main/java/de/intevation/flys/themes/ThemeMapping.java: New. This + class stores the name of a facet, the related theme and a pattern + string. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Read the pattern string and store a list of ThemeMapping objects in the + FLYSContext. + + * src/main/java/de/intevation/flys/themes/ThemeFactory.java: Modified + getTheme() which now takes the FLYSContext, the name of a facet and an + optional pattern string. Now, we can have specialized Themes for each + chart type. E.g. the facet "longitudinal_section.w" maps the default + Theme for W lines in longitudinal section charts. If the optional + pattern string matches the pattern ".*(HQ1000)(\D.*)*", the ThemeFactory + will return the Theme "LongitudinalSectionW_HQ1000". + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Use the description of a facet as pattern string to get the relevant + Theme from ThemeFactory. + +2011-10-20 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/themes.xml: + Added new theme attributes. + +2011-10-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix WDifference plots where masterartifact has no range set. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + (addSubtitles): Overridden, the master artifact has no + range. + +2011-10-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix masterartifact in collections in cases where the original + masterartifacts facets do not come first in certain list. Query + 'backend'/db instead. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Set 'real' master artifact, defined to be oldest belonging to this + collection. + +2011-10-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java, + src/main/java/de/intevation/flys/artifacts/states/DGMSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + Modified the method signature of createStaticData() which now also + requires a FLYSArtifact. + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Override createStaticData() to create titles for Qs manually - we want + to display the named main values if existing for the selected Qs. + +2011-10-19 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/themes.xml: + ComputedDischargeCurveW and ComputedDischargeCurveQ inherit attributes from + theme 'Text'. + +2011-10-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix for flys/issue316 + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java: Added + constructor to not sort the data. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Use the not sorting constructor of StyledXYSeries. + +2011-10-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + moved the code to create WSP W and Q facet names to FLYSUtils. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: New functions for + creating WSP W and Q facet names and for querying a named main value + based on a given gauge and value. The names of W and Q facets will now + depend on the selected Q and Q mode: if the mode is "q at gauge" and a + named value is found for the given value, the facet's name contains the + named value instead of the value itself. + +2011-10-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix datacage configuration to let client load ZUS and flood + protections. + + * doc/conf/meta-data.xml: Use 'ids' instead of 'id' to help client. + +2011-10-19 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + Added methods to parse text attributes from theme document. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java, + src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Apply a theme to axis annotations. + +2011-10-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Create (data) Label from data string (client will be adjusted to send + the name). + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + Create label from input data string, documentation added, junk + removed. + +2011-10-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java(zoom): + Do not crash if no axis is given. + +2011-10-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Added + getFormat() which extracts the format string from XML request document. + + * src/main/java/de/intevation/flys/exports/ChartExportHelper.java: Adapted + method signatures of exportImage(), exportSVG() and exportPDF(). All + methods now take a CallContext object which stores extra chart export + parameters. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Enabled PDF and SVG chart exports based on the "format" string given in + the XML request document. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Simplify rendereing W(Q)Kms in WDifferencesCurveGenerator. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + (doWOut, doWOut): Simplified. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Render zus and flood-protections in WDifferences-diagrams. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Added basic respect of "other.wkms"- facets. + + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Adjusted Datacage-Configuration to fetch "extra longitudinal...." + (.zus) - waterlevels in certain case (in system-part). + + * doc/conf/meta-data.xml: Adjusted to present extra-kms with + staticwkms factory in certain case. + +2011-10-17 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/themes.xml: + Added new virtual theme for text with the attributes 'font', 'textcolor' + and 'textsize'. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Give StaticWKmsArtifacts proper names, and pre-deselect them. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + (getInitialFacetActivity): Overridden to let facets enter plot + inactively. + (setup): Give Facets the name of the Wst. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFactory.java: + Refactored to expose getWKmsName separately. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Adjusted Datacage-Configuration to fetch flood-protections when + waterlevels are requested (in system-part). + + * doc/conf/meta-data.xml: Adjusted to present flood-protections with + staticwkms factory in certain case. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Register staticwkms factory. + + * doc/conf/conf.xml: Register staticwkms factory to spawn StaticWKms- + Artifacts. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fetch name of static WKms. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFactory.java: + Removed dependence on "kind", but fetch name for created WKms. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Remove dependence on Kind. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Store parameterization in data, not in Artifact. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + Resolve col_pos and wst_id field, use data instead. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add convenience-method to add defaultdata (string). + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + (addStringData): Add Default (String) Data . + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add a new Artifact and Facet (StaticWKmsArtifact, WKmsFacet) to + access WKms obtainable with the WKmsFactory. + + * src/main/java/de/intevation/flys/artifacts/StaticWKmsArtifact.java: + New, artifact with single state to get WKms from WKmsFactory. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFacet.java: + New Facet to display W over km. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new type name. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add WKMsFactory to access 'static' wst-data. + + * src/main/java/de/intevation/flys/artifacts/model/StaticWKmsCacheKey.java: + Cache Key for the static WKms data. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsFactory.java: + New, creates WKms from wst-id and column. Does not yet fetch the + name. + + * doc/conf/cache.xml: Added cache configuration for static wkms data. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics, docs. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java, + src/main/java/de/intevation/flys/artifacts/model/ManagedFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: + Cosmetics, docs. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WKmsImpl.java: + Added constructor that takes name, docs. + +2011-10-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix issue that Annotations do not come with theme/style. + + * doc/conf/themes.xml: Added "Annotations" default style. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Set style of annotations, minor cosmetics. + +2011-10-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Made inner class ThemeList static. + s/new Integer(small)/Integer.valueOf(small)/ + +2011-10-17 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + The inner class ThemeList makes now use of ManagedDomFacet to read the + attributes of Facets saved in the Collection's attribute. + +2011-10-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + flys/issue314: Variables in datacage are now case insensitive. + (H2 returns meta data variables uppercase) + + * doc/conf/meta-data.xml: + Made a statement more precise. Added some debug output. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/CompiledStatement.java: + Use uppercase variable names. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/StackFrames.java, + src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java, + src/main/java/de/intevation/flys/artifacts/datacage/templating/FunctionResolver.java, + src/main/java/de/intevation/flys/artifacts/datacage/templating/ResultData.java: + Variables are now treated as uppercase. + + * src/main/java/de/intevation/flys/artifacts/datacage/Recommendations.java: + Input variables are now treated uppercase. + +2011-10-17 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ManagedDomFacet.java, + src/main/java/de/intevation/flys/artifacts/model/ManagedFacet.java, + src/main/java/de/intevation/flys/artifacts/model/ManagedFacetAdapter.java: + Prepared Facets to support a "visible" attribute. + + * src/main/java/de/intevation/flys/collections/OutputParser.java: Adapted + the constructor call of ManagedFacetAdapter. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + The inner class ThemeList now supports the "visible" attribute of + ManagedFacets. + +2011-10-17 Raimund Renkert <raimund.renkert@intevation.de> + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java: + Added method to apply line type. + + * doc/conf/themes.xml: + Changed initial default value for line type. + +2011-10-17 Ingo Weinzierl <ingo@intevation.de> + + flys/issue226 (W-INFO: Dauerlinienberechung /Abbbildung x-Achse) + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Set the upper bound of these charts to 364. + +2011-10-17 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/GaugesFactory.java: + Added a function that returns a Gauge based on its name. + + * src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java: + Create proper descriptions for facets. + + * src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: Added a + setter for labels. + + * src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Use the string returned by Facet.getDescription() as series names. The + ThemePanel and the Legend will always display the same titles for curves + now. + + +2011-10-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue363 (W-INFO/ Abflusskurve, Extremwert-Rendering). + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + (parseLineWidth): New. Get line width from Document. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + When adding annotations, parse line width from theme, set it. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + When painting, set Paint and stroke early enough. + +2011-10-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Put the + config directory into the Velocity context. It is available as + '$CONFIGDIR' in templates. + + * doc/conf/mapserver/mapfile.vm: Set the debug file to + "$CONFIGDIR/flys-user-wms.log" and added a LEGEND section. + + * doc/conf/mapserver/wsplgen_class.vm: Adapted the class names. Those + names are displayed in the image served by GetLegendGraphic. + +2011-10-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add possibility of programmatic configuration of initial "activity" + state (active or inactive) of (Managed)Facets by introducing + FLYSArtifact.getInitialFacetActivity. This method shall be overriden + by subclasses where Facets are wanted to come to live inactive. + Artifacts will be asked only once how the MangedFacet should come to live, + namely when AttributeWriter finds a genuinely new Facet. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java, + src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java + (getInitialFacetActivity): + New function to let Artifact decide whether a ManagedFacet shall + initially be set to active or inactive. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + Accept database in constructor. For genuinely new Facets, spawn its + mother artifact and ask whether the (Managed)Facet shall be active + or inactive (initially). + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java + (buildOutAttributes): Pass database to AttributeWrite (which needs it + to spawn artifacts), rename items parameter to reflect content. + +2011-10-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics, removed obsolete imports. + + * src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Removed obsolete imports. + +2011-10-12 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Added a further attribute "mark.selected" to the barriers feature type. + This attribute is used in the client, where we are not able to remove it + properly. Reading the GeoJSON string without this attribute is no longer + possible... strange! + +2011-10-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added i18n for label of wdiff "pair select" states data. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n for + state.winfo.waterlevel_pair_select . + +2011-10-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Addressed "Wrong labels" [6] part of flys/issue371 (W-INFO / Differenzen: + Anmerkungen zur Umsetzung) . + + * src/main/java/de/intevation/flys/exports/WDifferencesExporter.java: + Adjusted variable names to avoid conflict in subclasses, adjusted + default value for i18n string. + +2011-10-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics, docs. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Cosmetics: Space after full stop in commments, slightly improved + documentation, added one debug message. + +2011-10-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix remainder of flys/issue304 (Erweiterte Funktionen W-Differenzen) . + + * doc/conf/artifacts/winfo.xml: Removed obsolete data of + WDifferencesState. + + * src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java: + Re-enable facet-filtering, but adjust filters before that happens + (former longitudinal_section output is now w_differences output). + +2011-10-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added wdiff-chart translations. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n for wdiff. + +2011-10-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Expose translateable Strings as constants. + +2011-10-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix most labels in w-differences charts. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Remove most static final i18n-variables in favor of direct String + usage or usage of methods. By this, allow easier adoption of labels + in subclasses. + +2011-10-11 Ingo Weinzierl <ingo@intevation.de> + + flys/issue383 (Zweite Y-Achse wird beim Zoomen/Verschieben nicht angepasst.) + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Call adjustAxes() before applying zoom settings with autoZoom(). We need + to add new y-axes first before we adjust their ranges. + +2011-10-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + s/new Integer(small)/Integer.valueOf(small)/ + +2011-10-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Do not fire change events for each and every data point added. + +2011-10-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix WDifferences with more than one Pair (crashed due to incorrect index for + facets.) + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Fix wrong index for difference facets (allows for more than one + difference facet per artifact without crashes). + +2011-10-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Use slightly modified doWOut-implementation from + LongitudinalSectionGenerator (here need to add Ws to different axis). + +2011-10-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + Fix import/reference. + +2011-10-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Let WaterlevelPairSelectState include diffids-data (if any) to enable + future work on repopulation of Grid in GUI when jumping back + (reparameterization). + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + (createItems): Override to include old data. + +2011-10-10 Ingo Weinzierl <ingo@intevation.de> + + flys/issue150 (Diagramm: Anzeige von W bergauf) + flys/issue345 (W-INFO / Wasserspiegellagenberechnung, Diagrammausgabe) + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Corrected the determination to invert the x axis, so that waterlines + will start with their highest value at the left and end with their + lowest values at the right. + +2011-10-10 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/DifferenceCurveFacet.java: + Cosmetics, added an (@Override) annotation. + + * src/main/java/de/intevation/flys/artifacts/model/CalculationResult.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Cosmetics, added documentation. + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Cosmetics, whitespace after full stops in comments, added + (@Override) annotation. + +2011-10-10 Ingo Weinzierl <ingo@intevation.de> + + flys/issue220 (Diagramm: Achsenbeschriftungen an verschiedenen Achsen müssen gleich aussehen) + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Adjusted the label font of the 2nd y-axis - now, both axes labels look + equal. + +2011-10-10 Ingo Weinzierl <ingo@intevation.de> + + flys/issue189 (WINFO/Dauerlinie: Sortierung der Berechnungsausgabe nach Dauerzahlen aufsteigend) + + * src/main/java/de/intevation/flys/artifacts/model/WQDay.java: Added a + method that determines if the items (days) in this object are increasing + or not. + + * src/main/java/de/intevation/flys/exports/DurationCurveExporter.java: + Changed the order of the CSV export - the highest day is at the top of + the export; the lowest day is at the bottom. + +2011-10-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Worked on flys/issue150 (Diagramm: Anzeige von W bergauf). + Still does not work in all cases. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java (generateChart()): + Reordered calls to ensure that the inversion of the x axis is + not eliminated by other chart generation steps as a side effect. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Assuming that JFreeChart is inverting axis automatically if the + KMs are reversed ordered only do invert only in some situations. + + Do not invert axis for Q (@Ingo: This is wrong! We must do this + if we are only displaying the Qs and the Ws are deactived). + +2011-10-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Take care on empty ranges while preparing ranges for single points. + +2011-10-07 Ingo Weinzierl <ingo@intevation.de> + + flys/issue114 (W-INFO: Wasserspiegellagenberechnung / Ort (Spezialfall: Generierung eines Diagramms bei punkthafter Berechnung)) + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Expand + ranges for x and y axes if there is just a single point in a series - + JFreeChart requires a range where lower <> upper. + +2011-10-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java, + src/main/java/de/intevation/flys/artifacts/states/DistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/RangeState.java, + src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Add whitespace after full stop in comments, minor doc improvements. + +2011-10-07 Ingo Weinzierl <ingo@intevation.de> + + flys/issue353 (W-INFO / Wasserspiegellagenberechnung, Diagramm) + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Adapted the process of collecting outs for Artifacts/Facets. We will now + call OutGenerator.doOut() for each Artifact and Facet - never mind if + the facet is activated (visible) or not. The OutGenerator should decide + on its own whtat to do with facets which are "marked" as _not_ visible. + + * src/main/java/de/intevation/flys/exports/OutGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/ReportGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java, + src/main/java/de/intevation/flys/exports/ATExporter.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: + Adapted the signature of OutGenerator.doOut(). There will be a new + boolean parameter "visible" that determines if the facet specified in + this method is visible for this output or not. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Now, + that we walk over every Artifact/Facet, we are able to collect min/max + data for all axes. We store these information and use them to set the + ranges of x and y axes. The result of this: a chart can have proper axes + set without any data in it. + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: Use + min/max ranges stored while calling doOut() for each Artifact/Facet + instead of fetching those information from chart's Datasets (which could + be null). + +2011-10-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/Formatter.java: Changed the max + number of digits for AT exports from 0 to 2. + +2011-10-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/ATWriter.java: Get rid + of buggy first line code. + +2011-10-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + fixed flys/issue201 + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Replace >= with > in km index lookup because last km was not found. + +2011-10-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + fixed flys/issue177 + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Revert rev2245. Code works fine now! :-) + +2011-10-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: Stores a + list of XYTextAnnotations instead of FLYS specific Annotations. This + makes this class suitable for other annotation types as well. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java, + src/main/java/de/intevation/flys/artifacts/model/MainValuesWFacet.java: + Both facets' getData() will now return an instance of FLYSAnnotation. + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationFacet.java: + Create XYTextAnnotations used to instantiate an object of + FLYSAnnotation. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Removed the code to add annotations to the plot. This task is general + enough to move this code to parent class. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Instances of this class are now able to store - besides first and second + axes datasets - a list of annotations. This annotations are added to the + plot after the datasets have been added. To support LegendItems for + those annotions, it was necessary to create a the LegendItemCollection + by ourself. This work is done while applying the themes for each series + in the chart. + +2011-10-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Removed code duplication of guessWaterIncreasing() + + * src/main/java/de/intevation/flys/artifacts/model/WKms.java(allKms, allWs): + Added methods to fetch all kms and all ws. + + * src/main/java/de/intevation/flys/utils/DataUtil.java: Generalized to + get WKms as arguments. + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java, + src/main/java/de/intevation/flys/artifacts/model/WKmsImpl.java, + src/main/java/de/intevation/flys/artifacts/model/WQ.java: Implements + the extended WKms interface. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Uses the generalized DataUtil.guessWaterIncreasing(). + +2011-10-05 Ingo Weinzierl <ingo@intevation.de> + + flys/issue347 (W-INFO / Wasserspiegellagenberechnung, Längsschnittdiagramm) + flys/issue303 (Keine Streckenfavoriten, wenn nur Q im Längsschnittdiagram ausgewählt) + flys/issue353 (W-INFO / Wasserspiegellagenberechnung, Diagramm) + + * src/main/java/de/intevation/flys/jfree/FLYSAnnotation.java: New. A + wrapper for Annotations which allows us to provide a description for a + set of annotations. + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationFacet.java: + The getData() will now return an instance of FLYSAnnotation that wraps + the Annotations returned by the AnnotationArtifact. The lebel of + FLYSAnnotation is the description of this Facet. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Modified the way to add Annotations. We will no longer create an empty + series to support a LegendItem for a set of Annotations, but we will add + a LegendItem manually to the LegendItemCollection of the plot. In + addition, we are now able to display annotations if one of the two + y-axes are missing. If there are no y-axes existing, we are not able to + display annotations yet. + +2011-10-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java: + Lifted the wrong point. Now all backjump corrections look fine. :-) + +2011-10-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Fixed bugs and make use of a cache for annotations now. + +2011-10-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Worked on flys/issue31 + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java: + Simplified the code a lot. Needs testing. Maybe flys/issue31 is gone + +2011-10-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Fetch the WstUnit value from river - the Wst itself no longer supports a + Unit iself. + +2011-10-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java, + src/main/java/de/intevation/flys/utils/DoubleUtil.java: Moved some generic + double array code to DoubleUtil. + +2011-10-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/utils/DoubleUtil.java (interpolateSorted): + Added code to linear interpolate double values in a sorted array. + Keys and values are given as double arrays. Keys need to be sorted. + +2011-10-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + Removed superfluous imports. + +2011-10-04 Ingo Weinzierl <ingo@intevation.de> + + flys/issue330 (Dauerlinie kann nicht berechnet werden) + + * src/main/java/de/intevation/flys/artifacts/model/Calculation3.java: + Add a problem if no data was found for duration curves. + +2011-10-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/themes/Theme.java, + src/main/java/de/intevation/flys/themes/DefaultTheme.java: Added + getter/setter methods to provide a facet (string) and index (int). Both + values are written as attribute to the Theme's XML representation. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Set the "facet" and "index" values of themes. + +2011-10-04 Ingo Weinzierl <ingo@intevation.de> + + flys/issue346 (W-INFO / Anzeige der Höheninformation) + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Modified x and y axis title. The x axis title is now "RIVERNAME-km"; the + y axis title is now "W[WST_UNIT]" where WST_UNIT depends on the unit of + the WST. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Modified i18n expressions for + x and y axis of longitudinal section charts. + +2011-09-30 Ingo Weinzierl <ingo@intevation.de> + + flys/issue351 (W-INFO / Wasserspiegellagenberechnungen) + + * src/main/java/de/intevation/flys/utils/DoubleUtil.java: Modified the + explode() function that returns a list of values specified by min, max + and an interval. If the last value, determined by the interval, is + bigger than the max value, it is not included in the result list. + +2011-09-30 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + flys/issue334 (Querprofil-Diagramm: Ausgabe dieses Diagrammtyps + möglich, obwohl WSP Berechnung keine Ergebnisse liefert) + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + (compute): Add Facets regarding CrossSections only if data available. + +2011-09-29 Ingo Weinzierl <ingo@intevation.de> + + flys/issue176 (Diagramm: Benennung eines Abflusses bei gewählter Höhe am Pegel) + flys/issue349 (W-INFO / Wasserspiegellagenberechnung, Längsschnittdiagramm) + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Create titles for W and Q waterlevel facets with proper fractions. + +2011-09-30 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + (createStaticData, getLabels): Create proper labels for differences. + +2011-09-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + flys/issue244 (WINFO: Export von AT-Dateien im ersten Teil unterschiedlich) + flys/issue332 (W-INFO / Berechnung Abflusskurve, Export, FLYS 2.5) + + * src/main/java/de/intevation/flys/exports/ATWriter.java: Due to a rounding + issue the w's of the first line underun the minimal w of the curve at times. + An extra test was introduced to suppress the output of the q's of the wrong w's. + +2011-09-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Use StringUtil.wWrap , fix wrong loop, minor refac and cosmetics. + +2011-09-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java: + Extracted/use StringUtil.wWrap . + +2011-09-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MainValuesService.java: + Log the gauge which has been determined. + +2011-09-28 Ingo Weinzierl <ingo@intevation.de> + + flys/issue332 (W-INFO / Berechnung Abflusskurve, Export, FLYS 2.5) + + * src/main/java/de/intevation/flys/exports/ATExporter.java: Store the + master Artifact which is set via setMasterArtifact(). This is required + for meta information used while preparing the header row of AT exports. + + * src/main/java/de/intevation/flys/exports/ATWriter.java: Print a header + row into the AT export for being compatible with desktop FLYS. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added header row for AT + export files. + +2011-09-28 Ingo Weinzierl <ingo@intevation.de> + + flys/issue328 (W-INFO / ÃœSK: Auswahl der Wasserspiegellage / Auswahlunterstützung) + + * doc/conf/meta-data.xml: Added an out 'waterlevels' that might be used to + fetch user specific waterlevels (same as longitudinal sections, but + without Q facet). + In addition, the system specific datacage stuff is now fetched, when: + a) no user-id is given + b) a user-id is given and there is a parameter 'load-system' + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java: + If the label of the WQKms object specified by the waterlevel selection + begins with a "Q", the label is wrapped into a "W()", e.g. "W(Q=1200)". + +2011-09-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Made + feed() able to remove existing data items from Artifact's data pool. + Therefore, the value for the item which should be removed needs to an + empty string. + +2011-09-28 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Extracted StringUtil.unbracket from WaterlevelSelectState.strip. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java: + Extract and use StringUtil.unbracket, minor doc. + +2011-09-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Changed access of getCurrentState() from protected to public. + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java: We + use the configured Outputs instead of the actuel Outputs of an Artifact + to make recommendations, now. This has the bad side effect of giving + recommendations for Outputs that we might _NOT_ be able to produce. But + otherwise, we would not be able to give recommendations for states with + long calculation times that start background threads for calculation (as + WSPLGEN caluclations does). + +2011-09-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Enable "auto-scaling" axis for waterlevels in WDifference-plots. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + (createSecondaryAxis, zoomY): Refactored to allow modification in + siblings. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + (createSecondaryAxisRange): Override to achieve expected behavior. + Also adjusted label. + +2011-09-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + In W-Difference Calculation, respect indices of selected facets. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + (computeAdvance): Respect index of selected facets. + +2011-09-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + flys/issue317: (Querprofil-Diagramm: Referenzen auf CrossSectionApp entfernen) + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Removed dependency to demo app. + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Refactored to use logic from the models. + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: + Moved some logic from the demo app to this model. + +2011-09-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/wsplgen/FacetCreator.java: New. Code + from FloodMapState moved to its own class with the intent, to use it in + classes different from FloodMapState. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Removed the inner class FacetCreator. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java: Stores + an instance of FacetCreator. + NOTE: Maybe we should move the WSPLGEN parameters into an own class + which might be serializable. + + * src/main/java/de/intevation/flys/wsplgen/JobExecutor.java: Use the + FacetCreator instance stored in the WSPLGENJob to create a new WSPLGEN + facet if the calculation was successfully (without errors). Finally, the + facets of FacetCreator are added to the Facet list of the FLYSArtifacts. + +2011-09-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Put Artifact in background mode first before starting WSPLGEN, otherwise + a very fast errors (call CallContext.afterBackground() before Artifact is + in Background mode) might lead to an inconsistent state. + + * src/main/java/de/intevation/flys/wsplgen/ProblemObserver.java: Repaired + broken error num parsing. + +2011-09-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/wsplgen/ProblemObserver.java: Track + critical errors as well (improved regular expression for errors). + +2011-09-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * ChangeLog: Fixed whitespace usage. + +2011-09-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/RiverService.java, + src/main/java/de/intevation/flys/artifacts/math/DifferenceCurveFacet.java + src/main/java/de/intevation/flys/artifacts/model/ManagedDomFacet.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Removed superfluous imports. + +2011-09-27 Ingo Weinzierl <ingo@intevation.de> + + flys/issue68 (Diagramm: Werte an der Y-Achse benötigen i18n) + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Added a + method to retrieve the current/preferred locale specified by CallMeta. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Introduced two methods localizeDomainAxis() and localizeRangeAxis(). + Both methods of this class override the NumberFormat used to format axes + numbers. Those methods are called by localizeAxes() - which has private + access - for each domain and range axis of the current XYPlot. + +2011-09-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/cache.xml: Number of cached annotations was much + to low. + +2011-09-27 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Improved w-differences diagram generation where multiple differences + can be shown. + + * src/main/java/de/intevation/flys/artifacts/math/DifferenceCurveFacet.java: + New facet type. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Employ new DifferenceCurveFacet, return CalculationResult that can + store more than one WKms. + +2011-09-27 Ingo Weinzierl <ingo@intevation.de> + + flys/issue320 (ÃœSK:Mapserver hat Probleme beim Shapefilepath mit "../" im Pfad) + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Use + File.getCanonicalPath() to substitute "../" in shapefile directories. + +2011-09-26 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + The extent of the WSPLGEN result layer is now specified by the extent of + the CrossSectionTracks that matches the start and end kilometer of the + WSPLGEN calculation. + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: New function + that creates the OpenLayers bounding box based on two Geometries. + +2011-09-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Improved w-differences diagram generation with included "absolute" + values. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Fixed one (of two) incorrect labels. + (doWaterlevelOut): Survive non-found gauge, fetch kilometer and w + instead of values for w and q. + +2011-09-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add positional-conflict-awareness when merging Facets for a + FLYSArtifactCollection. First come first serve. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + (writeFacets): First, sort incoming facets into 2 groups: + "genuinely new" and "already there", then for each new check + whether the position is already taken. If so, push "up" (position++) + until no conflict exists anymore. + +2011-09-26 Ingo Weinzierl <ingo@intevation.de> + + flys/issue296 (Karte: Bezeichnungen verbessern) + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + I18N of the WSPLGEN and barriers facets (WMS layers). + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added strings for the wsplgen + and barriers WMS layers. + +2011-09-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix (revert) access to position in ManagedDomFacet. + + * src/main/java/de/intevation/flys/artifacts/model/ManagedDomFacet.java: + (getPosition): Do not add prefix when querying position ("pos") + attribute, add a logger for faster future debugging. + +2011-09-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Squash positional conflict-bug. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + (mergeFacets): Removed, replaced in parts by pickFacet. + (pickFacet): New, return facet to be added to document. + Documentation added. + +2011-09-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Squash a bug about wrongly named "art:pos" attribute in ManagedDomFacet (was + "pos"). Added documentation from commit message. + + * src/main/java/de/intevation/flys/artifacts/model/ManagedDomFacet.java: + Added documentation (commit message with minor adjustments). + (getPosition, setPosition): Include PREFIX in attribute name. + +2011-09-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Refactoring, doc. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + (mergeFacets): Removed, replaced in parts by pickFacet. + (pickFacet): New, return facet to be added to document. + Documentation added. + +2011-09-23 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics, docs. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + Documentation added. + +2011-09-22 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Subclasses the FLYSService now - this should improve the database + connection handling. + +2011-09-22 Bjoern Schilberg <bjoern.schilberg@intevation.de> + + * doc/mapserver/mosel-mapfile.map: + Full blown mosel wms mapfile. + +2011-09-22 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/FLYSService.java: + New. A subclass of DefaultService which is used in FLYS to init and + shutdown database connections. + + * src/main/java/de/intevation/flys/artifacts/services/MainValuesService.java, + src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java, + src/main/java/de/intevation/flys/artifacts/services/RiverService.java: + Centralized the initialization and shutdown of database connections. + These services now subclass FLYSService which handles the database stuff. + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java: The + current database connection is not closed here - this is done in a + Service or in the CallContext. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: It's + not necessary to create new database connections here. We already have + an existing connection which is initialized by CallContext. + +2011-09-22 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DistanceOnlySelect.java: + Override validate() of parent classes to suppress "step" validation + which is not present in this state. + + * src/main/java/de/intevation/flys/artifacts/states/RangeState.java: Added + new method validateBounds() which really just validates a boundary + without "step" parameter. + +2011-09-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added WaterlevelArtifact to accompany WINFOArtifacts in WDifferencesPlots. + + * src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java: + New WaterlevelArtifact. + + * doc/conf/conf.xml: + Added configuration for WaterlevelArtifact configuration (path to state-xml) + waterlevel-factory. + + * doc/conf/artifacts/waterlevel.xml: + New, trivial state description for Waterlevelartifact. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelInfoState.java: + New, only state for WaterlevelArtifact. + +2011-09-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics, docs. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java, + src/main/java/de/intevation/flys/collections/AttributeWriter.java, + src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Cosmetics, documentation. + +2011-09-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added WaterlevelOut-processing ability to WDifferencesCurveGenerator. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Process LONGITUDINAL_W facets. + +2011-09-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Improved WDifferenceState in preparation to be able to deal with multiple + pairs for differences. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Prepare multiple-pairs-case. + +2011-09-21 Ingo Weinzierl <ingo@intevation.de> + + flys/issue315 (Ãœberschwemmungsfläche: String bei Streckenauswahl) + + * doc/conf/artifacts/winfo.xml: Added a new state for floodmap's range + input. This state will accept a km range only, there is no step width. + + * src/main/java/de/intevation/flys/artifacts/states/DistanceOnlySelect.java: + New. The state which is used to enter a km range with step width. + +2011-09-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics, improved debug output, doc. + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Improved debug output. + + * src/main/java/de/intevation/flys/artifacts/model/ManagedFacet.java: + Added documentation. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java, + src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Removed commented code. + + * src/main/java/de/intevation/flys/collections/AttributeParser.java: + Whitespace cosmetics. + +2011-09-21 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Avoid NullPointerException when drawing XYChart without data. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Guard calls to dataset to avoid NullPointerException. + +2011-09-21 Ingo Weinzierl <ingo@intevation.de> + + flys/issue325 (FLYS Client: Auswahl des DGM zeigt numerischen Wert an) + + * src/main/java/de/intevation/flys/artifacts/states/DGMSelect.java: Write + a better label for the selected DEM into the static DESCRIBE. Use the + name of the DEM file as label instead of the database id. + +2011-09-16 Bjoern Schilberg <bjoern.schilberg@intevation.de> + + * doc/mapserver/fontset.txt: + Added initial font set for km_annotation layer. + * doc/mapserver/symbols/symbols.sym: + Added square symbol for km and fixpoint layer. + * doc/mapserver/saar-mapfile.map: + Adjust styling in the flys karte-archiv way. + +2011-09-19 Ingo Weinzierl <ingo@intevation.de> + + Tagged RELEASE 2.5 + + * Changes: Prepared changes for release. + +2011-09-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java, + src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Removed + needless imports. + +2011-09-16 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Improved datacage configuration for DEMs. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Query DGMs by the given ID in the FLYS data pool - not by given range + values. + +2011-09-16 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Added a section for DEMs to the floodmap + section. + +2011-09-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix build. + + * src/main/java/de/intevation/flys/artifacts/state/WDifferencesState.java: + Fix build. + +2011-09-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Take a given WaterlevelPair-String, load artifact and plot the diff. + + * src/main/java/de/intevation/flys/artifacts/state/WDifferencesState.java: + Load correct artifacts. + +2011-09-16 Bjoern Schilberg <bjoern.schilberg@intevation.de> + + * doc/mapserver/*: Added inital mapserver configuration files. + +2011-09-16 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data.xml: Moved the system specific configuration into a + macro to the top of the configuration document. Call this macro at the + end of the user specific part and in the part that should contain the + system specific stuff only! + +2011-09-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Defined createItem() here and adapted some method signatures, because I + need the CallContext deeper in code than expected. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java: + Write the name of the selected waterlevel into the static DESCRIBE. + + * src/main/java/de/intevation/flys/artifacts/states/ScenarioSelect.java: + Adapted method signatures that have been changed in DefaultState. + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Removed method createItem() which is now defined in the upper class + DefaultState. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added string for selected + waterlevel that is displayed in static UI. + +2011-09-16 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added state label for + waterlevel selection. + +2011-09-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java: + Validate incoming data string and strip brackets. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Fetch waterlevel data from external Artifact if existing. If no external + Artifact is specified that provides waterlevel data, we gonna try to + fetch it from the current Artifact. + +2011-09-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + Removed needless import which caused compile errors. + +2011-09-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Added a transform() method. This method should be used to transform + input data in form of a string into a better data structure. This state + provides a simple implementation which just returns a StateData object + that contains exactly the input string. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Transform + input strings using DefaultState.transform() before they are added to + its data pool. + +2011-09-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Made collection solid for the case if it has no Artifacts. + +2011-09-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Fetch Artifact + from ArtifactDatabase properly. Write better error logs if that process + fails. + +2011-09-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Extend WDifferences branch to have calculations in dedicated, new state. + + * doc/conf/artifacts/winfo.xml: Added new State and Transition in + WDifferences-branch. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelPairSelectState.java: + New state. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Specify to not take input, prepare getting other facets. + +2011-09-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DGMSelect.java: This + state now desires the UIProvider 'dem_datacage_panel'. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelSelectState.java: + New. This state is used to define the desired UIProvider + 'wsp_datacage_panel'. + + * doc/conf/artifacts/winfo.xml: Added a new way to start a WSPLGEN + calculation when choosing the calculation type 'floodmap'. + +2011-09-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: Merge + facets only if their name AND their owner artifact are equal. + +2011-09-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Partial Fix flys/issue304 (3) (Baseline). + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Show Baseline in WDifferencesPlot. + +2011-09-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue310 (cross-section theme). + + * doc/conf/themes.xml: CrossSection-Themes: profile thin, water blue. + +2011-09-14 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue310 (cross-section theme). + + * doc/conf/themes.xml: CrossSection-Themes: profile thin, water blue. + +2011-09-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Add an quick and simple error to the report if an error occured while + WSPLGENJob creation. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added error messages for + WSPLGEN job creation errors. + +2011-09-13 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix crash when drawing StickyAxisAnnotation when no range was given. + User-directed issues remain ( flys/issue303 ). + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java + (draw): + Guard access to domainAxis, rangeAxis and the corresponding ranges. + Warn and exit if any was null. + +2011-09-13 Ingo Weinzierl <ingo@intevation.de> + + flys/issue290 (Karte: Eingabe von Differenzen zw. WSP und Gelände findet + keine Ausprägung in der Karte) + + * doc/conf/mapserver/wsplgen_class.vm: Added styles for DIFF attribute. + + * doc/conf/mapserver/mapfile.vm: Set debug default to '5'. + +2011-09-12 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Add a first WSPLGEN status message (notifies the user about a + queued job) after the job has been added to the Scheduler. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added english and german + status message text. + +2011-09-12 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: Write + shapefiles only if there are features for it existing. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + A WSPLGEN facet is only created, if the calculation was successfully + added to the Scheduler. A barrier facet is only created if the WSPLGEN + calculation has been added to the scheduler AND if there are digitized + geometries existing. + +2011-09-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Copied and slightly modified implementation of guessWaterIncreasing from + WQKms to (new) DataUtils. Accidentally commited usage in last commit, to + correct orientation of diagram (invert x axis). + + * src/main/java/de/intevation/flys/utils/DataUtils.java: + New file with guessWaterIncreasing implementation from WQKms, + slightly adjusted. + +2011-09-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java, + src/main/java/de/intevation/flys/artifacts/model/WKmsImpl.java: + Cosmetics. + +2011-09-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added CSV Export for W-Differences. + + * doc/conf/conf.xml: Added Exporter. + + * doc/conf/artifacts/winfo.xml: Removed transition over distances + state, added export outputmode and facet. + + * src/main/java/de/intevation/flys/exports/WDifferencesExporter.java: + New, CSV-Exporter for WDifferences. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Add export facet. + +2011-09-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DataFacet.java: + Cosmetics, docs. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java: + Cosmetics. + +2011-09-12 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Sourced the code to append a concrete data item to the static DESCRIBE + part out to an own method (appendStaticData()). + + * src/main/java/de/intevation/flys/artifacts/states/ScenarioSelect.java: + Override appendStaticData() to suppress the GeoJSON string to be + included in the static DESCRIBE. + +2011-09-12 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFactory.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java, + src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java, + src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java, + src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Removed needless imports. + +2011-09-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CalculationMessage.java: + New. A subclass of Message (in the Artifacts system). It stores a + string message and a progress (in form of step x/y). + + * src/main/java/de/intevation/flys/wsplgen/JobObserver.java: The observer + now writes background messages into the artifact system using the + CallContext.addBackgroundMessage(). We use instances of + CalculationMessage here, that makes the WINFOArtifact able to put + progress information into the Artifact's DESCRIBE as well. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Write + status message and progress information into the DESCRIBE if the + Artifact has started a background process. + +2011-09-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue280 . + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Do not draw boxes around annotations. + +2011-09-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix flys/issue279 . + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Fix behaviour in various thinkable malconditions. + +2011-09-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Made one case of cross section fetching more robust. + +2011-09-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix Facet name and Legend of W-Differences, also insert state to specify + distance. + + * doc/conf/artifacts/winfo.xml: Add additional transitions to walk over + distances state. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + Set facets description. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + Take facets description as legend. + +2011-09-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added configuration to kick-in w-differences branch of winfo. + + * doc/conf/conf.xml: Register new (w-differences) OutputGenerators. + + * doc/conf/artifacts/winfo.xml: Register new state and transitions. + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Added new (w-differences) calculation mode. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveInfoGenerator.java: + New file, implementing naive approach to display w-differences + (accidentially omitted in last commit). + +2011-09-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added very stubby WDifferences State/OutGenerator for WINFOArtifact. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added w_differences facet type. + + * src/main/java/de/intevation/flys/artifacts/states/WDifferencesState.java: + New file, implements naive approach to calculate w-differences (of + calculations identified by hardcoded uuids!) and register respective facet. + + * src/main/java/de/intevation/flys/exports/WDifferencesCurveGenerator.java: + New file, implementing naive approach to display w-differences. + +2011-09-09 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Implement getArtifact(uuid,context) in FLYSUtils. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java (getArtifact): + Added implementation, partially resolving a TODO. Added logger instance. + +2011-09-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENCalculation.java: + New. This sublcass of Calculation saves warnings and errors that occur + while WSPLGEN is running. + Note, that the interface of this class doesn't exactly apply the interface + of Calculation. Maybe, we should generalize this interface! + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java: Stores + an instance of WSPLGENCalculation now. We use this instance to save + warnings and errors. + + * src/main/java/de/intevation/flys/wsplgen/ProblemObserver.java: Use the + WSPLGENCalculation to save errors and warnings. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENReportFacet.java: + New. This facet is used for WSPLGEN reports. It stores an instance of + WSPLGENCalculation which saves ERRORS and WARNINGS that occur while + WSPLGEN execution. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Create a WSPLGENReportFacet for WSPLGEN reports. + + * doc/conf/conf.xml: Added an OutputGenerator 'report' for WSPLGEN + reports. + + * doc/conf/artifacts/winfo.xml: Added an output 'report' for WSPLGEN + reports. + +2011-09-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/math/WKmsOperation.java, + src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Cosmetics, docs. + +2011-09-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/wsplgen/JobObserver.java: Small + adjustments that makes it easier to subclass this observer. + + * src/main/java/de/intevation/flys/wsplgen/ProblemObserver.java: New. A + sublcass of JobObserver which analyses the WSPLGEN output for errors and + warnings. + + * src/main/java/de/intevation/flys/wsplgen/JobExecutor.java: Use + JobObserver and ProblemObserver to track the whole WSPLGEN output and + print number of errors/warnings to log output. + +2011-09-08 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added translation of w_differences. + + * src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages.properties: + Added "w_differnces" translation. + +2011-09-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Appended + a new attribute 'background-processing' to the DESCRIBE of this + Artifact. Its value is 'true' if this Artifact has started a background + thread which has not finished yet - otherwise it is 'false. + +2011-09-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java, + src/main/java/de/intevation/flys/utils/GeometryUtils.java: Moved the + code to determine the extent of a river based on its axis to + GeometryUtils. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Determine the extent of the selected river and set the WMSLayerFacet's + extent attribute. + +2011-09-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added Themeing support for CrossSection Diagrams. + + * doc/conf/themes.xml: + Added new themes and mappings, slightly modified longitudinalsection + theme. + +2011-09-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + In CrossSection Diagram fix subtitle to display the km of which the data is + actually displayed (maybe contrasting users wish). + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + (getCrossSectionSnapKm): New method to fetch the actual km of crosssection. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Add correct km to charts subtitle. + +2011-09-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix various display-issues like i18n in cross-section diagram. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Set description of facets to expected values. + + * src/main/java/de/intevation/flys/artifacts/exports/CrossSectionGenerator.java: + Fix i18n of chart title. Set subtitle to expected value, pass facets + description to StyledSeries to see expected legend. + +2011-09-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics, resolved refactoring todo. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java + (compute, computeAdvance, computeFeed): Refactored, extracted method, + resolving duplicate code and TODO. + +2011-09-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix waterline "calculation" at given km. Chosen approach is + "head-through-wall". + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Some refactoring to do the same calculation twice easier and be able + to "cross" waterline against correct profile data. + + +2011-09-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix setting of kilometer for profile (not yet waterlevel) of cross section + diagram. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + (getCrossSectionData): Respect corss_section.km data; do naive linear + search for profile data for this km. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java: + Declare a ComputeType. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Implement computeFeed. + +2011-09-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java, + src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Minor cosmetics. + +2011-09-07 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java, + src/main/java/de/intevation/flys/artifacts/model/DataFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java, + src/main/java/de/intevation/flys/artifacts/state/DefaultState.java: + Cosmetics, docs. + +2011-09-06 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/barrier_polygons_class.vm, + doc/conf/mapserver/barrier_lines_class.vm, + doc/conf/mapserver/wsplgen_class.vm: Default Mapserver styles for + barriers and WSPLGEN results. Those styles are only used as long as we + don't have map specific themes (as already used in charts). + + * doc/conf/mapserver/layer.vm: Implements a fallback mechanism for styling + barrier lines/polygons and WSPLGEN results. + + * src/main/java/de/intevation/flys/artifacts/model/LayerInfo.java: Added a + getStyle() method that currently returns "null". This method needs to be + implemented when map themes are introduced. + +2011-09-06 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/LayerInfo.java: Renamed + some attributes to make their job in the mapfile more obvious. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + new facet type for barriers. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: Add + a facet for the barriers layer. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: Parse + barriers (lines and polygons) and create two new layers for each type - + those layers are grouped. + + * doc/conf/mapserver/layer.vm: Renamed attribute based on changes in + LayerInfo and added support for Group-Layers. + +2011-09-06 Raimund Renkert <raimund.renkert@intevation.de> + + * doc/conf/conf.xml: + Added driver to database configuration for use with postgresql. + +2011-09-06 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/mapfile.vm: Removed FONTSET attribute and set quotes + for SHAPEPATH. + +2011-09-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENFacet.java: + Removed. We gonna use the WMSLayerFacet until now. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Add a WMSLayerFacet after we triggered the Scheduler to start a WSPLGEN + calculation. + +2011-09-05 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/mapserver/layer.vm, + doc/conf/mapserver/mapfile.vm: Small bugfixes and style improvements. + + * src/main/java/de/intevation/flys/wsplgen/JobExecutor.java: Trigger the + MapfileGenerator after a WSPLGEN job has finished regardless if it has + been finished successfully or not. + +2011-09-05 Ingo Weinzierl <ingo@intevation.de> + + * pom.xml: Added Apache Velocity 1.7 for templating support. + + * doc/conf/conf.xml: Added config options for mapserver/template relevant + stuff. + + * doc/conf/mapserver/mapfile.vm, + doc/conf/mapserver/layer.vm: New. A default mapfile template and a + template used for layers. + + * src/main/java/de/intevation/flys/artifacts/model/LayerInfo.java: New. + This class is used while reading WMS layer relevant information from + filesystem. + + * src/main/java/de/intevation/flys/utils/MapfileGenerator.java: New. This + thread is used for creating mapfiles for Mapserver. The MapfileGenerator + runs in daemon mode (own thread) and creates mapfiles based on WMS + layer relevant information read from filesystem. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java, + src/main/java/de/intevation/flys/utils/FLYSUtils.java: Moved shapefile + specific XPath expressions from FloodMapState to FLYSUtils which is a + better place to use it in other classes (as MapfileGenerator). + +2011-09-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java: + Bugfixed broken attribute assignment. + + * src/main/java/de/intevation/flys/wsplgen/JobExecutor.java: Call + CallContext.afterBackground() after a WSPLGEN job has finished to remove + the background lock from Artifact. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Call CallContext.afterCall(BACKGROUND) to lock the Artifact for + background processing. + +2011-09-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/wsplgen/JobExecutor.java: New. This + class is used to start WSPLGEN for a specific WSPLGENJob. The System + property "wsplgen.bin.path" tells the JobExecutor where the WSPLGEN + binary is placed (which means in general, the property points to the + 'wsplgen.exe'). + + * src/main/java/de/intevation/flys/wsplgen/Scheduler.java: New. This + scheduler currently allows to start just a single WSPLGEN Thread. All + WSPLGEN calculations should be started using Scheduler.addJob(). + + * src/main/java/de/intevation/flys/wsplgen/JobObserver.java: New. This + thread reads log messages from WSPLGEN and listens for specific + messages. It should be used to update status messages of the WSPLGEN + calculation that is currently running. + There is a System property that tells the JobObserver to log all WSPLGEN + output to log4j: enable WSPLGEN output with "-Dwsplgen.log.output=true". + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java: Added + the FLYSArtifact, the current working directory and the CallContext. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Use the Scheduler to start new WSPLGEN calculations. + +2011-09-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add CrossSectionInfoGenerator. + + * src/main/java/de/intevation/flys/exports/CrossSectionInfoGenerator.java: + New, trivial implementation of CrossSectionInfoGenerator. + + * doc/conf/conf.xml: + Register CrossSectionInfoGenerator. + +2011-09-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cleanups of CrossSection*. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + New methods to retrieve name of utilized CrossSection. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Cleanup, get rid of copied unused method, documentation and more sensible + translations. + + * src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages.properties: + Added cross_section* translations, also cleanups. + +2011-09-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Set the "typ" attribute of lines and polygons in barrier shapefiles. + +2011-09-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Set the Z values of line and polygon barrier geometries. Both barrier + shapefiles will contain 3D geometries now. + +2011-09-01 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Get real data to display in CrossSection (although ignorant of + parameterization), making use of the showcase code of the CrossSectionApp- + Standalone application. + + * doc/conf/artifacts/winfo.xml: Add new facet (~waterline) to state/out. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + New methods to get relevant data. So far just takes the first value of + everything and assuming a waterlevel at 130m. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java: + New Facet responsible of water level in cross section. + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Made some functionality publicly and statically available. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java: + Update call. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added new + Facet type. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Added new Facet to out. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Respect new facet and facets data. + +2011-09-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: Close an open + shapefile transaction and catch exceptions which are thrown while + shapefile creation here. If there occured an error, this functions + returns FALSE, otherwise TRUE. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Removed exception handling while shapefile creation - this is done in + GeometryUtils now. + +2011-09-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Renamed the file for WSPLGEN required waterlevels to "waterlevels.wst". + WSPLGEN did not work with the former "waterlevels.txt" file. + +2011-09-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: New static + function that builds new SimpleFeatureTypes with additional attributes. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Write attributes "ELEVATION" and "KILOMETER" into the crosssection + tracks shapefiles. + +2011-08-31 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a method + stub that should return a FLYSArtifact based on a given UUID. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Write the selected WST file for WSPLGEN. Note, that this is the WST file + of the current WINFO artifact. Furthermore, there is currently no way + for the user to select a column from WST file, so we currently use the + column that is written to WST file at first. + +2011-08-31 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Changed + the parameter order of a compute(...) method. This makes me able to call + this without a hash value. + + * src/main/java/de/intevation/flys/artifacts/model/DataFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java, + src/main/java/de/intevation/flys/artifacts/model/ReportFacet.java: + Adapted the parameter order of the compute() call (see above). + +2011-08-31 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + More bones to CrossSection sceleton. + + * src/main/java/de/intevation/flys/artifacts/model/CrossSectionFactory.java, + src/main/java/de/intevation/flys/artifacts/model/CrossSectionFacet.java: + New, yet trivial implementations of Factory and Facet for CrossSections. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Add new CrossSection- (instead of Default-)Facet. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Adjusted to use (touch) new Factory and Facet. + +2011-08-31 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Cosmetics. + +2011-08-31 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Cosmetics. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java, + src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + Removed obselete imports. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Removed obselete imports, whitespaces. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Whitespaces, docs. + +2011-08-31 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Fix translations of Main Values Facets. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Do acrobatics to keep state transient but get translated title. + + * src/main/java/de/intevation/flys/artifacts/MainValuesQFacet.java, + src/main/java/de/intevation/flys/artifacts/MainValuesWFacet.java: + Changed constructor to get description (which is then already be translated) + dynamically, adjust deepCopy. + + * src/main/java/de/intevation/flys/states/StaticState.java: + Adjust constructor accordingly. + +2011-08-31 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Add sceleton for CrossSection outs. + + * doc/conf/artifacts/winfo.xml: + Added new output mode to respective state of winfo artifact configuration. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Add new Dummy-Facet in state. + + * doc/conf/conf.xml: + Registered new OutputGenerator. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new CROSS_SECTION type. + + * src/main/java/de/intevation/flys/exports/CrossSectionGenerator.java: + New, stubby skeleton for an CrossSectionGenerator. + + * src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages.properties: + Added cross_section translation, also cleanups (e.g. main values). + +2011-08-31 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java: Marked + required parameters with a comment. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Export floodplains (german 'Talaue') to shapefile and write its file + path into the WSPLGEN job. + +2011-08-31 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Search for a DGM that fits to the current river and km range and write + its file path into the WSPLGEN job. + +2011-08-30 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: Improved + exception handling: exceptions are catched in GeometryUtils now. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Write river axis and crosssections to shapefiles and save shapefile + pathes in WSPLGENJob. + +2011-08-30 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Use the coorect SRID for reading GeoJSON and writing line/polygon + shapefiles. + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: Use a + concrete coordinate system while feature type creation. + +2011-08-30 Ingo Weinzierl <ingo@intevation.de> + + * pom.xml: Added GeoTools 2.7.2 dependencies for Shapefile, GeoJSON and + EPSG support. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java: Store + 'LIN' parameter in a list now. A WSPLGEN parameter might contain many + LINs. + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: New functions + to create FeatureTypes and to write shapefiles. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Write user specified barriers into a shapefile placed in the artifact + directory. + +2011-08-30 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: Added a function + that extracts the SRID defined in the global configuration file for a + given river. + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + Removed the code that extracts the river SRID - use FLYSUtils instead. + +2011-08-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Use FLYSUtils.getRiver instead of WINFOArtifact.getRiver. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Use FLYSUtils.getRiver instead of WINFOArtifact.getRiver. + +2011-08-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Use FLYSUtils.getRiver instead of WINFOArtifact.getRiver. + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Use FLYSUtils.getRiver instead of WINFOArtifact.getRiver. + +2011-08-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Commit accidentally omitted result of refactoring (WINFO/FLYSUtils/getRiver). + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Removed implementations of getRiver, update calls to use FLYSUtils. + +2011-08-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Interpolate Q main values, generate interpolated W main values on the fly from + Q main values. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + (getGaugeDatum): removed, obsolete + (getLocation): new, gets location + Use WstValueTable to look up interpolated Qs of MainValues. In absence of + the same functionality for Ws, generate W Main Values from Q Main Values. + +2011-08-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Use new helper class FLYSUtils, minor refactorization. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Use new functionality of helper class, convenience of FLYSArtifact. + +2011-08-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Refactored to use new Helper class FLYSUtils, moved getRiver-functionality + in there. + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java (getRiver): + New function to retrieve river of an artifact, slightly modified from + WINFOArtifact. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Removed implementations of getRiver, update calls to use FLYSUtils. + +2011-08-29 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Minor cosmetics. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Resolved a TODO. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Added some documentation. + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + Minor cosmetic. + +2011-08-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data.xml: Made it Oracle compatible. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/CompiledStatement.java: + If running in debug mode log executed statements. + Helps debugging Oracle connections. + +2011-08-26 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Set some WSPLGENJob parameters which are stored at FLYSArtifact. + +2011-08-26 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/FLYSUtils.java: New. This helper + class should provide some basic FLYS stuff. Currently, there are functions + that return the km range/location. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Removed + the methods that return the km range/locations. This is implemented in + FLYSUtils now. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: Adapted + the WINFO method calls to retrieve the km range/locations - call + FLYSUtils now. + +2011-08-26 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: New method + to destroy a single state. + +2011-08-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Cosmetic, remove debug output and comments, minor style adjustments. + +2011-08-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added limited themeing-support for MainValues. + + * doc/conf/themes.xml: + Added Q/W-MainValues themes. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Added limited theming support, add legend entry for main values. + +2011-08-26 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Added a configuration node that points to the directory + where shapefiles should be stored in. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENJob.java: New. + This class is used to save/write the parameter for a WSPLGEN calculation. + WSPLGEN's *.par files are written using the toFile() method. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + A directory for all WSPLGEN stuff is created in computeAdvance() - those + directory and all its contained files are removed in endOfLife(). + +2011-08-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/utils/ThemeUtil.java: + New Util to work with theme-related stuff. + +2011-08-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Use NamedDoubles instead of MainValues, try to adjust scale of Ws. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Use NamedDoubles instead of MainValues, generalize annotation handling, to + allow easier reusability and themeing. + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Added convenience constructor, exemplary switch on bordered text. + +2011-08-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/meta-data.xml: + Recommend MainValues for Computed discharge curves. + +2011-08-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + New NamedDouble class which implements a <String,double>-pair. + + * src/main/java/de/intevation/flys/artifacts/model/NamedDouble.java: + New, implementation of a double with a string or vice versa. + +2011-08-26 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Call + State.endOfLife() for all States when endOfLife() of the Artifact is + called. + +2011-08-26 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Also plot "W"-MainValues (on vertical axis), take correct parameters, but + do not convert to correct scale (cm vs NN+m). + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Naive attempt at allowing the vertical axis to be sticked at. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Store Q and W MainValues separately, add them to plot as annotations. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Serve the MainValues, parameterized on river and location, Q and W. + Removed Facet-implementation. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Updated Facet Types. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesQFacet.java: + src/main/java/de/intevation/flys/artifacts/model/MainValuesWFacet.java: + New, trivial facets, extracted from MainValuesArtifact. + +2011-08-26 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Call + State.endOfLife() of each State that is no longer in the queue of the + artifact when this artifact steps back to a previous state. + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Plot MainValues delivered by MainValuesFacet in much the same ways than + Annotations in LongitudinalSection plots. + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Prepare further differentiation between Annotations that stick to X or Y- + Axis, copied some positioning logic into StickyAxisAnnotation + implementation. + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Minor cosmetics. + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added MainValue-Fetching-Capabilities to MainValuesArtifact. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java + (initialize, getMinValues): + Let MainValuesArtifact return "real" MainValues, although ignorant of all + parameterization. + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java + (MainValueFacet): + Improved and straightened implementation, added code-Annotations and Todos. + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java + (MainValueFacet): + Improved and straightened implementation, added code-Annotations and Todos. + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java + (getState): + Resolved multiple creation of state (yet not very clean). + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationFacet.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Cosmetics, docs. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Cosmetics. + +2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added new (MainValues) Facet-Type. + +2011-08-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java: + Added a method that returns a River object based on its database id. + + * src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java: The + data that is required for this artifact is fetched from database instead + from a Master-Artifact. The creation of static artifacts should use + database ids instead of cloning a Master-Artifact. + +2011-08-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Removed needless imports. + +2011-08-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added configuration for factory and rule for MainValueArtifacts. + + * doc/conf.xml: + Add a mainvalue factory to serve MainValueArtifacts. + + * doc/conf/meta-data.xml: + Recomment mainvalue artifact when computed_discharge_curve can be put out. + +2011-08-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Let MainValuesArtifact have a state, outputmode and facet. + + * src/main/java/de/intevation/flys/artifacts/states/StaticState.java: + New, a non-abstract DefaultState. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Progressed with implementation, use StaticState to hook output modes and + facet in; use (Static)FLYSArtifact implementation. + +2011-08-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Smaller cosmetics. + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Cosmetics in comments. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Added @Override annotations. + + * src/main/java/de/intevation/flys/artifacts/model/DataFacet.java: + Use brackets to improve readability of ternary operator. + +2011-08-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data.xml: Use "ids" in user specific part, too. + +2011-08-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data.xml: s/db-ids/ids/g to unify system and user specific + loading. + +2011-08-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Extracted access to state and states in order to have fewer places to + modify when going for single/trivial state- artifacts. + +2011-08-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java: + Append the river's srid to the WMSLayerFacet. + +2011-08-24 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Minor fixes, ressurect Facet implementation as inner class. + +2011-08-24 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Moved the input of barriers one state + earlier where the scenario is selected as well. + + * src/main/java/de/intevation/flys/artifacts/states/ScenarioSelect.java: + This state now desires the "map_digitize" UI provider and returns both + items "scenario" and "uesk.barriers" in the dynamic describe part. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Removed the UI provider and the computeFeed() which is no longer needed, + because there is no more user input in this state. + +2011-08-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java, + src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + Repaired broken xpath expressions (the config changed in one of the last + commits) and make use of the variable support in xpath expressions to + replace the rivername. + + * src/main/java/de/intevation/flys/artifacts/WMSBackgroundArtifact.java: + Save the rivername while initializing this artifact. This is now + necessary, because each river can have its own background wms + configured. + +2011-08-23 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Repaired broken river-wms initialization. + +2011-08-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java, + src/main/java/de/intevation/flys/artifacts/model/DataFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java, + src/main/java/de/intevation/flys/artifacts/model/ReportFacet.java, + src/main/java/de/intevation/flys/artifacts/model/DurationCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/ManagedFacet.java, + src/main/java/de/intevation/flys/artifacts/model/ManagedFacetAdapter.java, + src/main/java/de/intevation/flys/artifacts/model/AnnotationFacet.java, + src/main/java/de/intevation/flys/artifacts/model/WSPLGENFacet.java: + Made facets cloneable with the right type. + + * src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Removed superfluous imports. + +2011-08-23 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Declare the first artifact of an output as master artifact (artifacts + are ordered by their creation time). + +2011-08-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + Removed facet interface. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Make artifacts cloneable. TODO: Override deepCopy() in subclassed + states and facets. + +2011-08-23 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Added the MapInfoService and adapted the floodmap + configuration. Now, each river can have its own background wms layer + defined. + + * src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java: + New. This service returns some basic information used to create maps for + a specific river. The name of the desired river needs to be defined at + "/mapinfo/river/text()". + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + Adapted an xpath expression that points to the srid of a river in the + floodmap configuration (which changed). + +2011-08-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Build out/facet filter from XML document passed at creation time. + +2011-08-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Added some code to filter outs/facets by an optional positive list. + This is needed to only expose parts of the facets. This + is needed for artifacts which are loaded into a collection. + TODO: create the filter from the XML document passed at creation + time. + +2011-08-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Moved all + WINFO specific code to WINFOArtifact. FLYSArtifact is now only revolving + about state affairs. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Re-inserted + the specific stuff here. + + * src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java, + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java, + src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Adjusted the casts. + +2011-08-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data.xml: Filter by outs in user template part. + +2011-08-22 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Defined an input value for the GeoJSON + string to save user defined barriers in the map. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + Added a computeFeed() method. In addition, this state now prefers the + "noinput" UI provider. + +2011-08-19 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Each river requires a SRID definition. This + definition is used to transform the river's geometries into the desired + projection. + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + This facets are able to save a SRID. + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + The extent that is written into the WMSLayerFacet is determined by the + boundary of the geometry. + + * src/main/java/de/intevation/flys/utils/GeometryUtils.java: New. A + utility class that provides helper functions for geometries. Currently, + one function is defined, that creates a boundary string for OpenLayers. + +2011-08-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/DGMSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java, + src/main/java/de/intevation/flys/artifacts/states/ProfileDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/RangeState.java: + Removed superfluous imports. + +2011-08-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Removed CallContext from state validation. It is not needed and hindered + the extraction of all out of an artifact if you don't have a + call context (like initial scan of datacage database). + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Extract all outs now. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/FloodplainChoice.java, + src/main/java/de/intevation/flys/artifacts/states/ScenarioSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DGMSelect.java, + src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java, + src/main/java/de/intevation/flys/artifacts/states/ProfileDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java, + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java, + src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java, + src/main/java/de/intevation/flys/artifacts/states/RangeState.java, + src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java, + src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Adjusted calls. + +2011-08-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Added lacalization of "Streckenfavoriten". + +2011-08-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Picky white-space cosmetics. + +2011-08-19 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added stub implementation of new MainValuesArtifact. + + * src/main/java/de/intevation/flys/artifacts/MainValuesArtifact.java: + New. Stub implementation for new MainValuesArtifact. + +2011-08-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fixed flys/issue262 + + * src/main/java/de/intevation/flys/artifacts/datacage/Recommendations.java: + Unified user and system tempate. + Looks for "/artifact-database/metadata/template/text()" + in conf.xml. Defaults to "${artifacts.config.dir}/meta-data.xml". If user id is + given its the default connection for contexts. + + * doc/conf/conf.xml: Adjusted + * doc/conf/meta-data-system.xml, doc/conf/meta-data-user.xml: Deleted. + * doc/conf/meta-data.xml: Unified version of user and system template. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/App.java: + Adjusted the test program. + +2011-08-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fixed flys/issue260 + + * doc/conf/meta-data-user.xml: Uses master_artifacts view now. + +2011-08-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Added view master_artifacts to select + the master artifacts of the collections more easily. + To upgrade existing database: + + CREATE VIEW master_artifacts AS + SELECT a2.id AS id, + a2.gid AS gid, + a2.state AS state, + a2.creation AS creation, + ci2.collection_id AS collection_id + FROM collection_items ci2 + JOIN artifacts a2 + ON ci2.artifact_id = a2.id + JOIN (SELECT ci.collection_id AS c_id, + MIN(a.creation) AS oldest_a + FROM collection_items ci + JOIN artifacts a + ON ci.artifact_id = a.id + GROUP BY ci.collection_id) o + ON o.c_id = ci2.collection_id + WHERE a2.creation = o.oldest_a; + + TODO: Use the view in the templates. + +2011-08-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data-user.xml: Removed state filter because it was broken. + Simplified by joining two contexts. + +2011-08-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + Fix issues with lines of annotation when zoomed (wrong scale used). + +2011-08-18 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added legend for annotations to LongitudinalSectionDiagram. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Added a pseudo-dataseries/collection to employ existing infrastructure for + displaying localized label for Annotations (yet unthemed). + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: + Made label-string available for localization. + +2011-08-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Moved StickyAxisAnnotation into new package de.intevation.flys.jfree . + + * src/main/java/de/intevation/flys/exports/StickyAxisAnnotation.java: + Deleted/moved to src/main/java/de/intevation/flys/jfree/ . + + * src/main/java/de/intevation/flys/jfree/StickyAxisAnnotation.java: + New/moved from src/main/java/de/intevation/flys/export/ , adjusted + package statement, made class public. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Added import statement for de.intevation.flys.jfree.StickyAxisAnnotation . + +2011-08-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Extracted and renamed CustomAnnotation to StickyAxisAnnotation. Also removed + needless imports. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/StickyAxisAnnotation.java: + Extracted class implementation CustomAnnotation and renamed to + StickyAxisAnnotation. + +2011-08-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Improved CustomAnnotations and rendering thereof, now including an + "axis mark" (little line at axis), also prepared possibility to put + annotations on Y-axis. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Improved CustomAnnotation to include marks on the axis and better spacing + from it. + +2011-08-17 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Implemented proof-of-concept collision-detection when drawing + CustomAnnotations (text only). + + * src/main/java/de/intevation/flys/exports/ChartExportHelper.java: + Pass a fresh ChartRenderingInfo-Object to createBufferedImage, such that + information can be collected while rendering. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Exploit the fact that XYTextAnnotation already registers drawn shape in the + ChartRenderingInfo if it exists and either an URL or tooltip is set. + Before drawing, calculate own shape and compare against already registered + shapes. + +2011-08-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Implemented (yet dummy) custom Annotation class. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Added implementation of yet dummy CustomAnnotation class. + +2011-08-16 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Slightly improved rendering of annotations. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Slightly improved rendering of annotations. Still no valid collision + detection. Annotations are drawn every 2 km; first come first serve. + +2011-08-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix for flys/issue191 + + * src/main/java/de/intevation/flys/artifacts/model/WQ.java(longestIncreasingWRangeIndices): + Added a method to find the longest index range with increasing w values. + + * src/main/java/de/intevation/flys/exports/ATWriter.java: Export the longest + range of monotone increasing w values instead of the first one. + TODO: The first line of the export is still broken. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Removed superfluous import. + +2011-08-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java: + Resolved two TODOs: get Annotations of selected River, get "point" + Annotations only. + +2011-08-12 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added functionality to query range and point-annotations only to + AnnotationFactory. + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java + (getPointAnnotations, getAnnotationsBreadth): + New functions to query breadth and point-only annotations. + +2011-08-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Recommendations.java: + Added a development mode for recommendations. Enabled with + stetting system property 'flys.datacage.recommendations.development' to true. + When set the XML template are re-read if the timestamps of the + files have changed so you do not have to restart the server again and again. + + * doc/conf/meta-data-user.xml: Sort collections by creation time in descending order. + +2011-08-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Rather picky cosmetics only. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java, + src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java, + src/main/java/de/intevation/flys/artifacts/datacage/Recommendations.java, + src/main/java/de/intevation/flys/artifacts/model/WQKms.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java, + src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + End comments on a full stop, separate from closing '*/' by whitespace, + adjusted javadoc comments. + +2011-08-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Made Annotations visible in LongitudinalSection diagrams. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Register new Facet Type, let LongitudinalSectionGenerator include + Annotations in diagram (yet unfiltered and independent of river). + +2011-08-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml, + doc/conf/artifacts/annotation.xml, + doc/conf/meta-data-system.xml: + Added configuration for AnnotationArtifacts. + +2011-08-11 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + Added demo- implementation of a AnnotationArtifact and its Facet. + + * src/main/java/de/intevation/flys/artifacts/AnnotationArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/AnnotationFacet.java, + src/main/java/de/intevation/flys/artifacts/states/AnnotationRiverState.java: + New. Initial version of an AnnotationArtifact and its State and Facet. + +2011-08-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Extended schema for artifacts and collections + to have creation times, too. + + To update existing databases: + + ALTER TABLE artifacts ADD COLUMN creation TIMESTAMP NOT NULL DEFAULT current_timestamp; + ALTER TABLE collections ADD COLUMN creation TIMESTAMP NOT NULL DEFAULT current_timestamp; + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Store creation times for artifacts and collections, too. + + * src/main/resources/datacage-sql/org-h2-driver.properties, + src/main/resources/datacage-sql/org-postgresql-driver.properties: + Adjusted SQL statements. + +2011-08-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Make it compilable again (BackendListener interface changed). + +2011-08-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data-user.xml: Added grouping element around w/q of each + longitudinal section artifact. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/CompiledStatement.java, + src/main/java/de/intevation/flys/artifacts/datacage/templating/StackFrames.java: + Added some debugging capabilities. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/ResultData.java: + Added isEmpty() method. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java: + Now it is possible to nest <dc:elements> into other elements in the <dc:context> + body. This is useful and needed for grouping and repeating results. + +2011-08-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Recommendations.java: + User connection was cached, system was not. Lead to incorrect results. + +2011-08-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data-user.xml: Added <old_calculations> element + around old calculations. + +2011-08-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java: + Cosmetic: Replaced usage of legacy java.util.Stack with java.util.Deque. + +2011-08-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data-user.xml: Use 'CAST(x AS uuid)' instead of 'x::uuid' + to be more compatible. + +2011-08-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Recommendations.java: + If given an artifact place its identifier into parameters passed to template. + Fixed swapped user/system connections if using the user template. + + * doc/conf/meta-data-user.xml: Recommend w/q facet from old calculations + if an artifact was given that represents a longitudinal section + "Laengsschnitt". + + TODO I: The template uses PostgreSQL specific UUID casts. + TODO II: We need to find a way only to recommend the master artifacts. + +2011-08-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java: + Added a <dc:comment> tag to place comments in the meta data templates. + <!-- ... --> comments are copied through. + + * doc/conf/meta-data-user.xml: Added a simple test. + +2011-08-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Be a bit more tolerant about empty strings for UUIDs of artifact and user. + +2011-08-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Bring user specific meta data service to life. + + * doc/conf/conf.xml: There are now two templates to configure: + The system template (only the data from the backend) and the + user template (the datcage db and the backend db), + + * doc/conf/meta-data-template.xml: Deleted. + * doc/conf/meta-data-user.xml: New. The user specific template. TODO: Write it! + * doc/conf/meta-data-system.xml: New. The system template. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/NoneUserSpecific.java: + Deleted. + * src/main/java/de/intevation/flys/artifacts/datacage/Recommendations.java: + New. The logic to fill the templates. + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java: + Adjusted to follow the new call signatures. + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Refactored. Removed the old code and only leave the new service. Following + XPaths are evaluated on the incomming document: + + "/art:meta/art:artifact-id/@value" The UUID of the artifact. Optional. + Used to fill the template enviroment. + "/art:meta/art:user-id/@value" The UUID of the user. Optional. + If given the user specific template is filled. + "/art:meta/art:outs/@value" The list of outs used to recommend for the + various outputs. + "/art:meta/art:parameters/@value" A list of key/value pairs to inject more + filters to the templating. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/App.java: + Change to follow the new recommendations semantics. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java: + Added symbolic constants to distinguish "user" and "system" db connections. + +2011-08-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * doc/conf/conf.xml: + Cosmetics, let comments start with a capital and end on a full stop, + removed incorrect comment. + +2011-08-03 Felix Wolfsteller <felix.wolfsteller@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Cosmetics, let comments start with a capital and end on a full stop. + +2011-08-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java(extractOutputNames): + Fixed potential NPE. + +2011-08-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Added support for more than one db connection in datacage templating. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/Builder.java: + Now you can pass a list of named db connections to the build process. + The purpose is to mix more then one database (e.g. the backend db and + the user specific one). + + To use this feature you can add an "connection" attribute + to <dc:context> with the name of the connection to use. + If no connection name is given the last used is used again. + Initially the first connection in the given list is used. + If the context is left the connection that was active before + will be active again in a stacking manner. + + When creating NamedConnection objects you can set a boolean flag + if the results coming from the connection should be cached. This + is useful e.g. for the user specific database which runs in-memory + so caching would introduce some superfluous overhead. + + * src/main/java/de/intevation/flys/artifacts/datacage/templating/CompiledStatement.java: + When executing the queries explicitly pass if caching should be used. + +2011-08-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Forgot to fetch dialect dependent SQL statement for deleting + artifacts by uuid. + +2011-08-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Set the name of the collections at initial scan, too. + +2011-08-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Fixed wrong SQL references. + +2011-08-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Fixed two NPEs. + +2011-08-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/DatacageBackendListener.java, + src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Forwarded kill collections and artifacts events to datacage. + + * src/main/resources/datacage-sql/org-h2-driver.properties, + src/main/resources/datacage-sql/org-postgresql-driver.properties: + Added statement to delete artifact by uuid. + +2011-08-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/DatacageBackendListener.java: + Made it compilable again. The signature of BackendListener has changed. + +2011-08-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Completed the backend listener stuff. + + TODO I: Added some cleanup for orphaned artifacts. + TODO II: Figure out a way to delete collections/artifacts + which are delete from backend without the + backend API. + + * src/main/resources/datacage-sql/org-h2-driver.properties, + src/main/resources/datacage-sql/org-postgresql-driver.properties: + Added needed statements. + +2011-08-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Update collection names on change. Remove artifacts from collections. + + * src/main/resources/datacage-sql/org-h2-driver.properties, + src/main/resources/datacage-sql/org-postgresql-driver.properties: + Added needed statements. + +2011-08-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/DatacageBackendListener.java: + Call datacage with the global context. This is needed to access the state engine. + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: Changed + signatures to take the global context, too. Create artifacts via backend listener + interface. + +2011-08-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/DatacageBackendListener.java: + Fixed recursion bug. + +2011-08-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/DatacageBackendListener.java: + Added debug output. + +2011-08-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Added backend listener for datacage. + + * src/main/java/de/intevation/flys/artifacts/datacage/DatacageBackendListener.java: + New. Proxies backend listener calls to datacage. + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Implements backend listener. TODO: Update the datacage database + according the change calls. + +2011-08-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta, + src/main/java/de/intevation/flys/artifacts/datacage/templating: + Moved/renamed package to better fit the common semantics. + DataCage.java is now call NoneUserSpecific.java to reflect the + fact that it is the template for the user independent db + analysis. + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java, + src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Ajusted imports and calls. + +2011-08-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: For documentation purposes added a out-commented + section with the default configuration of the datacage. + +2011-07-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Delete the artifacts at before initial scan, too. They are independent + from users. Fixed problem when writing state data content. + + * src/main/resources/datacage-sql/org-h2-driver.properties: Added + statement to delete the artifacts at initial scan, too. + + * src/main/resources/datacage-sql/org-postgresql-driver.properties: + New. PostgreSQL version of the statements. The database scheme + is the same as H2. Very useful for debugging. + +2011-07-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Added kludge for the types of artifact data. They seem to be null + in some circumstances. Needs to be debugged! + +2011-07-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/DBConfig.java: + Fixed default connection URL to use a namend in-mermory database. + +2011-07-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Fixed constraint. + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Added some debug output. + +2011-07-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Removed artifact_id from facet because there + is a link via out_id -> outs.id: artifact_id -> artifacts to + find the corresponding artifact. + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/resources/datacage-sql/org-h2-driver.properties: Store + facets of outs into datacage db at initial scan. + +2011-07-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/resources/datacage-sql/org-h2-driver.properties: + Store outs of artifacts into datacage db at initial scan. + TODO: store facets. + +2011-07-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Added 'type' column in artifacts data. + Maybe useful for filtering. + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/resources/datacage-sql/org-h2-driver.properties: + Store artifact data into db at initial scan. + TODO: store outs and facets. + +2011-07-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/resources/datacage-sql/org-h2-driver.properties: + Add artifacts into datacage db at initial scan. + TODO: Store data, outs and facets. + +2011-07-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Fixed spelling in sequence name. + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/resources/datacage-sql/org-h2-driver.properties: Simply add + collection item at initial scan if artifact was stored before. + TODO: Store new artifacts. + +2011-07-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/resources/datacage-sql/org-h2-driver.properties: Add + collections at initial scan. + +2011-07-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/resources/datacage-sql/org-h2-driver.properties: Add users + at initial scan. + +2011-07-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Using sequences for id generation now + to make schema more compatible. + +2011-07-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java, + src/main/resources/datacage-sql/org-h2-driver.properties: Clear database + before initial scan. + +2011-07-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/DBConnection.java: + Deleted. This stuff comes from the artifact database now. + + * src/main/java/de/intevation/flys/artifacts/datacage/DBConfig.java: + New. The db config of the datacage database. + + * src/main/resources/datacage-sql/org-h2-driver.properties: New. + The SQL statements needed for the datacage. + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + Make use of the db config. + +2011-07-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java: + New. A artifact database lifetime listener to build the initial + index of the artifacts in database. + + * doc/conf/conf.xml: Added the datacage to the list of lifetime + listeners. + +2011-07-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Added an explicit table for the outs + of an artifact. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Make the current outs of an artifact accessible only with + the global context. + +2011-07-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: Added ON DELETE CASCADE constraints. + Added state in facet. + +2011-07-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/datacage.sql: New. H2 Schema for the datacage database. + Uses special features like IDENTITY (autoincrement) typed columns. + + * src/main/java/de/intevation/flys/artifacts/datacage/DBConnection.java: + Pooled connection. + + * pom.xml: Added dependencies to H2 and Apache DBCP. + +2011-07-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/test/java/de/intevation/flys/artifacts/AppTest.java, + src/main/java/de/intevation/flys/artifacts/App.java: Removed. + This the stupid "Hello, World!" app initially created by the + maven archetype. It was never used. + +2011-07-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + Argh! Usage the DOM was not thread safe (discovered with ab). + +2011-07-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/meta-data-template.xml: '$recommended' lead to XPath + errors. Using "dc:contains($parameters, 'recommended')" helps. + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java, + src/main/java/de/intevation/flys/artifacts/services/meta/FunctionResolver.java: + Added some debugging. + + * src/main/java/de/intevation/flys/artifacts/services/meta/DataCage.java: + Added parameters as 'parameters' to parameters. Usefull to check + for containment of variables. + +2011-07-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Added 'if log.isDebugEnabled() {}'. + +2011-07-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Made Artifact UUID optional and accept extra parameters, too. This enables + the service to be used without an arttifact and test all filters. + + <art:meta xmlns:art="http://www.intevation.de/2009/artifacts"> + <art:outs value="computed_discharge_curve,floodmap"/> + <art:parameters value="river:Elbe"/> + <art:filters value="recommended"/> + </art:meta> + + * src/main/java/de/intevation/flys/artifacts/services/meta/FunctionResolver.java: + 'contain' accept Maps and collection, too. + + * src/main/java/de/intevation/flys/artifacts/services/meta/DataCage.java: + Made artifact option (= null) in recommendations. + +2011-07-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/CompiledStatement.java: + Moved connection specific into inner class. The enables the reuse of the + compiled statement. + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: The + SQL statements are now only compiled once at creation time of the builder. + Each connection now reuses them. + +2011-07-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/cache.xml: Added configuration for static datacage db access. + + * src/main/java/de/intevation/flys/artifacts/services/meta/App.java: Using + caches seems to need an explicit System.exit(). + + * src/main/java/de/intevation/flys/artifacts/services/meta/CompiledStatement.java: + Added support for caching the SQL statements and there results. + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: Some + clean up. Reordered code for performance. Strip SQL statements more + aggressively. + + * src/main/java/de/intevation/flys/artifacts/services/meta/ResultData.java: + Made it Serializable. + + * src/main/java/de/intevation/flys/artifacts/cache/CacheFactory.java: + Introduced system property 'flys.artifacts.cache.config.file' to make + the caching configurable without pulling up the whole stack. + +2011-07-22 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Prepared the FLYSArtifactCollection to support the storage of already + loaded recommendations in its attribute document. + +2011-07-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Adjusted to use the DataCage recommendations. The incomming document + can pass the artifacts UUID by '/art:outs/@value' the outs as a + comma separated list in '/art:outs/@value' and optional a set of + filters comma separated in '/art:filters/@value'. + + If UUID and OUTS are not given the old service is used. This + should be removed as soon as the client uses the new service. + +2011-07-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/CompiledStatement.java: + Allow '-' in variable names. + +2011-07-21 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data-template.xml: Now, the river-id is really added to + the factory node of the wmsbackground layer. + +2011-07-21 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data-template.xml: Added the river-id to the factory node + of the riveraxis and wmsbackground layer. + +2011-07-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java, + src/main/java/de/intevation/flys/artifacts/services/MainValuesService.java, + src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java, + src/main/java/de/intevation/flys/artifacts/services/RiverService.java: + Adjusted to implement changed Service interface. + +2011-07-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Refactored + the method that retrieves the Outputs for the Artifact. Now, we are able + to query the Outputs for the current state, and all outputs separately. + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java: The + recommendations provided by this monitor will take the Outputs of the + current state only into account. + +2011-07-21 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/meta-data-template.xml: Added conditions for each output type. + Splitted the "floodmap" output into two parts: a recommended one and a + complete one. The recommended part will only build the document tree for + the recommended artifacts; the complete part will build the whole document + tree that is available for a floodmap. + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java: + This Hook now uses the DataCage to generate the recommended artifacts. + The output-defaults configurtion is needless now. + + * doc/conf/output-defaults.xml: Removed. The configuration of recommended + artifacts takes place in meta-data-template.xml. + + * src/main/java/de/intevation/flys/artifacts/services/meta/DataCage.java: + Bugfix: the DataCage didn't start working if its builder was NOT null, + but it shouldn't start if the builder IS null. + +2011-07-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + Now it is possible to directly pass a Node as a root to the builder. + The owning document if fetch by Node.getOwnerDocument(). This is + useful if you want to generate the recommendation directly into + an already existing document under a given node. + + * src/main/java/de/intevation/flys/artifacts/services/meta/DataCage.java: + Changed the signature of recommend() to accept a node where to + append the recommendations. + +2011-07-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + Added a macro mechanism: + + <dc:macro name="keine-fuenf"> + <dc:text>'5' ist nicht in der Liste der Outs.</dc:text> + </dc:macro> + <dc:call-macro name="keine-fuenf"/> + <dc:call-macro name="keine-fuenf"/> + <dc:call-macro name="keine-fuenf"/> + + Macros can be defined everywhere in the template + with 'macro'. There bodies can contain all valid elements + including other 'macro's and 'call-macro's. They are + called with their 'name' with 'call-macro'. The control flow + is continued inside the body of the called macro and + will continue right after the calling 'call-macro' when + the macro body is finished. + +2011-07-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + Added a new 'if' construct similiar to XSLT: + + <dc:if test="not(dc:contains($outs, '5'))"> + <dc:text>'5' ist nicht in der Liste der Outs.</dc:text> + </dc:if> + + The control flow is continued inside the 'if' if the 'test' attribute + as an XPath expression on an empty document evalutes to true. + Else the inside is skipped. There is no 'else'. Use 'choose'/'otherwise' + if you need this. + +2011-07-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/DataCage.java: + Added a recommend() method to generate recommendations for + a given artifact, outs and extra parameters. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added + method to extract all data at once. + +2011-07-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/FunctionResolver.java: + New. Custom XPath function provider. Provides + 'dc:contains(Object [] haystack, Object needle)' by now. Should be + useful to check containments in 'out' lists later. + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + Register the FunctionResolver to the evaluated XPaths. + + * src/main/java/de/intevation/flys/artifacts/services/meta/App.java: + Added code to parse + "param:a,b,c" to "param" -> new String [] { "a", "b", "c" } to + help testing the 'dc:contains' XPath function. + +2011-07-20 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Added wms configurations for Saar, Mosel and Elbe. + Each river supported by FLYS requires such a WMS configuration. A WMS + should contain layers for the river axis, buildings, kilometer labels + and maybe a background layer as well. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java: + Added key that is used to store a map of WMS URLs - for each river a + WMS URL. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Parse the river WMS from global configuration. + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + Create WMSLayerFacets with URLs based on the river and the river wms + configuration stored in the FLYSContext. + + * src/main/java/de/intevation/flys/artifacts/WMSBackgroundArtifact.java, + src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java: + Adapted the initialize() signature and the method call of computeInit() + which requires a FLYSContext to retrieve the river WMS configurations. + + * src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Added the context object parameter to the computeInit() method. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Call + initialize() with the context object - which is a FLYSContext or a + CallContext. + +2011-07-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/App.java: + Check if builder was created properly before using it. + + * src/main/java/de/intevation/flys/artifacts/services/meta/StackFrames.java: + Implements now variable provider for XPath expressions. + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + Added new choose/when/otherwise construct similiar to XSLT + + <dc:choose> + <dc:when test="$river = 'Mosel'"> + <dc:text>Es ist die Mosel.</dc:text> + </dc:when> + <dc:when test="$river = 'Saar'"> + <dc:text>Es ist die Saar.</dc:text> + </dc:when> + <dc:otherwise> + <dc:text>Es ist weder Mosel noch Saar.</dc:text> + </dc:otherwise> + </dc:choose> + + A 'choose' block can contain a list of 'when's and an optional + 'otherwise'. For each 'when' the test attribute is evaluated + as an XPath expression on an empty document. The result of + the evaluation is taken as a boolean value. If its value is + true the control flow is continued inside the corresponding + 'when' and the other choose elements are not tested. + If the value is values the testing continues with the next + 'when'. If no 'test' expression is evaluated to true, the + control flow continues inside the 'otherwise'. If no 'otherwise' + is given nothing happens at all. + +2011-07-20 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Added a config section for floodmaps. Currently, the + background layer's url and layername is defined here. + + * src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java: + Read the background layer configuration from conf.xml. Those values are + used to create the WMSLayerFacet. + +2011-07-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java: + The background layer facet will no longer have an extent set. + +2011-07-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java, + src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java: + Set the extent of the created WMSLayerFacets and i18n its descriptions. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added I18N strings for the + background an river axis layer. + +2011-07-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + This facet type has a method to set the extent of a WMS layer. The + extent is written to the facets XML node in toXML() as well. + +2011-07-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Adapted + the signature of setup() which requires a CallMeta parameter now. + + * src/main/java/de/intevation/flys/artifacts/WMSBackgroundArtifact.java, + src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java: Use + the CallMeta object retrieved in setup() to call initialize(). It is now + able to i18n things. + +2011-07-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/App.java: New. + Standalone app to debug the datacage template. To use in a maven environment: + + -Dmeta.data.template=PATH_TO_META_DATA-TEMPLATE.XML \ + -Dmeta.data.parameters=river:Mosel \ + -Dmeta.data.output=OUTPUT.XML \ + -Dflys.backend.user=DB_USER \ + -Dflys.backend.password=DB_PASSWORD \ + -Dflys.backend.url=DB_CONNECTION_URL \ + -Dexec.mainClass=de.intevation.flys.artifacts.services.meta.App + +2011-07-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/DataCage.java: + New. First step to factor out the "Datenkorb" logic into a service independent + singleton. + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Uses the "Datenkorb" singleton now. + +2011-07-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ManagedFacet.java: + Removed "index" property, because it is already existing in parent + class. + +2011-07-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Improved error handling. + +2011-07-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/resources/metadata/template.xml: Deleted. + + * doc/conf/meta-data-template.xml: New. Was template.xml + + * doc/conf/conf.xml: Made meta data template configurable. + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Load template from configuration not from resources. + +2011-07-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/resources/metadata/template.xml: s/[a-z]+-id/db-id/ + Make database ids identifiable with unique name "db-id". + +2011-07-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ManagedFacet.java: + Override the toXML() method. Subclasses can now write their own XML + representation. + + * src/main/java/de/intevation/flys/artifacts/model/ManagedDomFacet.java: + New. This ManagedFacet uses an Element (DOM) to store the information + about a facet. The intent of this facet type is to represent a facet + stored in an Collection attribute. Different facets can have different + attributes that we need to parse, but the only thing ManagedFacets need + to do, is to adjust the attributes "active" and "position". So, those + values are set directly on the Element, the other attributes aren't + touched. + + * src/main/java/de/intevation/flys/artifacts/model/ManagedFacetAdapter.java: + New. This facet is a wrapper for another facet. This subclass of a + ManagedFacet overrides the toXML() method. The XML representation is + defined by the inner facet that is stored as member variable. The + ManagedFacet specific attributes "artifact", "facet", "pos" and "active" + are added manually. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: Uses + the toXML() method to write a facet node into the attribute document. + + * src/main/java/de/intevation/flys/collections/AttributeParser.java: Uses + the ManagedDomFacet to save the information of a facet which is + contained in the attribute part of a Collection's DESCRIBE document. + + * src/main/java/de/intevation/flys/collections/OutputParser.java: Uses the + ManagedFacetAdapter to save a facet, because we want to keep the + specific facet to be able to write its specific XML representation into + the Collection's DESCRIBE document. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Adapted the XPath of facets stored in the attribute part of the + DESCRIBE. + +2011-07-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + method that returns the Outputs for the Artifact. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Adapeted the call of OutputParser. + + * src/main/java/de/intevation/flys/collections/OutputParser.java: + Simplified the code to read the Outputs of Artifacts. This parser will + now longer parse the DESCRIBE documents of the Artifacts, but query the + Outputs via FLYSArtifact.getOutputs() directly. + +2011-07-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/StaticFLYSArtifact.java: + Adapted the function call of ProtocolUtils.appendOutputModes(). + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + Override toXML() to add the URL and layernames to the XML representation + of this facet. + +2011-07-18 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/wmsbackground.xml, + doc/conf/artifacts/riveraxis.xml: New configurations for an Artifact + that is used as background layer in floodmaps, and an artifact that is + used as layer showing the river axis in a floodmap. + + * doc/conf/output-defaults.xml: New file to configure default artifacts + for specific output states. E.g. the floodmap state recommends a + background layer and a layer displaying the river axis. In suche case, + the floodmap state recommends two artifacts for the two layers. + + * doc/conf/conf.xml: Added new artifacts/artifact-factories and a Hook to + monitor artifacts (-> CollectionMonitor.java). + + * src/main/java/de/intevation/flys/artifacts/model/WMSLayerFacet.java: + New. This facet is used to represent a layer in a map. So, this facet + stores information about a WMS URL and the layer names provided by this + WMS. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + facet types for the wmsbackground and riveraxis. + + * src/main/java/de/intevation/flys/artifacts/states/WMSBackgroundState.java, + src/main/java/de/intevation/flys/artifacts/WMSBackgroundArtifact.java: + New. An artifact and its default state. The intent of these classes is + to generate WMSLayerFacets which represent background layers in maps. + + * src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java, + src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java: New. + An artifact and its default state. The intent of these classes is to + generate WMSLayerFacets which represent layers that display a river + axis. + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Added the INIT ComputeType. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + case for the INIT ComputeType while computing data. + +2011-07-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Added a method computeInit() which is called to initialize data/facets + after an artifact has been created. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Repaired + broken XPath. + +2011-07-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java: + Removed the code to generate new artifacts. Instead of creating new + artifacts automatically, we decided to suggest creating new artifacts + from specific types. Therefore, the DESCRIBE document of the artifacts + is extended with a node that contains recommended artifact types. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + FLYSArtifacts might be setup with the identifier of an other + FLYSArtifact. Subclasses are able to override a method called + initialize(Artifact, GlobalContext). This might be helpful to extract + required values or clone artifacts. + +2011-07-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Adapted the signature of createArtifactContext() - it returns an + instance of GlobalContext now. + +2011-07-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: + Debugged the water fill algorithm. Added a lot of logging. + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + Added a text field to give a water level to fill in. + +2011-07-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Moved code + to create the output modes based on the given facets to FLYSArtifact. In + addition, FLYSArtifact got a new method that returns a specific input + value as string. + + * src/main/java/de/intevation/flys/artifacts/CollectionMonitor.java: New. + This hook monitors the "post-feed" and "post-advance". If the monitored + Artifact's state has configured recommended artifacts, this hook will + create new Artifacts. + + TODO: We have to add the UUIDs of the new Artifacts to the DESCRIBE + document of the artifact to let the client know, that there are new + recommended Artifacts. + + * src/main/java/de/intevation/flys/artifacts/StaticFLYSArtifact.java: New. + This Artifact is the base class for Artifacts, that represent static + data. E.g. this could be a decoration theme in a chart or a background + layer in the map. + + * src/main/java/de/intevation/flys/artifacts/states/OutputState.java: New. + This state might be used as base class for states, that doesn't require + any user input, but only provide static Facets added by a computeFeed() + operation. So, subclasses need to implement computeFeed() only. + +2011-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/charts/CrossSectionApp.java: + New. Standalone Swing-App to test cross sections from database without the + hassles of our complete software stack. Runnable from a maven environment: + + $ mvn -e \ + -Dflys.backend.user=DB_USER \ + -Dflys.backend.password=DB_PASSWD \ + -Dflys.backend.url=DB_CONNECTION_URL \ + -Dexec.mainClass=de.intevation.flys.artifacts.charts.CrossSectionApp \ + exec:java + + You can set the river to be used with the system property 'river'. + Defaults to 'Mosel'. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENFacet.java: + Removed superfluous imports. + +2011-07-13 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: The FloodMapState has a new Outputmode + called "floodmap" now. + + * src/main/java/de/intevation/flys/artifacts/model/WSPLGENFacet.java: New. + This facet is used to generate WSPLGEN results. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + the WSPLGENFacet. + + * src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java: + This state will now generate WSPLGENFacets. + +2011-07-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: + Fixed corner case. + +2011-07-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/geom/Lines.java: New. + fillWater() generates a list of wet lines for a given profile and a + given water level. + +2011-07-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: The + Outputs created while generating the DESCRIBE document will now have the + 'type' member set. + + * src/main/java/de/intevation/flys/collections/OutputParser.java: Read the + 'type' member from DESCRIBE document. + +2011-07-06 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Removed a typo. + +2011-07-06 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DataFacet.java: + DataFacet are now able to store the ID of the state which has created + this Facet. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Initialize DataFacets with the ID of this state. This is necessary to + renew the waterlevel data if it is no longer existing in the cache. + +2011-07-06 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ReportFacet.java: A + report facet can now store the state's id and the artifact's hash value + when it has been created. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Initialize the ReportFacet and WaterlevelFacet with state id and hash + information. This has been necessary to retrieve reports and waterlevels + in states after this one - in states that we need to enter for floodmap + parameterization. + +2011-07-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelGroundDifferences.java: + Changed the desired UI provider. + +2011-07-05 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added the option to continue the + waterlevel parameterization with the intent to create flood maps. + + * src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + This state is no longer a final state. The user has the option to + continue with the parameterization for flood maps based on the current + waterlevel. Therefore, this states desires the "continue" UI provider. + Clients should recognice this to just step to the next state or display + a button that lets the user step to the next state manually. + + * src/main/java/de/intevation/flys/artifacts/states/FloodplainChoice.java, + src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java, + src/main/java/de/intevation/flys/artifacts/states/ScenarioSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DGMSelect.java, + src/main/java/de/intevation/flys/artifacts/states/ProfileDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelGroundDifferences.java: + New. These states are used to parameterize a further calculation type: + flood map. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Required strings for the + flood maps states. + +2011-07-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix(?) for flys/issue114 + + * src/main/java/de/intevation/flys/artifacts/model/WQ.java: + Make guessing a bit more robust. + +2011-07-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Added the math needed to calculate "W-Differenzen" in "Laengsschnitten". + Needs testing! + + * src/main/java/de/intevation/flys/artifacts/model/NamedObject.java: + Made it an interface to be usable in more than one inheritance chain. + + * src/main/java/de/intevation/flys/artifacts/model/NamedObjectImpl.java: + Implements the NamedObject interface and is the new base class of + WQ and WKmsImpl. + + * src/main/java/de/intevation/flys/artifacts/model/WKms.java: + New. Interface to associate kms with ws. + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: + Changed the base class to NamedObjectImpl. Renamed getKms(int) + to getKm(int) to make clear it return a single scalar value + and fullfil the WKms interface. + + * src/main/java/de/intevation/flys/artifacts/model/WKmsImpl.java: + New. Implements the WKms interface. Intended to be a lightweight + datastore for "zusaetzliche Laengsschnitte" and as results + of the WKmsOperations. + + * src/main/java/de/intevation/flys/artifacts/model/WQ.java: + Changed base class to NamedObjectImpl. + + * src/main/java/de/intevation/flys/artifacts/math/WKmsOperation.java: + New. Operations on WKms data. + Currently only the SUBTRACTION operation is implemented. This + one is needed to calculate the "W-Differenzen". The operation + is insensitive about the km directions of the datasets. Missing + values are interpolated linear. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Adjusted to satisfy the signature change of WQKMs. + +2011-07-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/StyledXYSeries.java: New. This + XYSeries stores the style information that should be used to render this + series. These information are stored as raw XML documents. A public + method can be used to apply those style information to a + XYLineAndShapeRenderer. + + Note: The only two attributes currently supported by StyledXYSeries + items are "linesize" and "linecolor". + + * doc/conf/themes.xml: Added some more basic themes for the four + calculation methods. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: This + generator now tries to apply themes for all series contained in the + chart. If a series is no instance of StyledXYSeries, the default + renderer is used. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Removed the code that had been introduced to adapt renderers statically. + Now, each of these concrete ChartGenerators instantiates StyledXYSeries + items to put the curves into the chart. Those items contain style + information now! + +2011-07-01 Ingo Weinzierl <ingo@intevation.de> + + flys/issue135 (Diagramm: Trotz abgeschalteter Themen bleiben Beschriftungen bestehen) + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: The way + to store datasets has changed. Until this revision, the concrete + generators managed their own datasets. E.g. the + DischargeLongitudinalSectionGenerator had three datasets: w, q and + corrected w. Now, there are just two datasets, managed by this base + generator - one dataset for the first Y axis and one dataset for the + second Y axis. This makes it easier to remove axes, that have no data to + be displayed. All concrete chart generators have to add their XYSeries + using two methods: addFirstAxisSeries() and addSecondAxisSeries(). + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Those concrete chart generators no longer manage datasets themself but + they use the two methods described above, to plot the data to the first + or second Y axis. + +2011-07-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java: + Added the option to use a filter to reduce the number of items returned + by this service. + +2011-06-30 Ingo Weinzierl <ingo@intevation.de> + + flys/issue159 (WINFO: Radiobutton - Ortsauswahl bei "W für ungleichwertigen Abflusslängsschnitt" entfernen) + + * doc/conf/artifacts/winfo.xml: Changed the kilometer range input for + calculation 4. This calculation type requires a kilometer range. So, + after choosing the calculation 4, the transition model leads to a state + that just allows the input of a kilometer range with no option to + enter locations. + + * src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java: + New. A base state for the kilometer selection for calculations. The + target of this state is to provide facets for the duration curves. + + * src/main/java/de/intevation/flys/artifacts/states/DistanceSelect.java: + New. This state is used to enter a kilometer range. The difference to + the LocationDistanceSelect state is, that there is no option to enter + locations. + + * src/main/java/de/intevation/flys/artifacts/states/RangeState.java: + Improved this state to be the base state for calculation ranges. + + * src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: This + state no longer inherits from RangeState which now is used as base + state for kilometer ranges. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added new i18n strings for + the DistanceSelect state. + +2011-06-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * pom.xml: Downgraded Trove to 1.1-beta-5, because the new + later ones are removed from the maven repos. + + The functionality we need is in 1.1 so this downgrade should + cause no problems. + + Would be nice if we would support the maintainers of trove to + bring there new versions back into the main maven repos. + +2011-06-28 Ingo Weinzierl <ingo@intevation.de> + + * pom.xml: Repaired the JBoss repository which place has changed. + +2011-06-28 Ingo Weinzierl <ingo@intevation.de> + + Tagged RELEASE 2.4 + +2011-06-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/WstWriter.java: + Append the corrected W column (if existing) to the WST export. + +2011-06-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQ.java: + Guessing increaing w is not based on direct neighbors any more. + The second to be compared with is choosen by random of + the values before the first one. This makes the guessing + more robust against 'plateaus' of equal w values. + +2011-06-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/ATWriter.java: Array + for constructing the spline was too large leading to non-increasing + values. + +2011-06-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix for flys/issue150 + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Invert the x axis if its guessed that water is increasing. + +2011-06-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQ.java(guessWaterIncreasing): + Added a method to guess based on a given factor of the size (default 0.05) + if the water levels are increasing. Needed to determine in which direction + the water level curve should be orientated. Based on random to avoid + running over large dataset each time a diagram is generated. + +2011-06-27 Ingo Weinzierl <ingo@intevation.de> + + flys/issue177 (WINFO: Abflusskurven am Pegel verursachen ein Hängen des Servers) + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Commented out code to generate time ranges for series names. There + seems to be a problem while loading the discharge tables of a gauge or + while determining the start and/or end time of such discharge tables. + +2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/**/*.java: Removed trailing whitespace. + +2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Removed dead code. + +2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix for flys/issue173 + + * src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + Fixed the way the gauge was found for a given interval. + The old way does not work because it was just tested if + the station point was inside the segments which is not + necessarily true. The obvious solution to simply check + the overlapping intervals does not work either because + the gauge ranges touch each other and so more than + one gauge are returned in these cases. The River.maxOverlap() + is now used to find the gauge with the max overlapping + range. + +2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix for flys/issue147 + + * src/main/java/de/intevation/flys/artifacts/model/Calculation1.java: + Removed the 'kmUp' flag. It was an left over from former + WSP calculations (w/o ref km) leading to wrong results now. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Don't pass the kmUp flag to the calculation. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Added debug output to see the value of 'wq_free'. + +2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix for flys/issue86 + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + The reference gauge for calculations "am Pegel" was determined + wrong. + +2011-06-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Conversion w->q was broken. This should fix a number of issues + around "W am Pegel" calculations. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Issue an error report if a w->q conversion fails. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + The gauge to convert w->q with its discharge table was determined wrong. + +2011-06-24 Ingo Weinzierl <ingo@intevation.de> + + flys/issue174 (Diagramm: Q-Linie wird bei initialem Laden des Diagramms + anders dargestellt als bei Ansicht auf gesamten Wertebereich) + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + The chart will now have upper margins again. + +2011-06-24 Ingo Weinzierl <ingo@intevation.de> + + flys/issue172 (Diagramm: Ursprung der Diagramme bei Dauerzahlen) + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Charts of this type will have the lower X value set to "0". + +2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/ATWriter.java: + Results are now in cm. Made it more robust against corner cases. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Removed superfluous import. + +2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/winfo.xml, doc/conf/conf.xml: + Added facet config for AT exports. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added 'at' facet type. + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java: + Generate AT facets. + +2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/ATExporter.java: New. + Exporter for AT facets. Needs testing. + +2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/ATWriter.java: New. + Writer for AT files. New code because our data model differs + from Desktop-FLYS. Needs testing. + +2011-06-23 Ingo Weinzierl <ingo@intevation.de> + + flys/issue157 (Diagramm: Ursprung berechnete Abflusskurve) + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Moved the method that adjusts the X-axis to include the "0" value from + ComputedDischargeCurveGenerator to DischargeCurveGenerator. Now, both + charts will include the "0" on the X-axis. + +2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQDay.java: + Based on WQ now to make it exportable as AT. + +2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQ.java: + New. Base class for WQKms. + + TODO 1: make it a base class for WQDay, too, + TODO 2: Generate instances of WQ instead of WQKms in "Abflusskurven" + calculations. This will save memory. + + AT exporter will get instances of this class as data model + + * src/main/java/de/intevation/flys/artifacts/model/NamedObject.java: + Add default constructor to ease inheritance. + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: + Based on WQ now. Removed code allready defined in base class. + +2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/winfo.xml: Add TODOs for error reports + of "Abflusskurven am Pegel". Maybe we don't need them? + + * doc/conf/conf.xml: Configure report for each calculated output type. + +2011-06-22 Ingo Weinzierl <ingo@intevation.de> + + flys/issue164 (Berechnung 4: Umgekehrtes Berechnungsintervall führt zur) + + * src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java: + Create the items with range information for W and Q which allows the + client to validate the user inserted values. + +2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Arguments in filling datastructure were flip. Now + the "Abflusskurve am Pegel" looks correct again. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Removed superfluous imports. + +2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Improved situtation on rendering "Abflusskurve am Pegel". Not + fully working, yet. + + * doc/conf/artifacts/winfo.xml: Generate facets for the location path, too. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Misspelled + the facet which prevented the facets from being to the outputs. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java: + Extended to store the hash and the state id of the producing artifact/state + else it results in NPEs because the data is calculated on later (wrong) states. + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + Store the state id and the hash in the facet, too. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Add two + method to do calculations for a state the artifact is currently not in + and fetching the current state id. + +2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/winfo.xml: Generate facets for "Abflusskurven am Pegel" + Not working by now. :-/ + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: New facet type + for "Abflusskurven am Pegel" + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Do calculation + in the artifact not in the output generator. + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + Generate the new facets. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Fetch data from facet. + +2011-06-22 Ingo Weinzierl <ingo@intevation.de> + + flys/issue161 (Diagramm: Q-Achse in W-Längsschnitten immer bei Q=0) + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + The Q axis (which is the second y axis) initially contains the 0 value. + After a zoom action has taken place, this behaviour is no longer + supported. + +2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Draw correction curve again. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java: + Use correction curve to map plot to axes. Not doing so prevented + the correction curve from being drawn! + Smaller code cleanups and simplifications. + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java, + src/main/java/de/intevation/flys/artifacts/model/WQCKms.java: + Added methods to directly access the components w, q and c + at a given index. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: + Attribute access via DOM instead of XPath. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Code simplification. + +2011-06-21 Ingo Weinzierl <ingo@intevation.de> + + flys/issue157 (Diagramm: Ursprung berechnete Abflusskurve) + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Splitted + up zooming for x and y axes to be able to override specific axis + zoom behaviour. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + The lower bound of the x axis (which is the Q axis in such chart) is + always 0. + +2011-06-21 Ingo Weinzierl <ingo@intevation.de> + + flys/issue90 (Diagramm: Trennung derDiagrammfläche und Achsenaufheben) + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Added a margin between chart data and chart axes. + +2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix for flys/issue158 + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java: + Checks for right class now. + +2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Fix for flys/issue154 + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java: + Checks for right class now. + +2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Only generate 'outs' if they have facets. + + * src/main/java/de/intevation/flys/exports/ChartExportHelper.java: + 'boolean ? true : false' <=> 'boolean' + +2011-06-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Added the time-to-live to the DESCRIBE document. + +2011-06-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/artifacts/winfo.xml: Configured states to generate report facets. + +2011-06-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ReportFacet.java: + Return the report. + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java, + src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: + Generate report facets if there are problems with the calculations. + TODO: Adjust winfo.xml to configure the facets. + +2011-06-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/ReportGenerator.java: + New. Generator for calculation reports. + + * doc/conf/conf.xml: Added ReportGenerator. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + Added type 'report'. + + * src/main/java/de/intevation/flys/artifacts/model/ReportFacet.java: + Specialized facet for serving reports. TODO: Added them to the + calculation states. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation.java: + Looped through CallMeta for i18n purposes. TODO: do i18n + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Removed superfluous import. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Added some override annotations. + +2011-06-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/CalculationResult.java: + New. Used to transport the data and the error report. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation1.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation2.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation3.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation4.java, + src/main/java/de/intevation/flys/artifacts/model/DurationCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation.java, + src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java, + src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java, + src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java: + Use the CalculationResult now. + +2011-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation1.java: + Allow an explicit reference km to enable calculation "am Pegel". + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + If a calculation "am Pegel" is done, take start km of the + calculation range and find the gauge in which range it is located. + Take the station of the gauge as the reference km. If no gauge + is found the calcualtion falls back to calculation "auf freier Strecke". + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Replaced another inefficient attribute extraction via XPath + with direct DOM access. + +2011-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java, + src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Removed dead code. + +2011-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DataFacet.java + src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java, + src/main/java/de/intevation/flys/artifacts/model/DurationCurveFacet.java, + src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java, + src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Only generate facets when needed. + + * src/main/java/de/intevation/flys/collections/OutputParser.java: + Removed more XPath for simply accessing attributes of an element. + + * doc/conf/cache.xml: 200 elements in memory for "computed.values" are enough, + LRU as eviction strategy is sufficent. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java, + src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Use + more 'standard' Java naming conventions. + +2011-06-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Merged in the facet-slt branch to bring in the 'facet' feature. + + * doc/conf/artifacts/winfo.xml: Fixed some facets. + + * doc/conf/cache.xml: Added a "computed.values" cache to store the + results of the WINFO calculations. + + * src/main/java/de/intevation/flys/artifacts/model/ManagedFacet.java: + Add support for index per facet to make them unique and identifiable. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: + New. Inteface to be used to access the facet names of the configuration. + + * src/main/java/de/intevation/flys/artifacts/model/DataFacet.java: New. + A facet to be used to have raw access to the computed data of an artifact. + Useful to export things like CSV and WST. + + * src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java: New. + Specialized facet to access the water level data stored in WQKms arrays. + + * src/main/java/de/intevation/flys/artifacts/model/DurationCurveFacet.java: New. + Specialized facet to access the duration data stored in WQDay data structures. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Facets are + now generated dynamically from the current available ones stored with + the artifact. + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: Added + methods computeAdvance() and computeFeed() called if artifact is fed or + adance. This overwritten in subclasses to do the state depending calculations. + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java, + src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/WaterlevelState.java: These + states overwrites the computeAdvance() and computeFeed() methods to do + the corresponding WINFO calculations. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Calls + computeAdvance() and computeFeed() if artifact is fed or advanced. Centralized + the caching mechanism. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java, + src/main/java/de/intevation/flys/collections/AttributeParser.java, + src/main/java/de/intevation/flys/collections/OutputParser.java, + src/main/java/de/intevation/flys/collections/AttributeWriter.java, + src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Adjusted the code to cope with the indices of the facets. Used + DOM to access the attributes instead of XPath. Removed smaller bugs + concerning position generation. + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java, + src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/OutGenerator.java: + Forwarded facet references. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Uses facets to fetch data and generate output now. + +2011-06-17 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added a new parameter "wq_free" that + determines the mode of calculation 1. If it is "false" (default), + the calculation should be bound to a gauge. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + method to retrieve the information about the "wq_free" parameter. + +2011-06-17 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added a facet for corrected W in + computation 4. + +2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java: + Got rid of namespace in result document. + +2011-06-14 Ingo Weinzierl <ingo@intevation.de> + + flys/issue77 (Diagramm: Beschriftung der Kurven bei Dauerlinien) + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Give the curves in the chart names. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added titles for duration + chart curves. + +2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java: + Write top 'Oberkante' and bottom 'Unterkante' to out going XML + if they exist. + +2011-06-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java: + Write the min/max W/Q ranges as art:range elements into the DESCRIBE. + +2011-06-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java: + This state that is used to retrieve locations will now write the + kilometer range of the selected river into the DESCRIBE document. + +2011-06-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation1.java: + New. Factored out version of "Wasserspiegellage" calculation. + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: + + Removed some dead code. + + * src/main/java/de/intevation/flys/artifacts/model/WQCKms.java: + Added Override annotation and used quick access method. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Looped through error reporting use by interpolate. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Used factored out version of calculation 1. Removed dead code. + +2011-06-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation2.java: + New. Factored out version of "Abflusskurve". + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Loop errors through w/q at km interpolation. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Use factored out version of calculation 2. + +2011-06-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation3.java: + New. Factored out version of "Dauerzahlen". + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Loop errors through for q->w interpolations. + + * src/main/java/de/intevation/flys/artifacts/model/WQDay.java: + Added constructor to directly create with calculated results. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation.java: + Added method to return the number of problems. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Use factored out version of calculation 3. + +2011-06-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java, + src/main/java/de/intevation/flys/artifacts/model/WQCKms.java, + src/main/java/de/intevation/flys/artifacts/model/WQDay.java: + Added methods to remove NaN values. + +2011-06-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation.java: + New. Base class for calculations. Used to collect problems occuring + during calculation. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + Extends Calculation now. Looped through the problem reports to + base class. + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java: + Looped through the problem reports. + +2011-06-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: + Append the min/max range and a transformation matrix for each axis. + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: + Instantiate the InfoGeneratorHelper with a XYChartGenerator instance. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Changed the zoom operation. The zoom values defined in the chart request + document are no longer absolute values for a specific axis. Those values + represent percental values for the start and end point of x and y axes. + E.g. a chart has three axes with the following ranges: + - x axis : 0 - 10 + - y axis 1: 20 - 40 + - y axis 2: 40 - 90 + - zoom values for x: 0.1 - 0.9 (10% - 90%) + - zoom values for y: 0.2 - 0.8 (20% - 80%) + The produced chart will have the following ranges: + - x axis : 1 - 9 + - y axis 1: 24 - 36 + y axis 2: 50 - 80 + +2011-06-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + Map datasets to axes correctly. + +2011-06-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + Determine the gauges by their station positions. This hopfully + fixes the problem with wrong assigned gauges and invalid segments. + +2011-06-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Segment.java, + src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + Added more debug output. + +2011-06-08 Ingo Weinzierl <ingo@intevation.de> + + flys/issue103 PART 1 (WINFO: Wasserspiegellagenberechnung / Layout-Inkonsistenz) + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Selected values are formatted with the current locale. The static part + of the DESCRIBE document will now contain i18n formatted numbers. + +2011-06-08 Ingo Weinzierl <ingo@intevation.de> + + flys/issue93 (WINFO: Benennung der Berechnungsart korrigieren) + + * src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties: Changed the name of + calculation 4. + +2011-06-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Made the range determination more robust against NaN values. + +2011-06-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + The second y axis is set to position "1". It was set to "2" before, but + in that case, there was no position "1". + +2011-06-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + s@m³/s@m\\u00b3/s@ + +2011-06-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: + Only generate an axis element if a axis really exists. + +2011-06-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java: + Simpified array swapping. + +2011-06-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Use java.util.List instead of java.util.Vector + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java, + src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Removed superfluous imports. + +2011-06-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + createItem() is not abstract any longer to avoid code repetitionin sub classes. + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java, + src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java, + src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java, + src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Removed duplicated code, inserted default constructors and Override annotations. + +2011-06-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: + Append axes range information to the info document. + +2011-06-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + If feed() fails do not store invalid values in database. + +2011-06-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: + Removed asymmetrical "- 1" from width calculation. + +2011-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + Fixed problem when more than one value per segment are given. + +2011-06-05 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Refactored version of "Berechnung 4" + + * src/main/java/de/intevation/flys/artifacts/model/Segment.java: + Added instance fields for a reference point (= location of gauge) + and backup of values (needed for naming). + + * src/main/java/de/intevation/flys/artifacts/model/WQCKms.java: + Added a constructor to be created from a WQKms. This is helpful + if a WQKms is replaced by a back jump correction. + + * src/main/java/de/intevation/flys/artifacts/model/Calculation4.java: + New. Outfactored version of "W bei ungleichmaessigen Abflusslaengsschnitt". + Much cleaner now and it should have a better handling of the corner + cases. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Removed the linear interpolation stuff. It is now in Linear. Removed + the LinearRemap interpolation method because it is not needed any + longer. Added a method to interpolate a given km with a given + function. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Removed the old calc 4 and used the new one. + + * src/main/java/de/intevation/flys/artifacts/math/LinearRemap.java: + Deleted. Not needed any longer. + + * src/main/java/de/intevation/flys/artifacts/math/Function.java: + New. Interface for a uni-variate real function. + + * src/main/java/de/intevation/flys/artifacts/math/Identity.java: + New. Implements Function with f(x) = x + + * src/main/java/de/intevation/flys/artifacts/math/Linear.java: + New. Implements Function with f(x) = m*x + b + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Factored some stuff out to DoubleUtil. Removed some dead code. + Does some rounding correct. + + * src/main/java/de/intevation/flys/utils/DoubleUtil.java: New. + Centralized utils surrounding common double operations. + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: + Removed superfluous imports. + +2011-06-03 Ingo Weinzierl <ingo@intevation.de> + + flys/issue90(Diagramm: Trennung der Diagrammfläche und Achsen aufheben) + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Determine the ranges of x and y axes. If no zoom ranges are given, we + will determine the min and max xy values in the dataset manually, + because JFreeCharts adds a margin to the left and right of the data + area automatically.. + +2011-06-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Moved + the chart creation into an own public method. This lets the + ChartInfoGenerator create charts without duplicating code. + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: + Limited the possible class for generators to XYChartGenerator. This + enables the ChartInfoGenerator class to do the whole chart creation + stuff itself without outsourcing the code to concrete subclasses. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionInfoGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionInfoGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveInfoGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveInfoGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveInfoGenerator.java: + Removed the code to generate charts - this is done in ChartInfoGenerator + now. + +2011-06-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Added new + methods to extract the x and y ranges from request document. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Added a + method that zooms the chart to the specified x and y ranges. + +2011-06-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Set collection ttl to 6 hours. + +2011-06-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/Segment.java: + New. Parse segments only once. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Expose new parser to artifacts. TODO: Use it. + +2011-06-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Changed interpolation methods to interpolate to an arbitrary position + in a given double result array as a preparation for segment independent + calculation. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Removed superfluous import. + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java: + Fixed cause for crashing: Run back too far in some siutations. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Refactored range code a bit. Needs more work. + +2011-06-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: + Interchange the lower and upper x value of the chart if the x-axis is + inverted before the matrix values are computed. Now, the matrix is able + to work with charts that have an inverted x-axis. + +2011-06-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartInfoGenerator.java: New. A + chart info generator generates a document that contains meta information + for a specific chart. Concrete instances of this abstract class need to + instantiate concrete ChartGenerators and dispatch nearly all methods of + an OutGenerator (init(), doOut(), setMaster()) to this instance. The + generate() method is implemented in the ChartInfoGenerator itself. It + creates a chart with help of the ChartGenerator instance and builds a + document that contains meta information of this chart. + + * src/main/java/de/intevation/flys/exports/InfoGeneratorHelper.java: New. + This helper is used to create the chart info document. At the moment, + the only information that is included in this document is a + transformation matrix to transform image coordinates into chart + coordinates. + + NOTE: The transformation matrix creation needs some work to support + charts with inverted X axis. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionInfoGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionInfoGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveInfoGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveInfoGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveInfoGenerator.java: + Concrete instances of ChartInfoGenerator that create the chart info for + the currently supported chart types. + + * doc/conf/conf.xml: Registered new OutGenerators. + +2011-05-31 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Added support for the 'type' paramter of the collection's out() + operation. + +2011-05-31 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Use an explicit reference km for interpolation now. + +2011-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/cache.xml: Introduced cache to store the distance info per river. + This boosts performance in following ab setup from 3.61 to 39.91 requests/secs. + + $ ab -c 20 -n 1000 -p distances.xml http://127.0.0.1:8181/service/distanceinfo + + $ cat distances.xml + <?xml version="1.0" encoding="UTF-8"?> + <art:river xmlns:art="http://www.intevation.de/2009/artifacts">Elbe</art:river> + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java: Added + an iterator result to avoid construction expensive interim lists. + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java: Use + the cache if configured. + +2011-05-30 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + flys/issue82 + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Only successful interpolations are named. + +2011-05-27 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java: + Make it work independent of river flow direction. + + * src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java: + Fixed bug in ordering segments + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Re-enabled + calculation of the back jump correction. Fixed more flow direction issues. + +2011-05-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Removed call of XMLDebug class which is not in the version control. + +2011-05-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Moved the code part that skips themes right after the part that sets the + master artifact for the OutGenerator. We need this master artifact to + display empty charts - master artifact is used to create titles and + axes. + +2011-05-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Deactivated themes are not put into the chart. + +2011-05-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeParser.java: + Repaired broken XPath expressions to find the output modes in an + attribute document of a collection. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: This + writer will now create a document that has a root node art:attribute. + Before these changes, the document's root node was art:outputs which is + part of the attribute document but not the right root node. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Adapted some XPath expressions and corrected the the process to create + attribute documents. + +2011-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/LinearRemap.java: + Made it work independent of from/to order. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Added method to extract the ranges correctly from data. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Use the correct ranges. Comment out backjump detection temporarily. + +2011-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java: + Generate fields for w/q input depend on flow direction. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Moved km up question out of loop. +2011-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Take the flow direction into account. + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Prevent NPE. + + * src/main/java/de/intevation/flys/artifacts/states/RangeState.java: + Allow to be 'from' greater than 'to' in ranges. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Negate + step if 'from' is greater than 'to'. + +2011-05-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Round exploded values to a precision of 1e-6. + +2011-05-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Qs are now stored in ranges for each column. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory2.java: + Deleted. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java: + Was WstValueTableFactory2. + + * src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java: Fixed + node linking bug. Removed dead code. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Q values are now stored in range trees by each column. The qs of the rows + are removed and the calculations are adjusted. Removed dead code. + +2011-05-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java: + Moved cache name to WstValueTableCacheKey. Do not cache null references. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableCacheKey.java: + Moved cache name into this class. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Store QRangeTree for each column of value table. TODO: Use them! + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory2.java: + Intended as a replacement for WstValueTableFactory, but is work in progress. + + * src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java: Fixed + index errors and added methods to dump as graphviz graph. + +2011-05-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Improved the validation of WQ values. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Use the + correct input data object to determine the selected WQ mode (range or + single input). + +2011-05-24 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-40 (part I/II) + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Write default values (values already selected by the user before) of the + input data items into DESCRIBE. + +2011-05-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + Removed needless imports. + +2011-05-24 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-85 (part III/III) + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + Added a static function that returns the kilometer values (double[]) + from locations input (whitespace separated double values). + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Adapted + the getKms() method. It will now return a computed array of kilometers + if we had inserted a range, or it will return the inserted kilometers if + we had inserted locations. + +2011-05-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java: + Moved cache key to separate class. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableCacheKey.java: + New. The new cache key class. + +2011-05-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java: + Model to store the q values of a WST column efficiently. First + building block not to store the q values directly aside the + w values. + +2011-05-24 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-85 (part I/III) + + * doc/conf/artifacts/winfo.xml: Added two further field 'ld_mode' and + 'ld_locations' to the range/locations state to track the selected mode + and locations. + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + Added methods to validate the user inserted locations. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + method to determine of a range or locations have been inserted. + +2011-05-23 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-62 (part II/II) + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Dump the + artifacts state/data in DEBUG mode in describe(). + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java, + src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java, + src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java, + src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + States will no longer store data. The only reason for states storing + StateData is to know about the necessary data for this state. If a State + needs to access the user input for a specific StateData object, it needs + to query the FLYSArtifact which stores the data. + +2011-05-23 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + method to dump the artifacts state(s)/data. + +2011-05-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + flys/issue84 + + * src/main/java/de/intevation/flys/artifacts/model/WstFactory.java: + Forget to select wst kind. + +2011-05-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + flys/issue81 + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + weights for kms were swapped. + +2011-05-20 Ingo Weinzierl <ingo@intevation.de> + + Tagged RELEASE 2.3.1 + +2011-05-20 Ingo Weinzierl <ingo@intevation.de> + + * Changes: Prepared changes for the upcoming release. + +2011-05-20 Hans Plum <hans@intevation.de> + + * NEWS: + Hint to Release 2.3.1. For further information look into module + flys-client/NEWS + +2011-05-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java (getExplodedValues): + Increment kms array size by one to take the end of range, too. + +2011-05-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java: + Sort by rows (should not be necessary). + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Use unsharp km lookup (epsilon = 0.0001). This fixes the problem + that some kms were not found. + +2011-05-19 Ingo Weinzierl <ingo@intevation.de> + + flys/issue66 + + * src/main/resources/messages_en.properties: Fixed broken template. + +2011-05-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Set the name of the computed discharge curve objects. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + The curves of this chart will now have names that consist of the word + 'Discharge Curve', the river name and the kilometer that has been used + for the computation. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for the + computed discharge curves. + +2011-05-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Added convenience method isQ() to determine if we are + doing Q calculations. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Reintroduced titles for the "W for unausgeglichene Abfluesse". + +2011-05-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + The curves will now have names that consist of the gauge name and its + valid time range. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for the + discharge curves. + +2011-05-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Removed dead code. + +2011-05-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Use the correct method to generate kms. + + * src/main/java/de/intevation/flys/artifacts/math/LinearRemap.java: + Added some logging to test the map in debug mode. + +2011-05-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Made getExplodedValues static. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Use new logic to calculate "W für ungleichwertige Abfluesse". + Not working, yet. + + * ChangeLog: Fixed former entry. + +2011-05-18 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Registered the WST export for discharge + longitudinal sections. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Set the + names of the discharge longitudinal section computation results. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java: + The W/Q curves in the chart will now have names. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + The WstWriter is filled with column names in an own method. So, we are + able to override this process in subclasses. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java: + Adapted the column names for the WST export. + +2011-05-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + Work on flys/issue69 + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Use new logic to calculate "Wasserstand/Wasserspiegellage". + Compared to desktop FLYS are the results are structurally right + but a bit off in the positions after the decimal points. + Maybe a result of the interpolation? Need to debug this. + +2011-05-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + W and Q curves will now have names based on the defined W or Q values + for the waterlevel computation. + +2011-05-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/NamedObject.java: + New. This object is used to give objects a name. + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: Inherit + from NamedObject now. Because we need to display names for those objects + in different places. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: The WQKms + objects returned by a waterlevel computation will now have names. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Insert the column names for the WSTs into the WstWriter. + + * src/main/java/de/intevation/flys/exports/WstWriter.java: The column + names are written into the head of the WSTs now. + +2011-05-17 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstLine.java: New. This + class is used to store the W/Q values of a specific kilometer of a WST. + + * src/main/java/de/intevation/flys/exports/WstWriter.java: New. A writer + that creates WSTs. + + TODO: The header of the WSTs is not finished. The Q descriptions are + missing. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: + Enabled WST exports. + + * doc/conf/artifacts/winfo.xml: Registered the WST export for waterlevels. + +2011-05-17 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/utils/Formatter.java: New. This class + supports functions to retrieve formatters for specific types of data + used in FLYS. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Removed the formatter declaration - the whole formatter stuff is done in + Formatter now. + +2011-05-17 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-72 + + * src/main/java/de/intevation/flys/artifacts/services/MainValuesService.java: + Repaired broken XPath expressions to extract start and end kilometer. + +2011-05-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Removed the Hibernate loading stuff. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTableFactory.java: + New. The Hibernate loading. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Use the WstValueTableFactory for loading now. + +2011-05-17 Ingo Weinzierl <ingo@intevation.de> + + Tagged RELEASE 0.1 aka Version 2.3.0 + +2011-05-16 Hans Plum <hans@intevation.de> + + * NEWS: + New. Giving some user specific perspective to new functionality and + changes. This file references releases dates only; details can be find + in the client module at flys-client. + +2011-05-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + First step to calculate "W fuer ungleichwertige Abfluesse" correctly. + flys/issue55 + + * src/main/java/de/intevation/flys/artifacts/math/LinearRemap.java: + New. Remaps "gleichwertige" Q values to the corresponding + "ungleichwertige" Q values depending on km. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Remap the Q values "ungleichwertig" depending on the + "gleichwertige" ones. + +2011-05-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + First step to fix flys/issue69 + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + New code path to implement the calculation of "Wasserstand/Wasspiegellage" + correctly. TODO 1: Use new path in UI. TODO 2: Remove unused old code. + +2011-05-13 Ingo Weinzierl <ingo@intevation.de> + + * Changes: Prepared Changes for the upcoming release 2.3 - see Changes + file to get to know about the changes of the version numbers. + +2011-05-13 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-37 + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java: This + state would be happy if there is a UI provider called "river_panel". + +2011-05-11 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Added new + methods that return the requested chart size as integer array [width, + height]. The requested size is read from the incomding request document. + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: The size + of a chart is no longer static. The requested size is fetched using + ChartGenerator.getSize(). + +2011-05-11 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-52 + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + The X-Axis of such a chart is inverted, if the head of the river is not + at kilometer 0. This type of charts always have the head of the river at + the left side. + +2011-05-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Make incoming XML symmetric to DistanceInfoService. + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-47 + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Adjusted temporarily the color of the W, Q and corrected W curves to + distinguish each other. + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: + Adjusted the plot of xy charts - the gridlines are displayed now. + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + ISSUE-53 + + * src/main/java/de/intevation/flys/artifacts/resources/Resources.java: + Added a method that returns the preferred locale based on the available + locales of the server and the desired locales of the request (CallMeta). + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: Added a + method that creates a number formatter with minimum and maximum digits. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java, + src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java: + Formatted the number values of the CSV exports. + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/RangeWithValues.java: + New. A data structure that enables us to save a data triple: a range + that consist of lower and upper double value and a set of values that + belong to this range. + + * src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java: + Implemented the validation of W/Q values. + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: New + method to retrieve i18n messages based on keys. + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java, + src/main/java/de/intevation/flys/exports/WaterlevelExporter.java, + src/main/java/de/intevation/flys/exports/DurationCurveExporter.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java: + Added headers for CSV exports. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added new i18n strings for + CSV headers. + +2011-05-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Fetches river name from incoming XML document. If no river is given all + infos about all rivers are listed. + + * src/main/resources/metadata/template.xml: Templates honors the 'river' + parameter. + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + Extended to pass parameters to the templating. Added support for + type conversion. + + * src/main/java/de/intevation/flys/artifacts/services/meta/StackFrames.java: + Take parameters as an initial stack frame. + + * src/main/java/de/intevation/flys/artifacts/services/meta/TypeConverter.java: + New. Converts types off stacked variables. + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Added a + method to add subtitles to charts. The implementation in this class does + not add any subtitle. Concrete subclasses may override this method to + add some. + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Add subtitles to charts. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n templates for + compound messages (chart subtitles). + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/resources/Resources.java: + Added new methods to retrieve translated compound messages. + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/OutGenerator.java: Added a + method to set the master artifact that should be used for some special + operations. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/AbstractExporter.java: + Implement the setMasterArtifact() method of the interface. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Call OutGenerator.setMasterArtifact(). + + NOTE: The determination of the master artifact needs to be implemented! + +2011-05-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Removed + hard coded dev code that defined a WQ mode. + +2011-05-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + Stripped ugly extra whitespace from output introduced by + templating. + +2011-05-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/resources/metadata/template.xml: Added forgotten + columns of fixation WSTs. + +2011-05-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: Added a + method to retrieve i18n strings. + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Enabled i18n support for chart title and axes labels. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for the + chart types above. + +2011-05-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java: + New. This OutGenerator exports the data of a discharge longitudinal + section computation. + + * doc/conf/conf.xml: Added the DischargeLongitudinalSectionExporter. + + * doc/conf/artifacts/winfo.xml: Added the exporter with CSV facet to the + discharge_longitudinal_section state. + +2011-05-07 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java: + Added code to make back jump correction work with both + potential flow directions. + +2011-05-06 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/resources/metadata/template.xml: + Added data cage configuration for 'Längsschnitt'. + +2011-05-06 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added the missing Q facet for discharge + longitudinal sections. + + * src/main/java/de/intevation/flys/artifacts/model/WQCKms.java: New. A + derived dataset to store W/Q values with corrected Ws for a kilometer + range. + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: Some new + methods and a new constructor to initialize this data object with a + predefined set of values. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: New + methods to retrieve the W/Q values for the 'discharge longitudinal + section' computation. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: New + methods to retrieve and compute data used for the 'discharge + longitudinal section' computation. + +2011-05-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java: + Bugfix: just write the ranges of gauges into the DESCRIBE if the + 'wq_values' data item is required. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n messages used in + the DESCRIBE of the WQAdapted state. + +2011-05-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Changed the title of the y-axis (now 'W [NN+m]'). + +2011-05-05 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Improved the transition model to reach the + output state for creating 'discharge longitudinal section' charts. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added a + method that returns all gauges of the selected river based on a the + given kilometer range. + + * src/main/java/de/intevation/flys/artifacts/states/WQAdapted.java: New. + This state creates a set of elements for the DESCRIBE that consist of a + tuple of kilometer values. The number of elements depend on the number + of gauges intersected by the given kilometer range. + + * src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java: + New. This state is the output state that is reached after the 'discharge + longitudinal section' computation has been chosen. + +2011-05-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Default + step width between two kilometers added - if no step width is given, + this default width is used. + +2011-05-05 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Fixed a potential NullPointerException if there is just a single + kilometer given to create a longitudinal section. + +2011-05-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * pom.xml: Added http://repository.jboss.org/maven2 repo + to fix flys/issue30 + +2011-05-04 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + To make diagram generation possible ws are now generated from qs + because they are many ws having different qs. + +2011-05-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java: + Fetch the WQ data from WINFO artifact and write those values into the + CSV export. + +2011-05-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Added + methods to compute and retrieve the data for discharge curves (computed). + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + Fetch the computed discharge curve data from WINFOArtifact and add the + values into the JFreeChart dataset. + +2011-05-04 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added new transitions and states to enable + the WINFO artifact for computing discharge curves. + + * doc/conf/conf.xml: Added OutGenerators that generate computed discharge + curves and exports for its data. + + * src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java: + New. This state is reached if the user chose the computed discharge + curve. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveGenerator.java: + New. This is only a stub implementation at the moment. This + OutGenerator should create computed discharge curves later. It extends + the DischargeCurveGenerator which should do the same stuff for discharge + curves for gauges. + + * src/main/java/de/intevation/flys/exports/ComputedDischargeCurveExporter.java: + New. This is only a stub implementation at the moment. This OutGenerator + should create the exports of the discharge curve computation. + +2011-05-03 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added a new output mode for the duration + curve state (CSV export). + + * doc/conf/conf.xml: Added a new OutGenerator to export duration curve + computations. + + * src/main/java/de/intevation/flys/exports/AbstractExporter.java: New. + This abstract OutGenerator represents the base class for exporting + computed data. Currently, the CSV export is supported. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: Moved + the most code to export to CSV into the AbstractExporter. + + * src/main/java/de/intevation/flys/exports/DurationCurveExporter.java: + New. This exporter exports the computed data of a duration computation. + +2011-05-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Modified a wrong debug statement which would confuse the user. + +2011-05-03 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added a new output mode for the waterlevel + state (CSV export). + + * doc/conf/conf.xml: Added a new OutGenerator to export waterlevels. + + * src/main/java/de/intevation/flys/exports/WaterlevelExporter.java: New. + This OutGenerator exports the data of a waterlevel computation. Note: + It is necessary to specify the desired facet (e.g. + 'waterlevel_export.csv'). + + * pom.xml: Added a dependency to OpenCSV. + +2011-05-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Introduced an "export" output target. If the target is "export", a + facet (read from the incoming xml document) is a necessary parameter + that determines which facets are written to the output. + +2011-05-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages_en.properties: Bugfix: replaced german + string (copy & paste mistake). + +2011-05-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added new i18n strings for + for the location selection. + +2011-05-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/DurationCurveGenerator.java: + New. An OutGenerator for creating duration curves. + + * src/main/java/de/intevation/flys/artifacts/model/WQDay.java: New. A + model class to store necessary data for creating W and Q facets of a + duration curve. This model stores W, Q and Days. + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesFactory.java: + Added a function to retrieve tuples of (day, q) based on a given gauge - + these tuples are necessary for creating duration curves. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Added + methods to compute and retrieve the data necessary for creating duration + curves. + + * src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java: + Bugfix: improved the access to the location array (avoid + NullPointerException). + + * doc/conf/conf.xml: Registered the new OutGenerator for duration curves. + +2011-05-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/visualize-transitions.xsl: State quoting was done wrong. + +2011-05-02 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Enhanced the transition model to reach the + final state for creating duration curves. + + * src/main/java/de/intevation/flys/artifacts/states/LocationSelect.java: + New. This state should be reached to just insert an array of locations. + + * src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java: + New. This state is reached if the duration curve calculation is + selected. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Adjusted + getDistance() so that it takes care on inserted locations - not just + inserted ranges. + +2011-05-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/cache/CacheFactory.java: + Flush/persist caches at program exists. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Commented out too eloquent debug output. + +2011-05-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Uses the methods of FLYSArtifact to retrieve the necessary information + rivername and selected distance. + +2011-05-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Added interpolateW method to take reference to result ws array + as an argument to avoid expensive array allocations in km iterating + loops. + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: + Added a constructor to create backing trove datastructure + with the right capacity. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Move allocation of result ws out of km loop. + +2011-05-02 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added two further data items in the WQ + selection state. Those items are necessary to store the information + about the selected mode (range/single selection) and the values of the + single selection. + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: If + there is no value for a data item, this item is not written into the + static DESCRIBE part. + + * src/main/java/de/intevation/flys/artifacts/states/RangeState.java, + src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + Renamed the method to validate upper and lower values. + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: This + state can now handle values inserted in the single selection. Therefore, + new validate methods has been added. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: The + methods getWs() and getWs() take care on the values inserted in the + single insert mode of the client which enables the user to insert single + W and Q. + +2011-05-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Repaired getQForW() by calculating indices on right dimension. + +2011-05-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: New + methods for retrieving selected W values (getWs()). + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: The + method for retrieving waterlevel data takes care on selected Ws, now. + The selected Ws are transformed using the DischargeTables.getQForW() + into Q values. + +2011-05-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Removed an unused parameter 'result' of getQForW(). + +2011-05-02 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: Removed + the getDataset() method and replaced it with a addDataset() method. + On this way, concrete subclasses of this OutGenerator can have multiple + datasets (e.g. different datasets for W and Q). This abstract method is + called after the chart generation is finished. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Both classes implement the addDataset() method. The + LongitudinalSectionGenerator has already multiple datasets for W and Q. + Both are added to the chart - both have an own range axis. + +2011-05-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Use the cache for the wst value table if configured. + + * doc/conf/cache.xml: Choose a more precise name for the + wst value table cache. + +2011-04-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * pom.xml: Added dependency to Ehcache. Apache 2.0 license. + + * doc/conf/conf.xml: Added configuration of ehcache. + + * doc/conf/cache.xml: New. Cache configurations. + + * src/main/java/de/intevation/flys/artifacts/cache/CacheFactory.java: + New. Factory to access caches. + +2011-04-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Forgot to add. + + * src/main/java/de/intevation/flys/artifacts/services/meta/Builder.java: + New. Given a database connection and a XML template it generates + an output with meta data about the database. + + * src/main/java/de/intevation/flys/artifacts/services/meta/CompiledStatement.java: + New. Holds prepared statements optimized to be run in the stack of + contextes. + + * src/main/java/de/intevation/flys/artifacts/services/meta/StackFrames.java: + New. Model to hold a hierarchical scope of variables. + + * src/main/java/de/intevation/flys/artifacts/services/meta/ResultData.java: + New. Stores data set fetched from a sql select to be iterated in + a context. + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java, + src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Removed superfluous imports. + +2011-04-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Added meta data service. + + * src/main/java/de/intevation/flys/artifacts/services/MetaDataService.java: + Stub for the meta data service. + + * src/main/resources/metadata/template.xml: Initial template for + the meta data service. + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Bugfix: Now, curves for Q values are drawn into a longitudinal section + chart as well. Therefore, it was necessary to change the datastructure + of the inner class ThemeList that stores all themes included in a chart + in an ordered list (stored in a java.util.Vector now). + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/XYChartGenerator.java: New. An + abstract base class for ChartGenerators that create XY charts. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Sourced the generate() method out to the XYChartGenerator. + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + Implemented the methods to add W and Q facets to the chart. + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Improved + the calculation of the step with for ranges. + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: Added a + method that returns the number of elements stored in the data pool. + +2011-04-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: + Added a get() method which takes destination array as an + argument. + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: Changed the + data structure to store w, q and kms values from List<Double> to + TDoubleArrayList which stores native double values instead of big + Double values. + + * pom.xml: Added the GNU Trove dependency. + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/OutGenerator.java: Added the + name a the requested facet to doOut(). Concrete generators should just + create output for this facet now. + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java, + src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java, + src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + Adapted the method signature of doOut(). + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Adapted the method call of OutGenerator.doOut(). + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: Added mappings for the facets + longitudinal.section.w and longitudinal.section.q. + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Added some + methods to retrieve necessary information for computing the data of a + waterlevel. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Added + methods to compute and retrieve the data of a waterlevel computation. + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WQKms.java: New. This + model class represents a pool of data triples that consist of W, Q and + Kms information. This class might be used to compute data for creating + longitudinal section curves (which are based on those W, Q and Kms + values). + +2011-04-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Bugfix: Removed endless loop and a bug while iterating over Hibernate + results. + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/LongitudinalSectionGenerator.java: + New. An OutGenerator that creates longitudinal section curves. + + NOTE: This is just the stub - the out creation needs to be implemented! + + * doc/conf/conf.xml: Added the LongitudinalSectionGenerator. + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Bugfix: Added missing <output-generators> section. + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WaterlevelState.java: New. + This state should be reached if the 'calc.surface.curve' calculation + method has been chosen. + + * doc/conf/artifacts/winfo.xml: Modified a transition and added the + WaterlevelState. This state is reached if the 'calc.surface.curve' + calculation method has been chosen. It currently has 1 output - a + longitudinal section that is not implemented yet! + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/transitions/ValueCompareTransition.java: + New. This transition is valid if the a data object of the current + artifact equals/notequals a configured value in the transition model. + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Bugfixes: + - Adapted the parameters of the isStateReachable() call - added the + artifact and the current state. + - Append the outputs of a current state if the state is filled with + valid data. + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/transitions/DefaultTransition.java: + Added the missing init() method that has been introduced in the + interface some commits ealier. + + * src/main/java/de/intevation/flys/artifacts/transitions/TransitionFactory.java: + Call init() after a Transition has been created. + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: + Bugfix: Introduced a <art:outputs> node in the attribute document of a + Collection that contains further <art:output> nodes - instead of having + multiple <art:output> nodes at toplevel of the document. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Adapted the XPath to retrieve the outputs in the attribute document of a + Collection. + +2011-04-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * contrib/visualize-transitions.xsl: Added to create a + Graphviz digraph out of the config.xml. Usage: + + $ xsltproc --stringparam base-dir ../doc/conf/ \ + contrib/visualize-transitions.xsl \ + doc/conf/conf.xml > transitions.dot + + $ dot -Tsvg -o transitions.svg transitions.dot + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + If no data has been inserted so far, an IllegalArgumentException is + thrown. + +2011-04-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java:: + A lot of new methods to retrieve the theme of a facet - used while + creating the output of a facet/artifact. If a facet has no theme yet, it + is initialized. + +2011-04-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/AttributeParser.java, + src/main/java/de/intevation/flys/collections/OutputParser.java: Removed + useless imports. + +2011-04-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartGenerator.java: New. An + abstract OutGenerator that might be used to create chart output. Some + basic things that are equal in all charts should be done here! + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + This OutGenerator no longer implements the OutGenerator directly, but it + extends the ChartGenerator now. + +2011-04-27 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Restructured the out() operation of a collection: Now, we collect a list + of artifacts/facets and use this for the OutGenerator. Its doOut() + method gets the attribute of an artifact - the position and the active + state is managed by the Collection itself. + +2011-04-26 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/ManagedFacet.java: New. + a specialized facet that stores information about its position and its + state (active/inactive) in an output of a collection. + + * src/main/java/de/intevation/flys/collections/AttributeParser.java: New. + This parser takes the attributes (XML) of a collection and extracts the + contained outputs with its facets. The result is a Map<String, Output>. + + * src/main/java/de/intevation/flys/collections/OutputParser.java: New. + This parser is used to query the artifact's DESCRIBE and to extract the + supported outputs. The result is a Map<String, Output>. + + * src/main/java/de/intevation/flys/collections/AttributeWriter.java: New. + This writer merges the outputs contained in an attribute of a collection + with the outputs of a collection's artifacts. + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + The attributes of a collection are written into its DESCRIBE document + now. The OutputParser and AttributeParser are used to read the supported + attributes by the collection and its artifacts - the AttributeWriter is + used to merge both attributes and create a final attribute document. + +2011-04-26 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java, + src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + The facet-2-theme mappings are initialized at startup and stored in the + FLYSContext. + + * src/main/java/de/intevation/flys/themes/ThemeFactory.java: Added a + function that retrieves a theme from FLYSContext based on its name. + +2011-04-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Corrected a silly c&p mistake. + +2011-04-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/math/BackJumpCorrector.java: + + Implementation of the "Ruecksprungkorrektur" to be done in + "W fuer angepassten Abflusslaengschnitt". + + All tests show the expected results. In some corner cases the + algorithm described in the "Anwenderhandbuch" chapter 3.3.4.3 "Korrektur" + has some definition shortcomings: + + a - What should happend when you cannot find point 2 because + you cannot step back one quarter from point 3 because there + is no data there any more (river too short in this direction)? + The implemented algorithm raises point 3' only to an + according factor. E.g. If you can step back the whole quarter + distance the elevation is the full quarter. If you can + step back only the half of the quarter the elevation is + only an eighth. + + b - If the water heights between point 2 and 3 are constant then + the algorithm will produce a spline interpolation that + lowers those values. Is this intended? + + For real data the back jumps are expected to be more in the middle + of the distance ranges so the corner cases are maybe not so + important. + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java: + Removed superfluous import. + +2011-04-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/themes/ThemeFactory.java: Removed debug + code that has been commited by accident. + +2011-04-21 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/themes.xml: New. A first small theme configuration. + + * doc/conf/conf.xml: Added a link to the theme configuration. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java: + Defined a key that is used to store a themes map in the FLYSContext. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + The theme configuration is read at startup and the themes are stores in + the FLYSContext. + +2011-04-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/themes/Theme.java, + src/main/java/de/intevation/flys/themes/DefaultTheme.java: + New. The interface and its default implementation that represents themes + used to style charts and maps. + + * src/main/java/de/intevation/flys/themes/ThemeField.java, + src/main/java/de/intevation/flys/themes/DefaultThemeField.java: + New. The interface and its default implementation that represents fields + in themes. A theme might be "Lines" and one of its field might be + "Color" or "Size". + + * src/main/java/de/intevation/flys/themes/ThemeFactory.java: A factory + that creates new themes based on a theme configuration. + +2011-04-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Implementation of "Abflusskurve/Abflusstafel" calculation. + + Added method interpolateWQ() which takes an km and results in a + tuple of two double arrays containing the w/q values interpolated + between the surrounding w/q values of the table. + w values are interpolated linear, q values with a cubic spline. + + Drawing w over q gives you the discharge table at the given km. + + !!! This code needs testing !!! + +2011-04-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * pom.xml: Added dependency to Apache Commons Math 2.2 (Apache License 2.0) + +2011-04-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Fix problem when sorting by q (copied w instead of q). + +2011-04-20 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Fixed broken HQL statement. + +2011-04-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + add a method interpolateW() which takes an array of + q values and returns an equal sized array of w values. + This is essentially the "Wasserstand/Wasserspiegellagen" calculation + of desktop FLYS. + + If you want to do a calculation with given w values you have + to convert the w values with DischargeTables.getQForW() first. + + !!! This code needs heavy testing !!! + +2011-04-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + We need a getQForW() method and not getWForQ() because when + doing a "Wasserstand/Wasserspiegellagen" calculation with given + w values these values need to be translated to q values with + the master discharge table. + +2011-04-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Sorting of q values was done wrong. + +2011-04-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java: + Ordered the list of annotations returned by this factory based on its + range. + +2011-04-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/MainValuesService.java: + New. This service returns an XML document that includes the main values + of a gauge based on a river name, a start and an end point. + + * doc/conf/conf.xml: Registered the MainValuesService. + +2011-04-19 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/MainValuesFactory.java: + A factory that provides methods to return MainValues. + +2011-04-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Added static method getWForQ() to interpolate a w value for + a given q value based on a given discharge table. + +2011-04-19 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Added convenience constructors/methods to ease the access to the master + discharge table of a gauge. + +2011-04-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Moved the query complexity into view 'wst_value_table' and + used this instead. + +2011-04-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Fetches w/q value tables from the backend. TODO: Move this + to the backend and use a view. + +2011-04-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Changed + the error key that is thrown if no input data was found so that the key + is usable for GWT's i18n mechanism. + +2011-04-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java: + The inserted river is validated now (overrides validate() of + DefaultState). + +2011-04-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + The inserted calculation method is validated now (overrides validate() + of DefaultState). + +2011-04-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + The input data of feed() are validated using the DefaultStates + validate() method. + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + New method validate() that needs to be overidden by concrete subclasses. + It should return true, if the data of the State is fine, otherwise it + should raise an exception. + + NOTE: The exceptions are not translated in the server but in the client! + + * src/main/java/de/intevation/flys/artifacts/states/RangeState.java: New. + This abstract class exists to provide some methods for handling ranges. + Currently, there is a method that validates a given range based on + min/max values. + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Implemented input data validation for ranges. + + NOTE: The input validation of concrete values has not been implemented + yet! + +2011-04-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Removed debug code that has been commited by accident :-/ + +2011-04-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: The + getGauge() method returns the first gauge based on the given start and + end point of the river. + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + Fixed potential bugs: if no gauge could be determined, the default + values for W and Q are the minimum and maximum double values. + +2011-04-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: Fills + the DESCRIBE with default values for W and Q. + +2011-04-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/WstFactory.java: + New. Returns Wst object - based on a river. + +2011-04-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Now + provides some methods that return some basic objects inserted while + parameterization: River, Gauge and so on. + +2011-04-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java, + src/main/java/de/intevation/flys/artifacts/services/RiverService.java: + Bugfix: Repaired broken imports of the SessionHolder. + +2011-04-15 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/SessionHolder.java: + Moved this class to flys-backend. + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java, + src/main/java/de/intevation/flys/artifacts/model/GaugesFactory.java, + src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java, + src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java, + src/main/java/de/intevation/flys/artifacts/context/SessionCallContextListener.java: + Adapted imports of the SessionHolder. + +2011-04-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * trunk/src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java, + trunk/src/main/java/de/intevation/flys/artifacts/services/RiverService.java: + Acquire/release sessions in services to avoid db connection leaks. + +2011-04-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Changed some method signatures - added a reference to the owner + Artifact. + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java, + src/main/java/de/intevation/flys/artifacts/states/WQSelect.java, + src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Modified method signatures based on the changes in DefaultState. + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + Added default values to the dynamic part of DESCRIBE. + +2011-04-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java: + Added a function that returns a River object based on a given river + name. + +2011-04-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java, + src/main/java/de/intevation/flys/artifacts/model/GaugesFactory.java, + src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java, + src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java: + Static methods are using the SessionHolder, too. + +2011-04-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/SessionCallContextListener.java: + Added the setup() method that has been added to the interface + description in the last commits. + + * doc/conf/conf.xml: Registered the SessionCallContextListener as + CallContext.Listener. + +2011-04-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/SessionHolder.java: + Bugfix: Call correct method to retrieve an instance of + SessionFactoryProvider. + +2011-04-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/SessionHolder.java: + New. Contains thread local session holder for hibernate sessions. + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java: + Uses session from SessionHolder. + + * src/main/java/de/intevation/flys/artifacts/context/SessionCallContextListener.java: + Interacts with SessionHolder now. + + * src/main/java/de/intevation/flys/exports/ChartExportHelper.java: + Removed superfluous import. + +2011-04-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/SessionCallContextListener.java: + Implementation of a CallContext.Listener to open/close Hibernate + Sessions for each request. + +2011-04-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Some modifications related to the last commit - modification of the + describe() signature of a State. + +2011-04-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/GaugeSelect.java: + Removed. We do not need a state to select a gauge - the selection takes + place by choosing a start and an end point. + +2011-04-13 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java: + Bugfix: added missing label node to root node and a namespace to the + data node. + +2011-04-12 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + The name of the artifact 'winfo' is written into the DESCRIBE document + now. We need this to have a proper way to distinguish between different + artifacts in the UI. + +2011-04-12 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Bugfix: + States are filled with data before they describe themself. + +2011-04-11 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java: + New. A factory that returns the annotations of a specific river. + + * src/main/java/de/intevation/flys/artifacts/services/DistanceInfoService.java: + New. This service provides a document that contains information about + distances of a river. + + * doc/conf/conf.xml: Registered the DistanceInfoService. + +2011-04-06 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + This collection overrides the out() operation now. The incoming request + document is read and the related OutGenerator is used to create the + output. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Removed + the code to create discharge curves. It has moved to the + DischargeCurveGenerator which now does this work. + +2011-04-06 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/OutGenerator.java: The + generate() method throws an IOException now. + + * src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java: + New. This OutGenerator creates discharge curves. + +2011-04-06 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: Changed + the visibility of the getData() method. It's now public, because the + OutGenerator needs an artifact's data. + +2011-04-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/**/*.java: Removed trailing whitespace. + +2011-04-03 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Make project compilable again by + commenting out a not existing XMLDebug reference. + +2011-03-31 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Added code to parse the configured OutGenerators and to save them (in a + map) in the FLYSContext. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java: + Added a key that is used to save the OutGenerators Map in the context. + +2011-03-31 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/OutGenerator.java: + New. This interface is used to generator different types of output. + ArtifactCollections will make use of this interface to create a + collected output of all its artifacts. + +2011-03-30 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Removed the Backend from FLYSArtifactCollection - used ArtifactDatabase + operations instead. + + * TODO: Removed 'remove Backend reference' TODO. + +2011-03-30 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Enhanced the configuration of the + discharge curve output mode. This output now provides three facets - W, + Q and the curve itself. + +2011-03-30 Ingo Weinzierl <ingo@intevation.de> + + Tagged RELEASE 0.1 + +2011-03-30 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Renamed an output mode in the WINFO + artifact configuration. + +2011-03-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages_de_DE.properties, + src/main/resources/messages_de.properties: Changed a german string. + +2011-03-29 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Modified the available calculation modes and its order in the DESCRIBE + document. + + * src/main/resources/messages.properties, + src/main/resources/messages_de_DE.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Adapted the names of + calculation modes. + +2011-03-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Added the hash code of an artifact to the artifact part of the + collection's DESCRIBE document. + +2011-03-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Changed + the background color of discharge curves to white. + +2011-03-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Cache the scale, too. Otherwise two calls to getValues() with + different arguments will result in the same output. + +2011-03-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Introduced a 'scale' parameter in the getValues() method. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Filled + the out() operation with code that draws a discharge table of one or + more gauges specified by the given range in entered in a previous state. + +2011-03-28 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/exports/ChartExportHelper.java: + New. A helper class to exports charts. + + * pom.xml: Added dependencies to iText, Batik and JFreeChart. + +2011-03-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/importer/PegelGltParser.java: + Fixed swap of operands. + +2011-03-28 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/GaugesFactory.java: + New. Load gauges for a river and filter them for given + ranges. + +2011-03-25 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + Store data in a double [][] instead of interleaved double [] + to be compatible with org.jfree.data.xy.DefaultXYDataset. + +2011-03-25 Ingo Weinzierl <ingo@intevation.de> + + * TODO: Removed 'i18n' and 'step-back' TODOs and added an issue to remove + the Backend reference from FLYSArtifactCollection. + +2011-03-25 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + Added missing artifact namespace of an attribute in the DESCRIBE + document. + +2011-03-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java: + New. This ArtifactCollection overrides the DefaultArtifactCollection to + implement FLYS specific describe() and out() operations. + + * doc/conf/conf.xml: Use the FLYSArtifactCollection instead of the + DefaultArtifactCollection for this application. + +2011-03-24 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java: + New. Fetches values of discharge tables in form of packed + w/q double arrays for given gauges. + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java: + Removed needless import. + +2011-03-24 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages_de_DE.properties: Added a german resource + bundle to avoid exceptions in the flys artifacts. Sometimes, the + Resources class is not able to find a 'de_DE' bundle and throws an + exception. This is really strange, because it should use the 'de' bundle + in that case, but it doesn't. + +2011-03-23 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Added + some code to append the output modes of previous states to the DESCRIBE + document. + + TODO: Determine if the current state is already filled with data and + append its output modes as well! + +2011-03-22 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Enhanced the location_distance state with + an output mode 'discharge_table'. + +2011-03-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Write human readable strings as label attribute into the DESCRIBE + output. Those labels are used to be displayed in the GUI. + +2011-03-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + Added some further calculation types. + + * src/main/resources/messages.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for the + calculation types + +2011-03-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Implemented the step-back part of the advance() operation. + +2011-03-21 Ingo Weinzierl <ingo@intevation.de> + + * src/main/resources/messages_de.properties: Fixed a german umlaut. + +2011-03-18 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Added new states for entering a + location/distance and w/q. + + * src/main/resources/messages.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: New string for the + location/distance and w/q input states. + +2011-03-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/WQSelect.java: + New. A state for the W/Q input of the WINFO parameterization. + +2011-03-18 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Append an attribute 'uiprovider' to the dynamic UI node. + + * src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java: + New. A state for the location/distance selection of the WINFO + parameterization. + +2011-03-17 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Added a new method getUIProvider() that might be overriden by concreted + subclasses that should be rendered with a specific UIProvider. + +2011-03-17 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + The static UI part is created by the previous states now. This makes it + possible to group the data objects (which is necessary to group the + objects in the ui). + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Added a describeStatic() method that creates a node that contains the + data of that state. + +2011-03-17 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/RiverService.java: + Removed TODO: the document contains the rivers provided by the backend + now. + +2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * pom.xml: Added dependency to flys backend. + + * src/main/java/de/intevation/flys/artifacts/model/River.java: + Removed. We are using the backend model now. + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java: + Fetches the rivers from the backend. + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java: + Import fixes. + +2011-03-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * doc/conf/conf.xml: Added section for database backend configuration. + +2011-03-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + Fixed build error coming from different import of XMLUtils. + +2011-03-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + Appended the missing label node that contains the human readable name of + the data item. + +2011-03-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java, + src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + I18N of strings for the DESCRIBE document. + + * src/main/resources/messages.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: I18N strings for the + calculcation mode state. + +2011-03-14 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Modified the winfo states. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Adapted + the artifact regarding the changes of the last commit. The states + describe() method creates the dynamic UI node - the artifact needs to + apply this node. + + * src/main/java/de/intevation/flys/artifacts/states/CalculationSelect.java: + New. The state for choosing the calculation mode. + + * src/main/resources/messages.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Added i18n strings for the + calculation mode state. + +2011-03-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/DefaultState.java: + New. This is the base state for the FLYS application. It provides a + method that creates the dynamic ui node for the DESCRIBE. + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java, + src/main/java/de/intevation/flys/artifacts/states/GaugeSelect.java: Both + classes extend the abstract base class DefaultState. + +2011-03-14 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/resources/Resources.java: + New. This class retrieves the i18n strings from a ResourceBundle. + + * src/main/resources/messages.properties, + src/main/resources/messages_en.properties, + src/main/resources/messages_de.properties: Resource files for german and + english translation. + +2011-03-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Appended + the data that have been inserted in former states into the static node + of the DESCRIBE. + +2011-03-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: The + operations feed() and advance() return the description of the artifact + using the describe() operation. This avoids additional server round trips + in the client - the clients gets to know about the new state of the + artifact immediately. + +2011-03-10 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Implemented a part (step forward) of the advance operation. + + * TODO: Implement Step-Back in advance operation. + +2011-03-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: + Implemented the abstract method getName(). It returns the constant + 'winfo' string. + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: + Implemented the feed action. The data of an incoming feed() operation is + stored in StateData objects that are saved in a map in the artifact. + + NOTE: There is no input validation and no i18n of error messages (see + TODO). + +2011-03-09 Ingo Weinzierl <ingo@intevation.de> + + * TODO: This file contains some open points that need to be done. + +2011-03-09 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/FLYSArtifact.java: New. This + artifact serves as the default artifact for the FLYS application. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: This + artifact now inherits from FLYSArtifact. Furthermore, there is one big + change: we don't store the State objects itself in the artifact, but + just the identifier of those. This makes the artifact smaller and more + compatible agains previous versions of the software. + +2011-03-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/services/RiverService.java: + New. This service will retrieve a list of provided rivers. + + * doc/conf/conf.xml: Added a configuration for the RiverService. + +2011-03-07 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: Added a section user-factory and collection-factory in + the factories part of the configuration. + +2011-03-01 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java: + Replaced the 'special' attribute from DESCRIBE with a 'uiprovider' + attribute. + +2011-02-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: The + RiverSelect state is called to create the UI part of the describe + document. + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java: + Implemented the dynamic UI part of describe(). The static part is not + inserted into the describe document at the moment. We need a reference to + the previous states for this. + +2011-02-08 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/model/RiverFactory.java, + src/main/java/de/intevation/flys/artifacts/model/River.java: New. A model + class that represents a river and its factory to create concrete river + instances. + NOTE: Currently, this is just a mockup. The factory just returns two + static rivers "Mosel" and "Saar" without a connection to a backend. + +2011-02-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/StateFactory.java: The + input data of a state is initialized with empty StateData objects after + the State has been created. + + * doc/conf/artifacts/winfo.xml: Renamed the input data nodes of the states + which now fits better to the class name of the implementation. + +2011-02-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: The + describe document returned by this artifact now contains the current state + and the reachable states. + +2011-02-07 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + The transitions are put into the TransitionEngine with the ID of the state + - not longer with the artifact name. On this way, we are able to fetch + just the transitions for a specific state, instead of all the transitions + of an artifact. + +2011-02-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Describe() + returns the artifact's uuid and hash value. The whole implementation of + describe() is still outstanding. + +2011-02-04 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/artifacts/winfo.xml: Removed useless config stuff. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: Removed + useless methods, and improved the init process - the first state is set as + the current state for this artifact. + + * src/main/java/de/intevation/flys/artifacts/states/RiverSelect.java, + src/main/java/de/intevation/flys/artifacts/states/GaugeSelect.java: New. + The states are used in the first two steps of the WINFOArtifact. + Currently, they just implement stubs of the necessary methods setup() and + describe(). + +2011-02-04 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/State.java, + src/main/java/de/intevation/flys/artifacts/transitions/TransitionEngine.java, + src/main/java/de/intevation/flys/artifacts/transitions/Transition.java: + Removed. These classes are placed in the artifact-database now. + + * src/main/java/de/intevation/flys/artifacts/transitions/DefaultTransition.java, + src/main/java/de/intevation/flys/artifacts/transitions/TransitionFactory.java: + Adapted imports of Transition. + + * src/main/java/de/intevation/flys/artifacts/states/StateFactory.java: New. + This factory should be used to create concrete State objects. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java: Added + a constant key to store the StateEngine in the context. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + New method that initializes the states at application start. + +2011-02-03 Ingo Weinzierl <ingo@intevation.de> + + * src/main/java/de/intevation/flys/artifacts/states/State.java: New. The + interface description of a state. + + * src/main/java/de/intevation/flys/artifacts/transitions/Transition.java, + src/main/java/de/intevation/flys/artifacts/transitions/DefaultTransition.java: + New. The interface description and a default implementation of a + transition. + + * src/main/java/de/intevation/flys/artifacts/transitions/TransitionEngine.java: + New. The TransitionEngine stores all transitions for each artifact and + should be used to determine, if an artifact can advance from one state to + another. + + * src/main/java/de/intevation/flys/artifacts/transitions/TransitionFactory.java: + New. Transitions should be created by using this class. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContext.java: New. + The Flys context. It currently defines keys to store important components + in the context. + + * src/main/java/de/intevation/flys/artifacts/context/FLYSContextFactory.java: + New. The context factory initializes the basic components of the + application. Currently, the TransitionEngine is created and all artifacts + with its transitions are read from the global configuration and stored in + the FLYSContext. + + * pom.xml: Added a dependency to the 'artifacts-common' package. + + * doc/conf/artifacts/winfo.xml: Corrected the classname of the + DefaultTransition. + + * doc/conf/conf.xml: Added FLYSContextFactory as context-factory. + +2011-02-02 Ingo Weinzierl <ingo@intevation.de> + + * doc/conf/conf.xml: An initial configuration file for the FLYS artifact + server. + + * doc/conf/artifacts/winfo.xml: An initial transition configuration of an + WINFO artifact. + + * src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java: A stub of + an artifact for a WINFO parameterization. + + * pom.xml: Set the source code version to 1.5. + +2011-02-01 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/**, pom.xml: Added initial maven project. + * ChangeLog: new.