ingo@847: 2010-04-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@847: 
ingo@847: 	  Issue231
ingo@847: 
ingo@847: 	* doc/conf/products/timeseries/conf_mesh.xml,
ingo@847: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@847: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@847: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@847: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@847: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@847: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Switched
ingo@847: 	  histogram parameter type 'binwidth' from integer to double.
ingo@847: 
ingo@846: 2010-04-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@846: 
ingo@846: 	  Issue229
ingo@846: 	  JFreeChart needs at least a lower and a different upper bounds to
ingo@846: 	  calculate the range of the domain axis automatically.
ingo@846: 
ingo@846: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java: Override
ingo@846: 	  method that adjusts the range of domain and range axes.
ingo@846: 
ingo@846: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java:
ingo@846: 	  Override method that adjusts the range of domain and range axes. If there
ingo@846: 	  are more changes to be done in the future, caused by inheritance from
ingo@846: 	  VerticalProfileChart, we should stop that and derive this class from
ingo@846: 	  AbstractXYLineChart!
ingo@846: 
tim@845: 2010-04-20  Tim Englich  <tim.englich@intevation.de>
tim@845: 
tim@845: 	* src/main/java/de/intevation/gnv/artifacts/cache/CacheFactory.java (initializeCache): 
tim@845: 	  Initialize the CacheCline after the initialization of the ThematicDataCache.
tim@845: 
tim@845: 	* src/main/java/de/intevation/gnv/state/StateBase.java (setHash): 
tim@845: 	  Integrate an '#' as separator in the Hashvalue of an State to separate the
tim@845: 	  StateId unambiguously. This is required because a StateId can be a 
tim@845: 	  Substring of an other StateId.
tim@845: 
tim@845: 	* src/main/java/de/intevation/gnv/state/cache/QueryObject.java: 
tim@845: 	  Bean for representing all database-Queries which are used for fetching
tim@845: 	  Data which is stoted in the ThematicDataCache.
tim@845: 
tim@845: 	* src/main/java/de/intevation/gnv/state/cache/ThematicDataCacheCleaner.java: 
tim@845: 	  Specific CacheCleaner for cleaning the ThematicData-Cache. It extend the 
tim@845: 	  CacheCleaner of the geo-backand and has the same configuration 
tim@845: 	  possibilities.
tim@845: 
tim@844: 2010-04-20  Tim Englich  <tim.englich@intevation.de>
tim@844: 
tim@844: 	* doc/conf/queries.properties: 
tim@844: 	  Added Query for the CacheCleaner that it use to determin which Tables has 
tim@844: 	  been updated.
tim@844: 
ingo@843: 2010-04-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@843: 
ingo@843: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@843: 	  Removed a TODO from code -> TODO already implemented.
ingo@843: 
ingo@842: 2010-04-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@842: 
ingo@842: 	  Issue163: Workaround improved.
ingo@842: 
ingo@842: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
ingo@842: 	  Removed the bottom and left space between data area and plot border and
ingo@842: 	  set a padding of 10px between each border of the whole area (containing
ingo@842: 	  plot area, legend, chart title, etc).
ingo@842: 
ingo@841: 2010-04-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@841: 
ingo@841: 	  Issue163: Workaround implemented.
ingo@841: 
ingo@841: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
ingo@841: 	  Added a gap between data area and the plot border to avoid an amount of 
ingo@841: 	  cut axes labels (small labels aren't cut anymore, large labels will still
ingo@841: 	  be cut).
ingo@841: 
ingo@841: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java: Added some
ingo@841: 	  necessary methods to set the first domain and range axis.
ingo@841: 
ingo@840: 2010-04-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@840: 
ingo@840: 	  Issue235
ingo@840: 
ingo@840: 	* doc/conf/maptemplates/mapfile.vm: Added a metadata section into the 
ingo@840: 	  mapfile template.
ingo@840: 
ingo@840: 	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Read the URL
ingo@840: 	  of the MapServer from configuration and feed the template with this
ingo@840: 	  information. The URL is used in the metadata section for filling the 'wms
ingo@840: 	  onlineresource' field.
ingo@840: 
ingo@839: 2010-04-19	Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@839: 
ingo@839: 	  Issue152
ingo@839: 
ingo@839: 	* src/main/java/de/intevation/gnv/state/StateBase.java:
ingo@839: 	  Added a date formatter for parsing dates from internal data objects.
ingo@839: 
ingo@839: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@839: 	  Added the time interval of timeseries charts into the subtitle of this
ingo@839: 	  charts.
ingo@839: 
ingo@838: 2010-04-19	Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@838: 
ingo@838: 	  Issue226
ingo@838: 
ingo@838: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@838: 	  Iterate through former states when searching for an input collections -
ingo@838: 	  searching in the current state is not enough because it stores the current
ingo@838: 	  input values only.
ingo@838: 
ingo@837: 2010-04-19	Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@837: 
ingo@837: 	  Issue217
ingo@837: 
ingo@837: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml: Added odv as
ingo@837: 	  possible export format.
ingo@837: 
ingo@837: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
ingo@837: 	  Collect the necessary data for an odv export and trigger
ingo@837: 	  VerticalCrossODVExport that writes this data as odv to an output stream.
ingo@837: 
ingo@837: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java: Store
ingo@837: 	  coordinates for each colum in a class variable.
ingo@837: 
ingo@837: 	* src/main/java/de/intevation/gnv/exports/VerticalCrossODVExport.java:
ingo@837: 	  Write data used in 'Profilschnitten' to an odv file.
ingo@837: 
ingo@837: 	  TODO: The implementation is not finished yet. There are no cruises and
ingo@837: 	  stations for 'Profilschnitte', so we need to clarify if this columns can
ingo@837: 	  be skipped.
ingo@837: 
sascha@836: 2010-04-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@836: 
sascha@836: 	* src/main/java/de/intevation/gnv/**/*.java:
sascha@836: 	  Using unix line endings only.
sascha@836: 
sascha@835: 2010-04-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@835: 
sascha@835: 	 * src/main/java/de/intevation/gnv/**/*.java:
sascha@835: 	   Removed trailing whitespace.
sascha@835: 
tim@834: 2010-04-16  Tim Englich  <tim.englich@intevation.de>
tim@834: 
tim@834: 	  ISSUE232
tim@834: 
tim@834: 	* doc/conf/meshwidth.xml: 
tim@834: 	  Added missing Meshes to the Configuration and added more detailed 
tim@834: 	  descriptions to the entries so they can be refred  easier to the Meshes in 
tim@834: 	  the System.
tim@834: 	
tim@833: 2010-04-16  Tim Englich  <tim.englich@intevation.de>
tim@833: 
tim@833: 	  ISSUE200
tim@833: 
tim@833: 	* doc/conf/queries.properties: 
tim@833: 	  Modified Query for selecting available Layer for product Layer.
tim@833: 	  The table has an Column named Items which contains the Number of Items
tim@833: 	  that are in the Layer. Only Layer which are not empty should be
tim@833: 	  displayed.
tim@833: 
ingo@831: 2010-04-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@831: 
ingo@831: 	  Issue175
ingo@831: 
ingo@831: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
ingo@831: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java: Read
ingo@831: 	  percentage that defines the gap size in charts from system property
ingo@831: 	  "chart.gap.percentage". The default value is 5 (percent) if this property 
ingo@831: 	  is not existing.
ingo@831: 
tim@829: 2010-04-13  Tim Englich  <tim.englich@intevation.de>
tim@829: 
tim@832: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java (createODV),
tim@832: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java (createODV):
tim@832: 	  Extract ODV-Generation into its own method that it is possible to override
tim@832: 	  it in subclasses.
tim@832: 
tim@832: 2010-04-13  Tim Englich  <tim.englich@intevation.de>
tim@832: 
tim@829: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java (getWMS): 
tim@829: 	  Bugfix: Put some Code that is responsible for Synchonization into the 
tim@829: 	  final-block to prevent that the lock is not released.
tim@829: 
tim@829: 2010-04-13  Tim Englich  <tim.englich@intevation.de>
tim@829: 
tim@829: 	* doc/conf/products/layer/conf.xml, 
tim@829: 	  src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java : 
tim@829: 	  Integrated the possibility to change the Title of an Layer in Product Layer.
tim@829: 
tim@827: 2010-04-13  Tim Englich  <tim.englich@intevation.de>
tim@827: 
tim@827: 	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java: 
tim@827: 	  Removed obsolet SuppressWarnings-Annotations.
tim@827: 
tim@826: 2010-04-13  Tim Englich  <tim.englich@intevation.de>
tim@826: 
tim@826: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultFIS.java,
tim@826: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultLayer.java,
tim@826: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultMapService.java,
tim@826: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultParameter.java,
tim@826: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/FIS.java,
tim@826: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/Layer.java,
tim@826: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/MapService.java,
tim@826: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/Parameter.java,
tim@826: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/package.html: 
tim@826: 	  Added more Javadoc.
tim@826: 
tim@825: 2010-04-13  Tim Englich  <tim.englich@intevation.de>
tim@825: 
tim@825: 	* src/main/java/de/intevation/gnv/transition/package.html,
tim@825: 	  src/main/java/de/intevation/gnv/transition/ValueCompareTransition.java,
tim@825: 	  src/main/java/de/intevation/gnv/transition/TransitionFactory.java,
tim@825: 	  src/main/java/de/intevation/gnv/transition/PresettingsValueCompareTransition.java: 
tim@825: 	  Added more Javadoc.
tim@825: 
tim@825: 2010-04-13  Tim Englich  <tim.englich@intevation.de>
tim@825: 
tim@825: 	* src/main/java/de/intevation/gnv/transition/package.html: 
tim@825: 	  Added more Javadoc.
tim@825: 	
tim@823: 2010-04-13  Tim Englich  <tim.englich@intevation.de>
tim@823: 
tim@823: 	* src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java,
tim@823: 	  src/main/java/de/intevation/gnv/state/MinMaxDateState.java,
tim@823: 	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
tim@823: 	  src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java,
tim@823: 	  src/main/java/de/intevation/gnv/state/OutputStateBase.java,
tim@823: 	  src/main/java/de/intevation/gnv/state/StateBase.java,
tim@823: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
tim@823: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java,
tim@823: 	  src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java : 
tim@823: 	  Removed obsolet SuppressWarnings-Annotations.
tim@823: 
tim@821: 2010-04-12  Tim Englich  <tim.englich@intevation.de>
tim@821: 
tim@821: 	* src/main/java/de/intevation/gnv/state/layer/package.html: 
tim@821: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java :
tim@821: 	  Added more Javadoc.
tim@821: 	  Removed obsolet TODO-Flags.
tim@821: 
tim@820: 2010-04-12  Tim Englich  <tim.englich@intevation.de>
tim@820: 
tim@820: 	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java: 
tim@820: 	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataServiceException.java (MetaDataServiceException): 
tim@820: 	* src/main/java/de/intevation/gnv/artifacts/services/package.html:
tim@820: 	  Added more Javadoc.
tim@820: 
tim@818: 2010-04-12  Tim Englich  <tim.englich@intevation.de>
tim@818: 
tim@819: 	* src/main/java/de/intevation/gnv/layer/package.html,
tim@819: 	  src/main/java/de/intevation/gnv/layer/LayerArtifact.java: 
tim@819: 	  Added more Javadoc.
tim@819: 
tim@819: 2010-04-12  Tim Englich  <tim.englich@intevation.de>
tim@819: 	
tim@818: 	* src/main/java/de/intevation/gnv/state/OutputStateBase.java (putInputData): 
tim@818: 	  BUGFIX: Chartresults where stored in Cache using null-Value as Key.
tim@818: 	  This happend because the setHash-method was not called in Method 
tim@818: 	  putInputData of this Class.
tim@818: 	  This causes that the Data was fetched every time from the Database when 
tim@818: 	  out was called and twice during the intialisationprocess of the State.
tim@818: 
ingo@817: 2010-04-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@817: 
ingo@817: 	* src/main/java/de/intevation/gnv/artifacts/fis/product/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/artifacts/fis/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/artifacts/cache/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/artifacts/context/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/artifacts/ressource/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/artifacts/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/state/exception/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/state/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/state/profile/vertical/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/state/timeseries/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/state/describedata/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/statistics/exception/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/statistics/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/histogram/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/profile/horizontalcrosssection/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/profile/horizontal/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/profile/vertical/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/utils/exception/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/utils/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/chart/exception/package.html
ingo@817: 	  src/main/java/de/intevation/gnv/chart/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/exports/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/wms/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/timeseries/gap/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/timeseries/package.html,
ingo@817: 	  src/main/java/de/intevation/gnv/jfreechart/package.html: Added package
ingo@817: 	  descriptions for the different packages.
ingo@817: 
ingo@817: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactFactory.java,
ingo@817: 	  src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java,
ingo@817: 	  src/main/java/de/intevation/gnv/chart/ChartLabels.java: Added missing
ingo@817: 	  class descriptions.
ingo@817: 
tim@816: 2010-04-12  Tim Englich  <tim.englich@intevation.de>
tim@816: 
tim@816: 	  ISSUE 215 msg1189
tim@816: 
tim@816: 	* src/main/java/de/intevation/gnv/exports/ODVExport.java (writeData): 
tim@816: 	  Switched Values between columns yyyy-mm-dd hh:mm and time_ISO8601 and 
tim@816: 	  manipulate the Values that they are in the correct Format.
tim@816: 	  This is nessessary because of the definitions of Timeseries in ODV-Exports.
tim@816: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java (getStartTime): 
tim@816: 	  Modified Format of the TimeStamp of the Starttime of TimeSeries in that 
tim@816: 	  case that it does not contains the values for the seconds.
tim@816: 
ingo@815: 2010-04-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@815: 
ingo@815: 	* src/main/java/de/intevation/gnv/state/DefaultAutoResumeState.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/DefaultInputValue.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/SingleInputState.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/StateFactory.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/StateBase.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/MeasurementState.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/InputData.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/DefaultExportMode.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/OutputStateBase.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/DefaultInputData.java,
ingo@815: 	  src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/GNVProductArtifactFactory.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultLayer.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultMapService.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultParameter.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
ingo@815: 	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
ingo@815: 	  src/main/java/de/intevation/gnv/math/AreaInterpolation.java,
ingo@815: 	  src/main/java/de/intevation/gnv/math/GridCell.java,
ingo@815: 	  src/main/java/de/intevation/gnv/transition/Transition.java,
ingo@815: 	  src/main/java/de/intevation/gnv/utils/ExclusiveExec.java,
ingo@815: 	  src/main/java/de/intevation/gnv/chart/DefaultHistogram.java,
ingo@815: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@815: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java,
ingo@815: 	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java,
ingo@815: 	  src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java,
ingo@815: 	  src/main/java/de/intevation/gnv/exports/ChartExportHelper.java,
ingo@815: 	  src/main/java/de/intevation/gnv/exports/DefaultExport.java,
ingo@815: 	  src/main/java/de/intevation/gnv/exports/ODVExport.java,
ingo@815: 	  src/main/java/de/intevation/gnv/jfreechart/LevelOrderIndices.java,
ingo@815: 	  src/main/java/de/intevation/gnv/jfreechart/PolygonSeries.java,
ingo@815: 	  src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java,
ingo@815: 	  src/main/java/de/intevation/gnv/jfreechart/CompactXYItems.java,
ingo@815: 	  src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java: Removed
ingo@815: 	  JavaDoc compiler warnings caused by broken references and fields without
ingo@815: 	  content.
ingo@815: 
ingo@814: 2010-04-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@814: 
ingo@814: 	* src/main/java/de/intevation/gnv/statistics/StatisticSet.java,
ingo@814: 	  src/main/java/de/intevation/gnv/statistics/VerticalCrossSectionStatistics.java,
ingo@814: 	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java,
ingo@814: 	  src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java,
ingo@814: 	  src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java,
ingo@814: 	  src/main/java/de/intevation/gnv/statistics/Statistic.java,
ingo@814: 	  src/main/java/de/intevation/gnv/statistics/Statistics.java,
ingo@814: 	  src/main/java/de/intevation/gnv/statistics/AbstractStatistics.java: Added
ingo@814: 	  more Javadoc.
ingo@814: 
ingo@813: 2010-04-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@813: 
ingo@813: 	* src/main/java/de/intevation/gnv/state/exception/StateException.java,
ingo@813: 	  src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java,
ingo@813: 	  src/main/java/de/intevation/gnv/transition/DefaultTransition.java,
ingo@813: 	  src/main/java/de/intevation/gnv/transition/TransitionFactory.java,
ingo@813: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java,
ingo@813: 	  src/main/java/de/intevation/gnv/transition/PresettingsValueCompareTransition.java,
ingo@813: 	  src/main/java/de/intevation/gnv/transition/Transition.java,
ingo@813: 	  src/main/java/de/intevation/gnv/transition/ValueCompareTransition.java:
ingo@813: 	  Added Javadoc.
ingo@813: 
tim@812: 2010-04-09  Tim Englich  <tim.englich@intevation.de>
tim@812: 
tim@812: 	  ISSUE 215 msg1170
tim@812: 
tim@812: 	* src/main/java/de/intevation/gnv/exports/ODVExport.java : 
tim@812: 	  Modified ODV-Export that it is possible to integrate an Timestamp which
tim@812: 	  identifies a TimeSeries.
tim@812: 	  The additional Column will only be integrated if the given Timestamp has 
tim@812: 	  an value and is not null.
tim@812: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java (getStartTime): 
tim@812: 	  Integrated Method for lookup the Starttimevalue of an TimeSeries to use it
tim@812: 	  in ODV-Exports. If no Startdate is stored (e.g. if this Methos is called
tim@812: 	  by an verticalProfileOutputstate) null will be returned an put into the 
tim@812: 	  ODV-Export.
tim@812: 	* doc/conf/products/timeseries/conf_mesh.xml: 
tim@812: 	  Added valuename for the Timeinterval to fetch the Starttime of an TimeSeries 
tim@812: 	  from the inputData to integrate it into the ODV-Export.
tim@812: 
ingo@811: 2010-04-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@811: 
ingo@811: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
ingo@811: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
ingo@811: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/NorthSouthEastWestState.java:
ingo@811: 	  Added more Javadoc.
ingo@811: 
ingo@810: 2010-04-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@810: 
ingo@810: 	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesMeshArtifact.java,
ingo@810: 	  src/main/java/de/intevation/gnv/timeseries/gap/TimeGap.java,
ingo@810: 	  src/main/java/de/intevation/gnv/timeseries/gap/DefaultTimeGap.java,
ingo@810: 	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java: Added
ingo@810: 	  more Javadoc.
ingo@810: 
ingo@809: 2010-04-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@809: 
ingo@809: 	* src/main/java/de/intevation/gnv/state/describedata/NamedArrayList.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/NamedCollection.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/ExtendedKeyValueData.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/MinMaxDescribeData.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/DefaultKeyValueDescribeData.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/DefaultMinMaxDescribeData.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/SingleValueDescribeData.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/DescribeData.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/DefaultSingleValueDescribeData.java,
ingo@809: 	  src/main/java/de/intevation/gnv/state/describedata/KeyValueDescibeData.java:
ingo@809: 	  More Javadoc.
ingo@809: 
sascha@808: 2010-04-08	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@808: 
sascha@808: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java,
sascha@808: 	  src/main/java/de/intevation/gnv/math/package.html,
sascha@808: 	  src/main/java/de/intevation/gnv/math/AreaInterpolation.java,
sascha@808: 	  src/main/java/de/intevation/gnv/math/AttributedXYColumns.java,
sascha@808: 	  src/main/java/de/intevation/gnv/math/AttributedPoint2ds.java:
sascha@808: 	  Finished the javadoc of the math package.
sascha@808: 
sascha@807: 2010-04-08	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@807: 
sascha@807: 	* src/main/java/de/intevation/gnv/math/ConstantFunction.java,
sascha@807: 	  src/main/java/de/intevation/gnv/math/L1Comparator.java,
sascha@807: 	  src/main/java/de/intevation/gnv/math/HeightValue.java,
sascha@807: 	  src/main/java/de/intevation/gnv/math/Interpolation2D.java,
sascha@807: 	  src/main/java/de/intevation/gnv/math/XYColumn.java,
sascha@807: 	  src/main/java/de/intevation/gnv/math/LinearFunction.java,
sascha@807: 	  src/main/java/de/intevation/gnv/math/GridCell.java,
sascha@807: 	  src/main/java/de/intevation/gnv/math/AttributedXYColumns.java:
sascha@807: 	  Added more javadoc.
sascha@807: 
sascha@807: 	* src/main/java/de/intevation/gnv/utils/FileUtils.java,
sascha@807: 	  src/main/java/de/intevation/gnv/utils/MetaWriter.java,
sascha@807: 	  src/main/java/de/intevation/gnv/utils/DistanceCalculator.java,
sascha@807: 	  src/main/java/de/intevation/gnv/utils/MapfileGenerator.java,
sascha@807: 	  src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java,
sascha@807: 	  src/main/java/de/intevation/gnv/utils/Pair.java:
sascha@807: 	  Removed trailing whitespace
sascha@807: 
ingo@806: 2010-04-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@806: 
ingo@806: 	* src/main/java/de/intevation/gnv/utils/FileUtils.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/DistanceCalculator.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/InputValidator.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/ExclusiveExec.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/MetaWriter.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/MapfileGenerator.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/WKTUtils.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/StringUtils.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/Pair.java,
ingo@806: 	  src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java: Added Javadoc.
ingo@806: 
ingo@806: 	* src/main/java/de/intevation/gnv/utils/ArtifactFactoryUtilities.java:
ingo@806: 	  Removed.
ingo@806: 
sascha@805: 2010-04-08	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@805: 
sascha@805: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
sascha@805: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@805: 	  Removed trailing whitespace.
sascha@805: 
sascha@805: 	* src/main/java/de/intevation/gnv/math/ConstantXYDepth.java,
sascha@805: 	  src/main/java/de/intevation/gnv/math/LinearMetrics.java,
sascha@805: 	  src/main/java/de/intevation/gnv/math/QueriedXYDepth.java,
sascha@805: 	  src/main/java/de/intevation/gnv/math/L1Comparator.java,
sascha@805: 	  src/main/java/de/intevation/gnv/math/Metrics.java,
sascha@805: 	  src/main/java/de/intevation/gnv/math/LinearToMap.java,
sascha@805: 	  src/main/java/de/intevation/gnv/math/LinearFunction.java,
sascha@805: 	  src/main/java/de/intevation/gnv/math/Interpolator.java:
sascha@805: 	  Added more javadoc.
sascha@805: 
ingo@804: 2010-04-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@804: 
ingo@804: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
ingo@804: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/OutputHelper.java,
ingo@804: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
ingo@804: 	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java,
ingo@804: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@804: 	  Added Javadoc.
ingo@804: 
sascha@803: 2010-04-07	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@803: 
sascha@803: 	* src/main/java/de/intevation/gnv/**/*.java:
sascha@803: 	  Removed trailing whitespace.
sascha@803: 
sascha@802: 2010-04-07	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@802: 
sascha@802: 	* src/main/java/de/intevation/gnv/raster/ExternalIndexConverter.java,
sascha@802: 	  src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java,
sascha@802: 	  src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java,
sascha@802: 	  src/main/java/de/intevation/gnv/raster/DemuxRingsHandler.java,
sascha@802: 	  src/main/java/de/intevation/gnv/raster/IsoAttributeGenerator.java,
sascha@802: 	  src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java,
sascha@802: 	  src/main/java/de/intevation/gnv/raster/IsoProducer.java:
sascha@802: 	  Finished Javadoc of the raster package.
sascha@802: 
sascha@801: 2010-04-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@801: 
sascha@801: 	* src/main/java/de/intevation/gnv/**/*.java: More javadoc.
sascha@801: 
tim@800: 2010-04-06  Tim Englich  <tim.englich@intevation.de>
tim@800: 
tim@800: 	ISSUE215: Rows will not be merged to one Single Row if their values are identical.
tim@800: 
tim@800: 	* src/main/java/de/intevation/gnv/exports/ODVExport.java (writeData): 
tim@800: 	  Replaced the StringArray using as Key against the new Class StringArrayKey.
tim@800: 	  This was nessesarry tp detect Rows with same Values joining them to one
tim@800: 	  Row.
tim@800: 	* src/main/java/de/intevation/gnv/exports/StringArrayKey.java (StringArrayKey): 
tim@800: 	  Added new Class for representing the Key of an StringArray not using the 
tim@800: 	  Hash of the Array but using the hash of the values which are stored in 
tim@800: 	  the Array.
tim@800: 
tim@799: 2010-04-06  Tim Englich  <tim.englich@intevation.de>
tim@799: 	  ISSUE213: Wrong Geometrytype used for the generation of an Layer with 
tim@799: 	            Multipolygon-Geometries
tim@799: 
tim@799: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (getWMS): 
tim@799: 	  Integrated lookup of the Geometrytypes using a separat SQL-Statement.
tim@799: 	  Also added a separat Function for determining the Defaulttemplate for the 
tim@799: 	  Mapfile-Generation.
tim@799: 	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java (writeDataToFile): 
tim@799: 	  Changed Methodsignature. Now it's possible to put the Geometrytype which 
tim@799: 	  is required to generate the Layer and not use the Geometrytype of the 
tim@799: 	  first Geometry of the Resultvalues.
tim@799: 	  This was nessessary because we can have several kinds of geometrytypes
tim@799: 	  (e.g. MultiPolygons and Polygons) in one Layer. In that case we have to 
tim@799: 	  use the Multi* (e.g. MultiPolygon) as Geometrytype.
tim@799: 	* doc/conf/queries.properties: 
tim@799: 	  Added Query for determining the geometryType of a Layer.
tim@799: 
sascha@798: 2010-04-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@798: 
sascha@798: 	* src/main/java/de/intevation/gnv/**/*.java: Fixed vim modeline.
sascha@798: 
sascha@798: 	* src/main/java/de/intevation/gnv/math/L1Comparator.java: Moved
sascha@798: 	  L1 code here.
sascha@798: 
sascha@798: 	* src/main/java/de/intevation/gnv/math/Point2d.java: Removed dead
sascha@798: 	  inverse L1 code. Added Javadoc.
sascha@798: 
sascha@798: 	* src/main/java/de/intevation/gnv/math/IJKey.java: Added Javadoc.
sascha@798: 
sascha@797: 2010-04-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@797: 
sascha@797: 	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java,
sascha@797: 	  src/test/java/de/intevation/gnv/artifacts/TestArtifactDatabase.java:
sascha@797: 	  Fix to let the test mockups implement their interfaces.
sascha@797: 
ingo@795: 2010-03-31  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@795: 
ingo@795: 	* src/main/java/de/intevation/gnv/jfreechart/LevelOrderIndices.java,
ingo@795: 	  src/main/java/de/intevation/gnv/jfreechart/PolygonSeries.java,
ingo@795: 	  src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java,
ingo@795: 	  src/main/java/de/intevation/gnv/jfreechart/CompactXYItems.java,
ingo@795: 	  src/main/java/de/intevation/gnv/jfreechart/PolygonSeriesLabelGenerator.java,
ingo@795: 	  src/main/java/de/intevation/gnv/jfreechart/PolygonDataset.java,
ingo@795: 	  src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java: Added
ingo@795: 	  JavaDoc.
ingo@795: 
ingo@794: 2010-03-31  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@794: 
ingo@794: 	* src/main/java/de/intevation/gnv/exports/Export.java,
ingo@794: 	  src/main/java/de/intevation/gnv/exports/ChartExportHelper.java,
ingo@794: 	  src/main/java/de/intevation/gnv/exports/ODVExport.java: Repaired JavaDoc.
ingo@794: 
ingo@793: 2010-03-31  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@793: 
ingo@793: 	* src/main/java/de/intevation/gnv/chart/Chart.java,
ingo@793: 	  src/main/java/de/intevation/gnv/chart/XMLChartTheme.java,
ingo@793: 	  src/main/java/de/intevation/gnv/chart/exception/TechnicalChartException.java:
ingo@793: 	  Added missing vim control comments.
ingo@793: 
ingo@792: 2010-03-31  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@792: 
ingo@792: 	* src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/MetaDataServiceException.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/Parameter.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultLayer.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/FIS.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultMapService.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultParameter.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultFIS.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/Layer.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/MapService.java,
ingo@792: 	  src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java:
ingo@792: 	  Added and repaired JavaDoc.
ingo@792: 
ingo@790: 2010-03-31  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@790: 
ingo@790: 	* src/main/java/de/intevation/gnv/artifacts/cache/CacheFactory.java: Added
ingo@790: 	  and repaired JavaDoc.
ingo@790: 
ingo@790: 2010-03-31  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@789: 
ingo@789: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactFactory.java,
ingo@789: 	  src/main/java/de/intevation/gnv/artifacts/GNVProductArtifactFactory.java,
ingo@789: 	  src/main/java/de/intevation/gnv/artifacts/PreSettingArtifact.java,
ingo@789: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
ingo@789: 	  src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java: Added
ingo@789: 	  JavaDoc for this package.
ingo@789: 
ingo@790: 2010-03-31  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@788: 
ingo@788: 	* src/main/java/de/intevation/gnv/chart/XMLChartTheme.java,
ingo@788: 	  src/main/java/de/intevation/gnv/chart/HorizontalCrossProfileChart.java,
ingo@788: 	  src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java,
ingo@788: 	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
ingo@788: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@788: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java,
ingo@788: 	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Corrected
ingo@788: 	  JavaDoc errors.
ingo@788: 
ingo@787: 2010-03-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@787: 
ingo@787: 	  Issue214
ingo@787: 
ingo@787: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java: Added code for
ingo@787: 	  validating polygons and linestrings. The input type needs to be 'polygon'
ingo@787: 	  or 'linestring'.
ingo@787: 
ingo@787: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: Changed the input
ingo@787: 	  type of the wkt string from 'string' to 'polygon'.
ingo@787: 
ingo@787: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml: Changed the input
ingo@787: 	  type of the wkt string from 'string' to 'linestring'.
ingo@787: 
ingo@786: 2010-03-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@786: 
ingo@786: 	* src/main/java/de/intevation/gnv/state/ExtendedInputData.java: Added a
ingo@786: 	  method splitParameter() to retrieve the parameter ids as array (analog to 
ingo@786: 	  splitValue() in DefaultInputData).
ingo@786: 	
ingo@785: 2010-03-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@785: 
ingo@785: 	  Issue210 (First work for saving relation between selected measurement and
ingo@785: 	  the parameter it belongs to completed)
ingo@785: 
ingo@785: 	* src/main/java/de/intevation/gnv/state/DefaultInputData.java: Added a
ingo@785: 	  further constructor and changed the visibility of the separator character
ingo@785: 	  used by this class to public.
ingo@785: 
ingo@785: 	* src/main/java/de/intevation/gnv/state/ExtendedInputData.java: This class
ingo@785: 	  enhances DefaultInputData and has a further field storing a string
ingo@785: 	  parameter. This is necessary to save the information about the
ingo@785: 	  relation between selected measurement and the parameter it belongs to.
ingo@785: 
ingo@785: 	* src/main/java/de/intevation/gnv/state/MeasurementState.java: Little
ingo@785: 	  changes in the data of the describe document. The value for the checkboxes
ingo@785: 	  are composed of the measurement id and the parameter id separated by a
ingo@785: 	  semicolon. Furthermore the incoming document of a feed call is parsed in
ingo@785: 	  this class to save the relation between selected measurement and the
ingo@785: 	  parameter it belongs to. ExtendedInputData class is used as storage.
ingo@785: 
ingo@785: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java: Changed the
ingo@785: 	  method signatures of all methods to static for using it without
ingo@785: 	  instantiating an object of this class.
ingo@785: 
ingo@784: 2010-03-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@784: 
ingo@784: 	  Issue212 (Improved input validation)
ingo@784: 
ingo@784: 	* src/main/java/de/intevation/gnv/state/MinMaxDateState.java: Improved date
ingo@784: 	  input validation. The chosen date needs to be in range between upper and
ingo@784: 	  lower date, otherwise an error message is displayed and the user needs to
ingo@784: 	  correct his choice.
ingo@784: 
ingo@784: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java: Added a new
ingo@784: 	  method to validate a given date being in range between an upper and a
ingo@784: 	  lower date bound.
ingo@784: 
ingo@784: 	* src/main/resources/lang/artifactMessages.properties,
ingo@784: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@784: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@784: 	  src/main/resources/lang/artifactMessages_de.propertie: Added error
ingo@784: 	  messages for failures while date validation.
ingo@784: 
ingo@783: 2010-03-29  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@783: 
ingo@783: 	  Issue192
ingo@783: 
ingo@783: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Added an
ingo@783: 	  offset of 15px between the right data area and the right axis. Long axes
ingo@783: 	  labels near the right border aren't cut on this way.
ingo@783: 
sascha@782: 2010-03-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@782: 
sascha@782: 	* src/main/java/de/intevation/gnv/**/package.html: New
sascha@782: 	  Added package description with text 'DOCUMENT ME!'.
sascha@782: 
ingo@781: 2010-03-29  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@781: 
ingo@781: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@781: 	  Each TimeSeriesArtifacts stores information about its TimeGapDefinitions,
ingo@781: 	  otherwise we are not able to continue with an artifact after a restart of
ingo@781: 	  the artifact server.
ingo@781: 
ingo@781: 	  TODO: The information about TimeGapDefinitions are equal for each type of
ingo@781: 	  artifacts. It would be better to store these definitions on a central
ingo@781: 	  place (i.e. see ChartTheme configuration).
ingo@781: 	
ingo@781: 	* src/main/java/de/intevation/gnv/timeseries/gap/TimeGap.java: Implements
ingo@781: 	  Serializable.
ingo@781: 
sascha@780: 2010-03-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@780: 
sascha@780: 	* src/main/java/de/intevation/gnv/**/*.java:
sascha@780: 	  Bring @author javadoc tags in form '@author <a href="john.doe@example.com">John Doe</a>'
sascha@780: 
sascha@780: 	  find -name \*.java | \
sascha@780: 	  xargs sed -i \
sascha@780: 	  -e 's/@author[ ]\+\([^(<]\+\)[<(]\([^>)]\+\)[>)]/@author <a href="mailto:\2">\1<\/a>/g' \
sascha@780: 	  -e 's@[ ]\+</a>@</a>@g'
sascha@780: 
sascha@779: 2010-03-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@779: 
sascha@779: 	* src/main/java/de/intevation/gnv/**/*.java,
sascha@779: 	  src/main/java/de/intevation/gnv/**/*.java: 
sascha@779: 	  Ordered imports. Removed needless imports. Removed empty headers.
sascha@779: 
sascha@778: 2010-03-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@778: 
sascha@778: 	* src/test/java/de/intevation/gnv/**/*.java,
sascha@778: 	  src/main/java/de/intevation/gnv/**/*.java: 
sascha@778: 	  Removed trailing whitespace.
sascha@803: 	  find -name \*.java | xargs sed -i 's/[ \t]\+$//
sascha@778: 
tim@777: 2010-03-26  Tim Englich  <tim.englich@intevation.de>
tim@777: 
tim@777: 	* doc/conf/queries.properties: 
tim@777: 	  Added Query for fetching the Series and Instantaneouspoints of Series using 
tim@777: 	  an WKT as the Geometryvalue or using the Values set by the Regionfilter 
tim@777: 	  to define the Region of Interest.
tim@777: 
tim@777: 	* doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: 
tim@777: 	  Modified the Workflow for Verticalprofiles on Instantaneouspoints so 
tim@777: 	  that the Inputvalues of the Mapviewer-Interface take effect. E.g. 
tim@777: 	  The Regionfilter will not be displaied if an Polygon was send by the 
tim@777: 	  Mapviewer. Also integrated the Regionfilter to the Workflow.
tim@777: 
ingo@775: 2010-03-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@775: 
ingo@775: 	  Issue164
ingo@775: 
ingo@775: 	* src/main/java/de/intevation/gnv/utils/ExclusiveExec.java: New. This class
ingo@775: 	  can be used to synchronize threads with a given key. To use this
ingo@775: 	  synchronization, you just have to do something like the following:
sascha@778: 	    UniqueKey token = ExclusiveExec.INSTANCE.acquire(key);
sascha@778: 	    // your code to be synchronized
sascha@778: 	    ExclusiveExec.INSTANCE.release(token);
ingo@775: 	  A thread needs to wait if there is already a thread with the given key 
ingo@775: 	  which has acquired a token. Threads with a different key don't need to 
ingo@775: 	  wait for this thread.
ingo@775: 
ingo@775: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@775: 	  Synchronize shapefile writing of artifacts which have the same uuid.
ingo@775: 
ingo@775: 	* src/main/java/de/intevation/gnv/utils/FileUtils.java: Added a function to
ingo@775: 	  delete the content of a directory.
ingo@775: 
ingo@774: 2010-03-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@774: 
ingo@774: 	  Issue211 (Applied patch)
ingo@774: 
ingo@774: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Removed
ingo@774: 	  race-condition when trying to access the index of the next line color used
ingo@774: 	  in chart.
ingo@774: 
ingo@773: 2010-03-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@773: 
ingo@773: 	* src/main/java/de/intevation/gnv/utils/MetaWriter.java: Avoid danger to get
ingo@773: 	  a NullPointerException if no time to live is served by CallContext.
ingo@773: 
ingo@772: 2010-03-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@772: 
ingo@772: 	  Issue197
ingo@772: 
ingo@772: 	* src/main/java/de/intevation/gnv/utils/MetaWriter.java: Fetch time to live
ingo@772: 	  of an artifact from CallContext and put it into meta document.
ingo@772: 
ingo@771: 2010-03-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@771: 
ingo@771: 	* src/main/java/de/intevation/gnv/exports/Export.java,
ingo@771: 	  src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java,
ingo@771: 	  src/main/java/de/intevation/gnv/exports/ChartExportHelper.java,
ingo@771: 	  src/main/java/de/intevation/gnv/exports/SimpleOdvDataCollector.java,
ingo@771: 	  src/main/java/de/intevation/gnv/exports/DefaultDataCollector.java,
ingo@771: 	  src/main/java/de/intevation/gnv/exports/DefaultProfile.java,
ingo@771: 	  src/main/java/de/intevation/gnv/exports/DefaultExport.java,
ingo@771: 	  src/main/java/de/intevation/gnv/exports/ODVExport.java: Added javadoc and
ingo@771: 	  turned javadoc author tag into a 'mailto' form.
ingo@771: 
ingo@770: 2010-03-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@770: 
ingo@770: 	* src/main/java/de/intevation/gnv/histogram/HistogramHelper.java: Removed a
ingo@770: 	  method which was commented out, added javadocs and turned javadoc author
ingo@770: 	  tag into a 'mailto' form.
ingo@770: 
ingo@769: 2010-03-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@769: 
ingo@769: 	* src/main/java/de/intevation/gnv/layer/LayerArtifact.java: Removed empty
ingo@769: 	  comment lines at the beginning of the class and turned javadoc author tag
ingo@769: 	  into a form which displays a mailto link in html.
ingo@769: 
ingo@768: 2010-03-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@768: 
ingo@768: 	* src/main/java/de/intevation/gnv/wms/LayerInfo.java: Added javadoc in wms
ingo@768: 	  package.
ingo@768: 
ingo@767: 2010-03-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@767: 
ingo@767: 	* src/main/java/de/intevation/gnv/chart/Chart.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/DefaultHistogram.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/XMLChartTheme.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/HorizontalCrossProfileChart.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/exception/TechnicalChartException.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/AbstractHistogram.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/ChartLabels.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/AbstractChart.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
ingo@767: 	  and repaired javadoc in chart package.
ingo@767: 
ingo@767: 	* src/main/java/de/intevation/gnv/chart/Insets.java,
ingo@767: 	  src/main/java/de/intevation/gnv/chart/ChartStyle.java: Removed these
ingo@767: 	  classes, because they aren't used anymore.
ingo@767: 
tim@766: 2010-03-23  Tim Englich  <tim.englich@intevation.de>
tim@766: 
tim@766: 	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_feed.xml,
tim@766: 	  src/test/ressources/timeseries_mesh/timeseries_step_08_feed.xml:
tim@766: 	  Switched to valid Timestamps to enable testing ODV-Output.
tim@766: 
tim@765: 2010-03-23  Tim Englich  <tim.englich@intevation.de>
tim@765: 
tim@765: 	* src/main/java/de/intevation/gnv/exports/ODVExport.java: 
tim@765: 	  Added new Export-Class which will generate the special ODV-Format.
tim@765: 	  This one is required because we have to switch the Format from a Rowbased
tim@765: 	  Representation to a Columnbased.
tim@765: 	  This meas that for each Parameter which was requested two additonal Columns,
tim@765: 	  one for the Parametervalue and one for the Quality, has to be added to the 
tim@765: 	  Export. This differs to the "normal" CSV-Export.
tim@765: 	
tim@765: 	* src/main/java/de/intevation/gnv/exports/DefaultExport.java (collector): 
tim@765: 	  Switched Member from private to protected to make it available from 
tim@765: 	  extending Classes.
tim@765: 
tim@765: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java: 
tim@765: 	  Modified the Colums and the Column-headers and Columns-names for the ODV-Export
tim@765: 	  that all required Data is put into the Document in the right order and the 
tim@765: 	  right nameing.
tim@765: 	  Switche to the NEW ODVExport-Class to use it for all ODV-Exports.
tim@765: 
tim@765: 	* doc/conf/queries.properties: 
tim@765: 	  Modified the Queries for the ODV-Export that all required Informations are 
tim@765: 	  fetched from the Database.
tim@765: 
tim@764: 2010-03-22  Tim Englich  <tim.englich@intevation.de>
tim@764: 
tim@764: 	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_feed.xml,
tim@764: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_feed.xml:
tim@764: 	  Switched to valid Timestamps to enable testing CSV-Output.
tim@764: 
tim@763: 2010-03-22  Tim Englich  <tim.englich@intevation.de>
tim@763: 
tim@763: 	* src/main/java/de/intevation/gnv/state/StateBase.java (feed):
tim@763: 	  Bugfix: The Description of an InputData-Object will now only be fetched if
tim@763: 	  the Name of the data of the Current State is equal to the Name of the 
tim@763: 	  InputData-Object. This Fix prevent some Exceptions that happen if the 
tim@763: 	  Query need som Inputdata which was not set at that moment.
tim@763: 
tim@762: 2010-03-22  Tim Englich  <tim.englich@intevation.de>
tim@762: 
tim@762: 	  ISSUE 122
tim@762: 
tim@762: 	* src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java,
tim@762: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java: 
tim@762: 	  Added all required Columns for the CSV-Export. Integrated own 
tim@762: 	  Columnspecifications for the different Kinds of Profiles (TimeSeriesPoints,
tim@762: 	  Mesh, InstantaneousPoint).
tim@762: 
tim@762: 	* doc/conf/queries.properties: 
tim@762: 	  Manipulated the Queries for fetching the Data for generating the CSV-Output
tim@762: 	  for all kinds of Vertical- and Horizontalprofiles in that way that now all 
tim@762: 	  required Columns were included.
tim@762: 
tim@762: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java: 
tim@762: 	  Removed deprecated TODO-Flags.
tim@762: 
ingo@761: 2010-03-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@761: 
ingo@761: 	  Issue209
ingo@761: 
ingo@761: 	* doc/conf/maptemplates/horizontalcrosssection_salinity_isolines.vm,
ingo@761: 	  doc/conf/maptemplates/horizontalcrosssection_flow-velocity_isolines.vm,
ingo@761: 	  doc/conf/maptemplates/horizontalcrosssection_water-levels_isolines.vm,
ingo@761: 	  doc/conf/maptemplates/horizontalcrosssection_water-temperature_isolines.vm:
ingo@761: 	  Improved the template configuration for the given changes in rev814.
ingo@761: 	
ingo@761: 	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java: Moved the
ingo@761: 	  settings of the format used to write floating point numbers into the
ingo@761: 	  shapefile description column into a static block of this class to avoid
ingo@761: 	  doing this each time converting a double value to a description.
ingo@761: 
ingo@760: 2010-03-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@760: 
ingo@760: 	  Issue209
ingo@760: 
ingo@760: 	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java: Added a
ingo@760: 	  further column in the isolines shapefile to store a description for each
ingo@760: 	  line. This description column contains the double value with three maximum
ingo@760: 	  fraction digits. This is a workaround to adjust the rendering of double 
ingo@760: 	  values which cannot be adjusted in MapServer at the moment. MapServer
ingo@760: 	  would display all fraction digits contained in the shapefile causing very
ingo@760: 	  long labels.
ingo@760: 
ingo@759: 2010-03-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@759: 
ingo@759: 	  Issue208 (Added a cleanup mechanism to do some things before exporting an
ingo@759: 	  artifact)
ingo@759: 
ingo@759: 	* src/main/java/de/intevation/gnv/state/State.java: Added a cleanup method
ingo@759: 	  to remove special data stored at this state while processing an 
ingo@759: 	  'out'-target.
ingo@759: 
ingo@759: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Default
ingo@759: 	  implementation of this cleanup method - nothing is done here so far.
ingo@759: 	  Override this method in states which should remove data before being
ingo@759: 	  exported.
ingo@759: 
ingo@759: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@759: 	  Overrides this cleanup method to remove the current shapefile path.
ingo@759: 
ingo@759: 	* src/main/java/de/intevation/gnv/profile/horizontalcrosssection/HorizontalCrossSectionMeshArtifact.java:
ingo@759: 	  Call cleanup method of the current state if the cleanup method of this
ingo@759: 	  artifact itself is called.
ingo@759: 
tim@758: 2010-03-19  Tim Englich  <tim.englich@intevation.de>
tim@758: 
tim@758: 	* doc/conf/products/horizontalprofile/conf_mesh_cross.xml: 
tim@758: 	  Modified the Workflow for "Horizontales Schnittprofil" so that the Inputvalues 
tim@758: 	  of the Mapviewer-Interface take effect. E.g. The Regionfilter will not be 
tim@758: 	  displaied if an Polygon was send by the Mapviewer. Also the Input of an 
tim@758: 	  LineString will be skipped if a LineString was send by the MapViewer.
tim@758: 
tim@757: 2010-03-19  Tim Englich  <tim.englich@intevation.de>
tim@757: 
tim@757: 	* src/main/resources/lang/artifactMessages_de*.properties: 
tim@757: 	  Added new German resources for fis_marinefeatures according to msg1067
tim@757: 	  of Issue2005.
tim@757: 
tim@756: 2010-03-19  Tim Englich  <tim.englich@intevation.de>
tim@756: 
tim@756: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java: 
tim@756: 	  Added Support of Layers which are Joined from two Tables.
tim@756: 	  Only the Columns of the first Table will be inserted to prevent Namecollisions
tim@756: 	  of Attributenames.
tim@756: 	
tim@756: 	* doc/conf/queries.properties: 
tim@756: 	  Added full qualified Columnname to prevent Namecolliosions in SQL-Statement 
tim@756: 	  for querying  Layer-Data if two Tables are Joined to one Layer.
tim@756: 
tim@755: 2010-03-19  Tim Englich  <tim.englich@intevation.de>
tim@755: 
tim@755: 	* src/main/resources/lang/artifactMessages*.properties: 
tim@755: 	  Added Ressources for new FIS Marine Features.
tim@755: 	
tim@755: 	* doc/conf/conf.xml:
tim@755: 	
tim@755: 	  ISSUE 205
tim@755: 	
tim@755: 	  Integrated FIS Marine Features with Product Layer into the System.
tim@755: 
tim@754: 2010-03-19  Tim Englich  <tim.englich@intevation.de>
tim@754: 
tim@754: 	* doc/conf/queries.properties: 
tim@754: 	  
tim@754: 	  ISSUE92
tim@754: 	  
tim@754: 	  Integrated Column BAND for Query of Layers which belong to a FIS.
tim@754: 	  The Displayname of an Layer is now TITLE - LAYER_NAME - BAND
tim@754: 
tim@753: 2010-03-19  Tim Englich  <tim.englich@intevation.de>
tim@753: 
tim@753: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml: 
tim@753: 	  Modified the Workflow of the verticalcrosssection that the Geometry is now
tim@753: 	  copied to the Inpuvalues if it comes from the Mapviewer-Interfacecall.
tim@753: 
tim@752: 2010-03-19  Tim Englich  <tim.englich@intevation.de>
tim@752: 
tim@752: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: 
tim@752: 	  Modified the Workflow for Horizontalcrosssections so that the Inputvalues 
tim@758: 	  of the Mapviewer-Interface take effect. E.g. The Regionfilter will not be 
tim@752: 	  displaied if an Polygon was send by the Mapviewer. Also the Input of an 
tim@752: 	  Polygon will be skipped if a Polygon was send by the MapViewer.
tim@752: 
tim@751: 2010-03-19  Tim Englich  <tim.englich@intevation.de>
tim@751: 
tim@751: 	* doc/conf/products/horizontalprofile/conf_mesh.xml: 
tim@751: 	  Modified the Workflow for Horizontalprofiles so that the Inputvalues 
tim@758: 	  of the Mapviewer-Interface take effect. E.g. The Regionfilter will not be 
tim@751: 	  displaied if an Polygon was send by the Mapviewer. Also the Input of an 
tim@751: 	  Point will be skipped if a Point was send by the MapViewer.
tim@751: 
tim@750: 2010-03-16  Tim Englich  <tim.englich@intevation.de>
tim@750: 
tim@750: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml: 
tim@750: 	  Modified the Workflow so that the Inputvalues of the Mapviewer-Interface 
tim@758: 	  take effect. E.g. The Regionfilter will not be displaied if an Polygon
tim@750: 	  was send by the Mapviewer. Also the Input of an LineString will be skipped 
tim@750: 	  if a LineString was send by the MapViewer.
tim@750: 
tim@749: 2010-03-16  Tim Englich  <tim.englich@intevation.de>
tim@749: 
tim@749: 	* doc/conf/queries.properties: 
tim@749: 	  Bugfixes: Fixed the Query for Parameters in Timeseries and 
tim@749: 	  VerticalProfiles in Meshes. Now all Parts of an Mesh will be used and not 
tim@749: 	  only the last one.
tim@749: 
tim@748: 2010-03-16  Tim Englich  <tim.englich@intevation.de>
tim@748: 
tim@748: 	* doc/conf/products/timeseries/conf_mesh.xml,
tim@748: 	  doc/conf/products/verticalprofile/conf_mesh.xml: 
tim@748: 	  Modified the Workflow for Verticalprofiles and Timeseries on Meshes in 
tim@758: 	  that case that the Inputvalues of the Mapviewer-Interface take effect. 
tim@748: 	  E.g. The Regionfilter will not be displaied if an Polygon was send by 
tim@748: 	  the Mapviewer.
tim@748: 
tim@747: 2010-03-16  Tim Englich  <tim.englich@intevation.de>
tim@747: 
tim@747: 	* src/main/java/de/intevation/gnv/state/PreSettingsTransferCoordinateSelectionState.java: 
tim@747: 	  Added an new State wich will handle the Display of Coordinatevalues and 
tim@747: 	  fetch given Inputparameters from the Presettings and copy them to 
tim@747: 	  the InputValues.
tim@747: 	  This new Class is necessary because we can have Pointobjects given in 
tim@747: 	  the Presettings which should be used to fetch all MeshPoints within a 
tim@747: 	  given Distance aroud the Coordinate and display its Coordindatevalues.
tim@747: 
tim@746: 2010-03-16  Tim Englich  <tim.englich@intevation.de>
tim@746: 
tim@746: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (getPointValue):
tim@746: 	  Integrated handling of WKT-Strings for Points to extract Points from
tim@746: 	  a given Inputstring.
tim@746: 
tim@745: 2010-03-16  Tim Englich  <tim.englich@intevation.de>
tim@745: 
tim@745: 	* src/main/java/de/intevation/gnv/state/StateBase.java (generateFilterValuesFromInputData): 
tim@745: 	  Improvement: Values of Type Geometry which are Points will be 
tim@745: 	  prepared as Regions for DB-Query.
tim@745: 
ingo@744: 2010-03-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@744: 
ingo@744: 	  Issue199
ingo@744: 
ingo@744: 	* src/main/java/de/intevation/gnv/state/MeasurementState.java: Changed the
ingo@744: 	  describe document creation a bit. The describe document will now have a
ingo@744: 	  section for measurement/parameter with each parameter in an own
ingo@744: 	  xform:select node which contains different xform:item nodes for each 
ingo@744: 	  measurement for this parameter.
ingo@744: 
tim@743: 2010-03-16  Tim Englich  <tim.englich@intevation.de>
tim@743: 
tim@743: 	* doc/conf/products/layer/conf.xml: 
tim@743: 	  Modified the Workflow so that the Inputvalues of the Mapviewer-Interface 
tim@758: 	  take effect. E.g. The Regionfilter will not be displaied if an Polygon
tim@743: 	  was send by the Mapviewer.
tim@743: 
tim@742: 2010-03-16  Tim Englich  <tim.englich@intevation.de>
tim@742: 
tim@742: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (fetchData): 
tim@742: 	  BugFix: Fixed NPE using the Presettings-Object without given Presettings.
tim@742: 
tim@741: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@741: 
tim@741: 	* doc/conf/products/verticalprofile/conf_timeseriespoint.xml: 
tim@741: 	  Modified the Workflow so that the Inputvalues of the Mapviewer-Interface 
tim@758: 	  take effect. E.g. The Regionfilter will not be displaied if an Polygon
tim@741: 	  was send by the Mapviewer. 
tim@741: 
tim@741: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@741: 
tim@741: 	* doc/conf/queries.properties: 
tim@741: 	  Added Query for fetching the TimeSeriespoint using an WKT as the 
tim@741: 	  Geometryvalue to define the Region of Interest.
tim@741: 
tim@741: 	* doc/conf/products/timeseries/conf_timeseriespoint.xml: 
tim@741: 	  Modified the Workflow so that the Inputvalues of the Mapviewer-Interface 
tim@758: 	  take effect. E.g. The Regionfilter will not be displaied if an Polygon
tim@741: 	  was send by the Mapviewer. 
tim@741: 
ingo@740: 2010-03-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@740: 
ingo@740: 	  Issue120
ingo@740: 
ingo@740: 	* src/main/java/de/intevation/gnv/state/StateBase.java: New method
ingo@740: 	  implemented which searches for a specific parameter by its name in the 
ingo@740: 	  current state and in all parent states. Null is returned if no parameter 
ingo@740: 	  could be found with this name, otherwise the InputData object.
ingo@740: 
ingo@740: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java:
ingo@740: 	  Display that point in chart subtitle which have been entered by the user.
ingo@740: 
ingo@740: 	* src/main/java/de/intevation/gnv/utils/WKTUtils.java:	Added a new method
ingo@740: 	  to transform a Point object to a user-friendly formatted string.
ingo@740: 
tim@739: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@739: 
tim@739: 	* doc/conf/products/verticalprofile/conf_timeseriespoint.xml: 
tim@739: 	  Modified the Workflow so that the Inputvalues of the Mapviewer-Interface 
tim@758: 	  take effect. E.g. The Regionfilter will not be displaied if an Polygon
tim@739: 	  was send by the Mapviewer. 
tim@739: 
tim@738: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@738: 
tim@738: 	* doc/conf/queries.properties: 
tim@738: 	  Added Query for fetching the TimeSeriespoint using an WKT as the 
tim@738: 	  Geometryvalue to define the Region of Interest.
tim@738: 
tim@738: 	* doc/conf/products/timeseries/conf_timeseriespoint.xml: 
tim@738: 	  Modified the Workflow so that the Inputvalues of the Mapviewer-Interface 
tim@758: 	  take effect. E.g. The Regionfilter will not be displaied if an Polygon
tim@738: 	  was send by the Mapviewer. 
tim@738: 
tim@737: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@737: 
tim@737: 	* doc/conf/queries.properties:
tim@737: 	  Integrated and modified Queries for Timeseries on Meshes.
tim@737: 
tim@737: 	* doc/conf/products/timeseries/conf_mesh.xml: 
tim@737: 	  Modified the Workflow so that the Inputvalues of the Mapviewer-interface 
tim@758: 	  take effect. E.g. The regionfilter will not be displaied if an  Polygon
tim@737: 	  was send by the Mapviewer. Also the State for typing an Point will be 
tim@737: 	  skipped an the Geometry of the Mapviewercall will be used.
tim@737: 
tim@736: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@736: 
tim@736: 	* src/main/java/de/intevation/gnv/state/StateBase.java,
tim@736: 	  src/main/java/de/intevation/gnv/state/DefaultAutoResumeState.java: 
tim@736: 	  Revoke Changes of r771. The Switch if the QueryId is null has several 
tim@736: 	  Effects which causes NPEs in other Parts of this Module.
tim@758: 	  So I removed the Changes of r771 and override the effected Methods in 
tim@736: 	  DefaultAutoResumeState.
tim@736: 
tim@735: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@735: 
tim@735: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java:
tim@735: 	  Integrated the handling of AutoResumeStates into the initialization 
tim@735: 	  Process of an Artifact. After an Initialization of an Artifact it will be 
tim@735: 	  proved if the Current State is an AutoResumeState. If it is the next valid 
tim@735: 	  state in the sequence will be set to the current State.
tim@735: 
tim@734: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@734: 
tim@734: 	* src/main/java/de/intevation/gnv/state/DefaultAutoResumeState.java, 
tim@734: 	  src/main/java/de/intevation/gnv/state/AutoResumeState.java: 
tim@734: 	  Added new Interface and its DefaultImplementation to the Project.
tim@734: 	  This Interface will mark States which can be handled automatically without 
tim@734: 	  any interaction from the User.
tim@734: 	  So it is possible to fork a Sequence e.g. by given Constructorparameters 
tim@734: 	  of an Artifact. 
tim@734: 
tim@733: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@733: 
tim@733: 	* src/main/java/de/intevation/gnv/state/StateBase.java (feed):
tim@733: 	  Bugfix: We have States which don't have tor Query Data from a Database 
tim@733: 	  for its Description. So now the Description will only be determined if a
tim@733: 	  Query was configured to this State.
tim@733: 
tim@732: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@732: 
tim@732: 	* src/main/java/de/intevation/gnv/state/PreSettingsTransferState.java (setup):
tim@732: 	  Bugfix: Corrected C&P-Error in the Setup-Method of the PreSettingsTransferState
tim@732: 
tim@731: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@731: 
tim@731: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid): 
tim@731: 	  Added Objecttype Geometry for the Validation of Inputdata. Geometry will 
tim@731: 	  be validated in the same way as Pointobjects.
tim@731: 
ingo@730: 2010-03-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@730: 
ingo@730: 	  Issue198
ingo@730: 
ingo@730: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@730: 	  Read the layer title which might have been adjusted by the user and store
ingo@730: 	  it in the CallContext object to be available in MetaWriter.
ingo@730: 
ingo@730: 	* src/main/java/de/intevation/gnv/utils/MetaWriter.java: Write the layer 
ingo@730: 	  title stored in the CallContext object into meta.xml file.
ingo@730: 
ingo@730: 	* src/main/java/de/intevation/gnv/wms/LayerInfo.java: Added a further
ingo@730: 	  attribute named 'title' to adjust the layer name.
ingo@730: 
ingo@730: 	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Read layer
ingo@730: 	  title from meta.xml file. The uuid is used as layer title if no title is 
ingo@730: 	  given.
ingo@730: 
ingo@730: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: Added a string
ingo@730: 	  input parameter in wms output mode to adjust a wms layer's title.
ingo@730: 
ingo@730: 	* doc/conf/maptemplates/horizontalcrosssection_salinity.vm,
ingo@730: 	  doc/conf/maptemplates/horizontalcrosssection_salinity_isolines.vm,
ingo@730: 	  doc/conf/maptemplates/horizontalcrosssection_flow-velocity.vm,
ingo@730: 	  doc/conf/maptemplates/horizontalcrosssection_flow-velocity_isolines.vm,
ingo@730: 	  doc/conf/maptemplates/horizontalcrosssection_water-levels.vm,
ingo@730: 	  doc/conf/maptemplates/horizontalcrosssection_water-levels_isolines.vm,
ingo@730: 	  doc/conf/maptemplates/horizontalcrosssection_water-temperature.vm,
ingo@730: 	  doc/conf/maptemplates/horizontalcrosssection_water-temperature_isolines.vm:
ingo@730: 	  Read title attribute from LayerInfo object for filling the layer name in 
ingo@730: 	  template files. The title can be adjusted by the user himself, but the 
ingo@730: 	  shapefiles are stored in the path {shapefile_path}/{uuid}/xxx.shp.
ingo@730: 
tim@729: 2010-03-15  Tim Englich  <tim.englich@intevation.de>
tim@729: 
tim@729: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (fetchData): 
tim@729: 	  Integrated lookup of the Geometry which was put to the Artifact during 
tim@729: 	  the Instantiation (e.g. was send from the MapViewer to the GNV).
tim@729: 
tim@728: 2010-03-12  Tim Englich  <tim.englich@intevation.de>
tim@728: 
tim@728: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (fetchColumns): 
tim@728: 	  Integrated an Method for fetching all required Columns for an given Layer 
tim@728: 	  and put them into the Query witch will load the Layerdata from the 
tim@728: 	  Database.
tim@728: 
tim@728: 	* doc/conf/products/layer/conf.xml: 
tim@728: 	  Added an Configuration-Element to determine the Query which should be used 
tim@728: 	  to Query the Columns of a choosen Layer.
tim@728: 
tim@728: 	* doc/conf/queries.properties: 
tim@728: 	  Manipulated the Queries for fetching the Layerdata in that way that it is 
tim@728: 	  possible to put the requested-Columns into it using the ?-Syntax.
tim@728: 
tim@727: 2010-03-12  Tim Englich  <tim.englich@intevation.de>
tim@727: 
tim@727: 	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java (writeDataToFile): 
tim@727: 	  Added generic Export for all Columns which are in an ResultValue.
tim@727: 	  The first Column must be the Geometryvalue. all other Columns will be added
tim@727: 	  to the Shapefile using the defined Attribute-Class.
tim@727: 
ingo@726: 2010-03-10  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@726: 
ingo@726: 	  Issue201
ingo@726: 
ingo@726: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@726: 	  Use a better key - hash served by getHash() from StateBase - to put
ingo@726: 	  chart results into cache.
ingo@726: 
ingo@725: 2010-03-10  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@725: 
ingo@725: 	* doc/conf/products/timeseries/conf_timeseriespoint.xml: Use MinMaxDateState
ingo@725: 	  to handle date input instead of MinMaxState.
ingo@725: 
ingo@725: 	* src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java: Added
ingo@725: 	  EXCEPTION_NO_INPUT key used for a lookup in resource bundles.
ingo@725: 
ingo@725: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
ingo@725: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java
ingo@725: 	  src/main/java/de/intevation/gnv/state/OutputStateBase.java
ingo@725: 	  src/main/java/de/intevation/gnv/state/StateBase.java,
ingo@725: 	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
ingo@725: 	  src/main/java/de/intevation/gnv/state/State.java: Return localized
ingo@725: 	  error messages as xml documents if something failed while feeding the 
ingo@725: 	  current artifact/state. These error messages are used to be displayed in
ingo@725: 	  the user interface. There are two different error messages at the moment -
ingo@725: 	  for general error messages related to server errors and a message invalid
ingo@725: 	  user input. The difference between these messages is their location in the
ingo@725: 	  xml document. Each message type is created with a separate method in
ingo@725: 	  ArtifactXMLUtilities (createExceptionReport() and createInputException()).
ingo@725: 	  The intention to separate these message types is to display them on
ingo@725: 	  different places in the user interface.
ingo@725: 
ingo@725: 	* src/main/java/de/intevation/gnv/state/MinMaxDateState.java: New state to
ingo@725: 	  handle date input.
ingo@725: 
ingo@725: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java: Converted
ingo@725: 	  some class methods into static methods and added a new method to create an
ingo@725: 	  xml document which contains an error message for invalid user input.
ingo@725: 
ingo@725: 	* src/main/resources/lang/artifactMessages.properties,
ingo@725: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@725: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@725: 	  src/main/resources/lang/artifactMessages_de.properties: Added text for 
ingo@725: 	  error messages.
ingo@725: 
tim@724: 2010-03-09  Tim Englich  <tim.englich@intevation.de>
tim@724: 
tim@724: 	* doc/conf/queries.properties: 
tim@724: 	  Modified the Query for the lookup of the Tablename and the Whereclaus to
tim@724: 	  a choosen Layer. Now also the Templateid containing the Mapservice-ID and 
tim@724: 	  the Layer-Id was added to the Query.
tim@724: 	
tim@724: 	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java (templateExists): 
tim@724: 	  Add a method which will return if a given Template exists.
tim@724: 	  this could be used for determining if a specialized Template for a Layer 
tim@724: 	  is given or the Default one should be used.
tim@724: 	
tim@724: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (getWMS): 
tim@724: 	  Integrate lookup for MapFileTemplate for the different Layer.
tim@724: 	  If a special Template should be used it must be storde according to the 
tim@724: 	  following Syntax in the Folder which contain all other Mapfile-Templates.
tim@724: 	  
tim@724: 	  layer_{ID_MAPSERVICE}_${ID_LAYER}  e.g. layer_BSH_IMS_CONTIS_Resources_2
tim@724: 	  
tim@724: 	  If there is no Template matching the given Name the Defaulttemplates
tim@724: 	  layer_point,
tim@724: 	  layer_polygon or
tim@724: 	  layer_linestring 
tim@724: 	  will be used.
tim@724: 
tim@723: 2010-03-09  Tim Englich  <tim.englich@intevation.de>
tim@723: 
tim@723: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (out): 
tim@723: 	  Integrated ExceptionHandling if no Data was found for the given Layer.
tim@723: 	  If no data couuld be retrieved from the Database an XMl-Exceptionreport 
tim@723: 	  will be generated which must be analized by the Clients.
tim@723: 
ingo@656: 2010-03-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@656: 
ingo@656: 	  Issue186
ingo@656: 
ingo@656: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Adjusted
ingo@656: 	  signature of method to store min/max ranges in x and y direction in
ingo@656: 	  charts.
ingo@656: 
ingo@656: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Adjusted
ingo@656: 	  method call to signature which has been changed in AbstractXYLineChart.
ingo@656: 
ingo@656: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
ingo@656: 	  some empty methods which overrides methods from parent which should not be
ingo@656: 	  called on this class.
ingo@656: 
ingo@656: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java: Added
ingo@656: 	  methods to store vertical min/max ranges in charts. After adding a new
ingo@656: 	  series to this chart, we call prepareRangeAxis() to add an offset (5
ingo@656: 	  percent) between values and chart border.
ingo@656: 
tim@655: 2010-03-08  Tim Englich  <tim.englich@intevation.de>
tim@655: 
tim@655: 	* doc/conf/maptemplates/layer*.vm: 
tim@655: 	  Added some basetemplates for Lines, Points and Polygons that will be used 
tim@655: 	  if an WMS-layer of the Product Layer will be created.
tim@655: 	
tim@655: 	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java (writeDataToFile): 
tim@655: 	  Changed Method in taht way that it now will return the geometrytype of 
tim@655: 	  this Layer instead of an boolean-value.
tim@655: 	  Null will determine that an Exception occured during the 
tim@655: 	  Shapefilegeneration.
tim@655: 	
tim@655: 	* src/main/java/de/intevation/gnv/utils/MetaWriter.java (writeLayerMeta): 
tim@655: 	  Added a new Method for writing the Metadatafile for WMS published by 
tim@655: 	  the Product Layer.
tim@655: 	  Done som Refactoring work for reusing som Code-Snippets.
tim@655: 	
tim@655: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (getWMS): 
tim@655: 	  Added the Basic-Support for publishing an WMS-Layer.
tim@655: 	  The Lookup of the Attributes which has to be put into the Shapefile and 
tim@655: 	  the lookup of the Template which schould be used to symbolize the Layer 
tim@655: 	  has to be implemented. 
tim@655: 
ingo@654: 2010-03-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@654: 
ingo@654: 	  Issue195
ingo@654: 
ingo@654: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
ingo@654: 	  Use InputData stored at the current state to create chart titles.
ingo@654: 
ingo@653: 2010-03-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@653: 
ingo@653: 	  Issue189
ingo@653: 
ingo@653: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
ingo@653: 	  Changed insufficient key to store results for chart generation in cache.
ingo@653: 	  Use 'getHash()' method for this now, which have been implemented while
ingo@653: 	  refactoring the cache mechanism.
ingo@653: 
sascha@652: 2010-03-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@652: 
sascha@652: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
sascha@652: 	  src/main/java/de/intevation/gnv/state/StateBase.java,
sascha@652: 	  src/main/java/de/intevation/gnv/state/MeasurementState.java,
sascha@652: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@652: 	  Cleaned up imports.
sascha@652: 
ingo@651: 2010-03-05  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@651: 	
ingo@651: 	* doc/conf/conf.xml: Set ttl to a better value. It has been set to 2min by
ingo@651: 	  mistaken while working on mapfile generation.
ingo@651: 
ingo@650: 2010-03-05  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@650: 
ingo@650: 	  Issue185
ingo@650: 
ingo@650: 	* src/main/java/de/intevation/gnv/state/MeasurementState.java: Added missing
ingo@650: 	  parameter name in describe document.
ingo@650: 
tim@648: 2010-03-05  Tim Englich  <tim.englich@intevation.de>
tim@648: 
tim@649: 	* doc/conf/queries.properties: 
tim@649: 	  Added some more Queries which are required to serve the Requests of the 
tim@649: 	  Product Layer.
tim@649: 	
tim@649: 	* doc/conf/conf.xml: 
tim@649: 	  Changed the Sourceid of the FIS Contis because of Changes in the Database.
tim@649: 	
tim@649: 	* doc/conf/products/layer/conf.xml: 
tim@649: 	  Completed the Configuration for the Product Layer.
tim@649: 	  Added more Configurationdetails to the OutputStates.
tim@649: 	* src/main/resources/lang/artifactMessages*.properties:
tim@649: 	  Added the required ressources for the Product Layer and the FIS Contis and 
tim@649: 	  Nauthis into the Propertiesfiles.
tim@649: 	
tim@649: 	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java (writeDataToFile): 
tim@649: 	  Added an Method for writing g an Shapefile using an Collection of Results.
tim@649: 	  this Method must be extended that it could use the Result-object in an 
tim@649: 	  generic Way.
tim@649: 	  At this Moment it is only be Possible to write the Geometry into the 
tim@649: 	  Shapefile if it is given at the first Position of an Result.
tim@649: 	  All other Attributevalues will be ignored and not written into the Shapefile.
tim@649: 	
tim@649: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java: 
tim@649: 	  Added Support for writing Shapefiles and Export them as an Zipfile.
tim@649: 
tim@649: 2010-03-05  Tim Englich  <tim.englich@intevation.de>
tim@648: 	* doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: 
tim@648: 	  ISSUE 191: Pdf, svg and png are now available.
tim@648: 
ingo@646: 2010-03-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@646: 
ingo@646: 	* doc/conf/conf.xml: Added a section to configure MapServer relevant stuff.
ingo@646: 
ingo@646: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
ingo@646: 	  Store mapserver path in CallContext object to have access everywhere we
ingo@646: 	  have a CallContext object (avoids reading config.xml all the time we want
ingo@646: 	  to write mapfile).
ingo@646: 
ingo@646: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java:
ingo@646: 	  Added key to store MapServer information into CallContext and fetch it
ingo@646: 	  from it.
ingo@646: 
ingo@646: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@646: 	  Removed code to write meta information files (sourced out to MetaWriter).
ingo@646: 	  This has been done with the intend to write meta information of CONTIS and
ingo@646: 	  NAUTHIS using that class as well.
ingo@646: 
ingo@646: 	* src/main/java/de/intevation/gnv/utils/MetaWriter.java: Helper class to
ingo@646: 	  write meta information files used for mapfile generation. Write general
ingo@646: 	  information about our wms service (MapServer) into meta information file.
ingo@646: 	  This is used to give the user information about the place where he can
ingo@646: 	  find the wms service and his generated wms layer.
ingo@646: 
ingo@645: 2010-03-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@645: 
ingo@645: 	* doc/conf/maptemplates/flow-velocity_polygons.class.vm,
ingo@645: 	  doc/conf/maptemplates/water-levels_polygons.class.vm,
ingo@645: 	  doc/conf/maptemplates/water-temperature_polygons.class.vm,
ingo@645: 	  doc/conf/maptemplates/horizontalcrosssection_flow-velocity.vm,
ingo@645: 	  doc/conf/maptemplates/flow-velocity_isolines.class.vm,
ingo@645: 	  doc/conf/maptemplates/horizontalcrosssection_flow-velocity_isolines.vm,
ingo@645: 	  doc/conf/maptemplates/horizontalcrosssection_water-levels.vm,
ingo@645: 	  doc/conf/maptemplates/water-levels_isolines.class.vm,
ingo@645: 	  doc/conf/maptemplates/horizontalcrosssection_water-temperature.vm,
ingo@645: 	  doc/conf/maptemplates/water-temperature_isolines.class.vm,
ingo@645: 	  doc/conf/maptemplates/horizontalcrosssection_water-levels_isolines.vm,
ingo@645: 	  doc/conf/maptemplates/horizontalcrosssection_water-temperature_isolines.vm:
ingo@645: 	  Added template files for water-levels, water-temperature and
ingo@645: 	  flow-velocity.
ingo@645: 
ingo@644: 2010-03-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@644: 
ingo@644: 	  Issue171
ingo@644: 
ingo@644: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Changed
ingo@644: 	  the way to calculate the current distance from startpoint. We do not
ingo@644: 	  calculate the distance between the current point and the last point and
ingo@644: 	  add this value to a variable storing the total distance anymore, but
ingo@644: 	  we take the distance between the current point and the start point. On
ingo@644: 	  this way, we do not need a variable to store the total distance, because
ingo@644: 	  current point - first point == total distance. And there is no
ingo@644: 	  impreciseness in gaps of different layers (see issue171 for this).
ingo@644: 
ingo@643: 2010-03-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@643: 
ingo@643: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java: Added
ingo@643: 	  some more debug information for gap detection on grids.
ingo@643: 
ingo@643: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
ingo@643: 	  some more debug information for gap detection on grids.
ingo@643: 
ingo@642: 2010-03-03  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@642: 
ingo@642: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Log important
ingo@642: 	  values used for gap detection if debug level is enabled.
ingo@642: 
ingo@641: 2010-03-03  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@641: 
ingo@641: 	  Issue146
ingo@641: 
ingo@641: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@641: 	  Removed workaround to send a fake document if statistic is requested,
ingo@641: 	  which is not available for this product type.
ingo@641: 
ingo@640: 2010-03-03  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@640: 
ingo@640: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@640: 	  Trigger pdf creation for histograms when an 'out' call arrives with output
ingo@640: 	  mode 'histogram' and export mode 'pdf'.
ingo@640: 
ingo@640: 	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java:
ingo@640: 	  Implemented a method to export histograms as multipage pdf file.
ingo@640: 
ingo@640: 	* doc/conf/products/timeseries/conf_mesh.xml,
ingo@640: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@640: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@640: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@640: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@640: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@640: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added pdf
ingo@640: 	  support for histogram charts.
ingo@640: 
ingo@639: 2010-03-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@639: 
ingo@639: 	* src/main/java/de/intevation/gnv/state/OutputStateBase.java: Added an xpath
ingo@639: 	  expression for export modes.
ingo@639: 	
ingo@639: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@639: 	  Refactoring of 'out' to be able to add pdf and svg exports to histogram. 
ingo@639: 	  Now, there are just four output modes left (chart, histogram, csv, odv). 
ingo@639: 	  Export modes (pdf, svg, img) are part of these output modes.
ingo@639: 	  Implemented svg export for histogram charts.
ingo@639: 	
ingo@639: 	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java: Helper
ingo@639: 	  method to export histograms as svg via output stream.
ingo@639: 
ingo@639: 	* doc/conf/products/timeseries/conf_mesh.xml,
ingo@639: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@639: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@639: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@639: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@639: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@639: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@639: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added svg
ingo@639: 	  as export mode to histogram output in configuration files.
ingo@639: 
ingo@638: 2010-03-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@638: 
ingo@638: 	  Issue180
ingo@638: 
ingo@638: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/NorthSouthEastWestState.java:
ingo@638: 	  Removed CallMeta object from state which should not be serialized.
ingo@638: 	  Implemented a little workarround to save localized strings on this state.
ingo@638: 
ingo@637: 2010-03-01  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@637: 
ingo@637: 	  Issue182
ingo@637: 
ingo@637: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Display the selected
ingo@637: 	  value if there is no description available. WKT-strings will be displayed
ingo@637: 	  in the static ui part again.
ingo@637: 
ingo@636: 2010-03-01  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@636: 
ingo@636: 	  Issue179
ingo@636: 
ingo@636: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Removed
ingo@636: 	  code former used to append product select box.
ingo@636: 
ingo@636: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Just use all parent
ingo@636: 	  states to render the static part of the user interfact - not the current
ingo@636: 	  state itself!
ingo@636: 
ingo@635: 2010-03-01  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@635: 
ingo@635: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Removed
ingo@635: 	  methods which aren't used anymore (used before changing the caching
ingo@635: 	  mechanism).
ingo@635: 
ingo@634: 2010-02-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@634: 
ingo@634: 	* doc/conf/products/timeseries/conf_timeseriespoint.xml: Changed the
ingo@634: 	  configured state class from DefaultState to MeasurementState.
ingo@634: 
ingo@634: 	* doc/conf/queries.properties: Select parameterid from db as well, when
ingo@634: 	  fetching all measurement ids.
ingo@634: 
ingo@634: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Improved the way of
ingo@634: 	  searching for descriptions in selected values (used in describe document).
ingo@634: 
ingo@634: 	* src/main/java/de/intevation/gnv/state/MeasurementState.java: New state
ingo@634: 	  object to create a describe document which can be used to render a 
ingo@634: 	  measurement-parameter-matrix.
ingo@634: 
ingo@634: 	* src/main/java/de/intevation/gnv/state/InputData.java,
ingo@634: 	  src/main/java/de/intevation/gnv/state/DefaultInputData.java: Added a new
ingo@634: 	  method to fetch a description by key.
ingo@634: 	
ingo@634: 	* src/main/java/de/intevation/gnv/state/describedata/ExtendedKeyValueData.java:
ingo@634: 	  This class extends DefaultKeyValueDescibeData. It is used by
ingo@634: 	  MeasurementState to create a mapping between measurements and parameters. 
ingo@634: 	  Each key/value-pair has an extra attribute storing its parameter value.
ingo@634: 
ingo@633: 2010-02-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@633: 
ingo@633: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
ingo@633: 	  doc/conf/products/timeseries/conf_mesh.xml,
ingo@633: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@633: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@633: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@633: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@633: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@633: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@633: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Adapted
ingo@633: 	  configuration. Pdf, svg, image exports got an own section in the
ingo@633: 	  outputmodes node. Exports belong to an output mode, now. There are no
ingo@633: 	  outputmodes 'pdf', 'svg', 'png' existing anymore.
ingo@633: 
ingo@632: 2010-02-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@632: 
ingo@632: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
ingo@632: 	  Changed the way of using cache to store verticalcrosssection chart data.
ingo@632: 	  Now, this type of chart is working without cache, as well.
ingo@632: 
ingo@632: 2010-02-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@632: 
ingo@632: 	* src/main/java/de/intevation/gnv/state/OutputStateBase.java: Changed the
ingo@632: 	  way of using the cache to store chart / histogram data. Now, output modes
ingo@632: 	  'chart' and 'histogram' are working without cache.
ingo@632: 
ingo@630: 2010-02-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@630: 
ingo@630: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
ingo@630: 	  Better exception handling while cache configuration. The cache is not
ingo@630: 	  initialized, if no cache is configured in conf.xml. There would have been
ingo@630: 	  an exception without having a cache section in conf.xml. Now, it's
ingo@630: 	  possible to use GNV without using a cache.
ingo@630: 
ingo@630: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Changed logger name
ingo@630: 	  from irritating 'GNVArtifactBase' to 'StateBase'.
ingo@630: 
ingo@629: 2010-02-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@629: 
ingo@629: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@629: 	  Store request parameter in a map and put that map into other
ingo@629: 	  classes/methods instead of putting each request parameter into an own
ingo@629: 	  variable.
ingo@629: 
ingo@629: 	* src/main/java/de/intevation/gnv/chart/DefaultHistogram.java: Implemented
ingo@629: 	  logic to adjust number of bins in histogram charts. The user is able to
ingo@629: 	  choose between the number of bins or the size of a single bin.
ingo@629: 
ingo@629: 2010-02-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@629: 
ingo@629: 	* contrib/palette2polygonVM.xsl: New. XSLT transformation to transform a
ingo@629: 	  palette file into a style definition template used for mapfile creation.
ingo@629: 	  Usage:
ingo@629: 
ingo@629: 	  $ xsltproc contrib/palette2polygonVM.xsl  \
ingo@629: 	    doc/conf/palette/water-temperature.xml  \
ingo@629: 		> water-temperature.vm
ingo@629: 
ingo@627: 2010-02-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@627: 
ingo@627: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@627: 	  Removed a bug in pdf and svg creation. No data were drawn into chart.
ingo@627: 
ingo@626: 2010-02-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@626: 
ingo@626: 	* doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@626: 	  doc/conf/products/timeseries/conf_mesh.xml: Added an export mode section
ingo@626: 	  in output modes and added an export mode 'pdf' for showcase. This work is
ingo@626: 	  necessary to split up output modes (chart, histogram, ...) from export 
ingo@626: 	  modes (pdf, svg, png, ...). GUI components are now able to distinguish
ingo@626: 	  between these modes and render each mode in an own section.
ingo@626: 
ingo@626: 	* src/main/java/de/intevation/gnv/state/OutputStateBase.java: Read export
ingo@626: 	  modes from configuration node.
ingo@626: 
ingo@626: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Write
ingo@626: 	  export modes into describe document.
ingo@626: 
ingo@626: 	* src/main/java/de/intevation/gnv/state/DefaultOutputMode.java,
ingo@626: 	  src/main/java/de/intevation/gnv/state/OutputMode.java: Added export modes
ingo@626: 	  as java.util.List. 'getExportModes()' will deliver this list.
ingo@626: 
ingo@626: 	* src/main/java/de/intevation/gnv/state/DefaultExportMode.java,
ingo@626: 	  src/main/java/de/intevation/gnv/state/ExportMode.java: Object storing
ingo@626: 	  necessary information for export mode.
ingo@626: 
ingo@625: 2010-02-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@625: 
ingo@625: 	* doc/conf/conf.xml: Restructured configuration of shapfile and template
ingo@625: 	  directories. Moved map-generator part into gnv section.
ingo@625: 	  Moved shapefile-directory configuration to an own section and removed
ingo@625: 	  duplicated shapefile-directory config from map-generator.
ingo@625: 
ingo@625: 	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Adjusted
ingo@625: 	  xpath expressions regarding the changes in conf.xml. MapfileGenerator got
ingo@625: 	  some instance variables to store information about mapfile location,
ingo@625: 	  velocity log file and shapefile and template directories. This avoids
ingo@625: 	  reading conf.xml every single time while updating the mapfile.
ingo@625: 
ingo@625: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
ingo@625: 	  Adjusted xpath expression regaring the changes of shapefile-directory in
ingo@625: 	  conf.xml.
ingo@625: 
ingo@624: 2010-02-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@624: 
ingo@624: 	*  doc/conf/conf.xml: Added path for velocity logfile.
ingo@624: 
ingo@624: 	* doc/conf/maptemplates/horizontalcrosssection_salinity.vm,
ingo@624: 	  doc/conf/maptemplates/horizontalcrosssection_salinity_isolines.vm: Removed
ingo@624: 	  absolute path in style includes.
ingo@624: 
ingo@624: 	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Improved
ingo@624: 	  velocity configuration regarding absolute pathes and logfile. 
ingo@624: 
sascha@623: 2010-02-21	Sascha L. Teichmann <sascha.teichmann@intevation.de>
sascha@623: 
sascha@623: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@623: 	  Fixed file handle leak when writing meta data.
sascha@623: 
sascha@623: 	* src/main/java/de/intevation/gnv/state/StateBase.java,
sascha@623: 	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
sascha@623: 	  src/main/java/de/intevation/gnv/utils/MapfileGenerator.java,
sascha@623: 	  src/main/java/de/intevation/gnv/chart/DefaultHistogram.java,
sascha@623: 	  src/main/java/de/intevation/gnv/chart/AbstractHistogram.java,
sascha@623: 	  src/main/java/de/intevation/gnv/exports/ChartExportHelper.java:
sascha@623: 	  Clean up imports.
sascha@623: 
ingo@622: 2010-02-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@622: 
ingo@622: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@622: 	  Write a meta information file after shapefile writing is finished. These 
ingo@622: 	  meta information are used to map the type of shapefiles to a specific 
ingo@622: 	  template and fill these layer-templates with data.
ingo@622: 
ingo@622: 	* src/main/java/de/intevation/gnv/wms/LayerInfo.java: Class for storing meta
ingo@622: 	  information for mapfile creation.
ingo@622: 	
ingo@622: 	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Implemented
ingo@622: 	  method stubs. The MapfileGenerator starts searching for meta information 
ingo@622: 	  in filesystem after update() is called. These information are used to to 
ingo@622: 	  fill templates for the supported layers and a mapfile will be created out
ingo@622: 	  of this.
ingo@622: 
ingo@622: 	  TODO: Configure Velocity.
ingo@622: 
ingo@622: 	* pom.xml: Added Apache Velocity 1.6.1 for templating mapfiles.
ingo@622: 
ingo@622: 	* doc/conf/conf.xml: Adapted a section to configure necessary directories
ingo@622: 	  and filenames for mapfile generation.
ingo@622: 	
ingo@622: 	* doc/conf/maptemplates/mapfile.vm: Base template for mapfile. All required
ingo@622: 	  layers will be included into this template.
ingo@622: 
ingo@622: 	* doc/conf/maptemplates/horizontalcrosssection_salinity_isolines.vm,
ingo@622: 	  doc/conf/maptemplates/horizontalcrosssection_salinity.vm,
ingo@622: 	  doc/conf/maptemplates/salinity_isolines.class.vm,
ingo@622: 	  doc/conf/maptemplates/salinity_polygons.class.vm: Template support for 
ingo@622: 	  salinity in horizontal crosssection wms.
ingo@622: 
ingo@621: 2010-02-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@621: 
ingo@621: 	* doc/conf/conf.xml: Added configuration section for writing mapfiles.
ingo@621: 
ingo@621: 	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Singleton 
ingo@621: 	  generator for writing mapfiles. It runs in an own thread and has an 
ingo@621: 	  'update' method which triggers the generator to search the filesystem for 
ingo@621: 	  shapefiles and meta information and update mapfiles out of these 
ingo@621: 	  information. A 'main' method can be invoked to update the mapfile without
ingo@621: 	  an running artifact server.
ingo@621: 
ingo@621: 	  TODO: Implement method stubs.
ingo@621: 
ingo@621: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@621: 	  Call MapfileGenerator when writing or removing shapefiles (endOfLife).
ingo@621: 
ingo@618: 2010-02-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@618: 
ingo@618: 	* doc/conf/products/timeseries/conf_mesh.xml,
ingo@618: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@618: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@618: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@618: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@618: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@618: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@618: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added
ingo@618: 	  histogram as output mode.
ingo@618: 	
ingo@618: 	* doc/conf/charttemplate.xml: Added color of bars in histograms.
ingo@618: 
ingo@617: 2010-02-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@617: 
ingo@617: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@617: 	  Added code path to create and return histograms.
ingo@617: 
ingo@617: 	* src/main/java/de/intevation/gnv/chart/AbstractHistogram.java,
ingo@617: 	  src/main/java/de/intevation/gnv/chart/DefaultHistogram.java: New. Classes
ingo@617: 	  for creating histograms. Each histogram contains exactly one parameter.
ingo@617: 
ingo@617: 	* src/main/java/de/intevation/gnv/chart/XMLChartTheme.java: Added parsing
ingo@617: 	  of histogram bar color.
ingo@617: 
ingo@617: 	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java: Added a
ingo@617: 	  new funcion to copy all histograms into a single image and send it to
ingo@617: 	  output stream.
ingo@617: 
ingo@617: 	* src/main/java/de/intevation/gnv/histogram/HistogramHelper.java: New. Added
ingo@617: 	  helper function to split the result collections for each parameter and for 
ingo@617: 	  each measurement into pieces.
ingo@617: 
tim@616: 2010-02-12  Tim Englich  <tim.englich@intevation.de>
tim@616: 
tim@616: 	* doc/conf/queries.properties: 
tim@616: 	  Integrated Queries for the Product Layer.
tim@616: 
tim@616: 	* doc/conf/conf.xml: 
tim@616: 	  Integrated the new FIS Nauthis and Contis and the required Link to the
tim@616: 	  Configuration for the new Product Layer.
tim@616: 
tim@616: 	* doc/conf/products/layer/conf.xml: 
tim@616: 	  Added Configuration for the new Product Layer.
tim@616: 	* src/main/java/de/intevation/gnv/state/OutputStateBase.java (getData): 
tim@616: 	  Changed Methodsignature from private to protected ro make it available
tim@616: 	  for extended Classes.
tim@616: 
tim@616: 	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (LayerOutputState): 
tim@616: 	  Added new State for generating the Output for the Product Layer.
tim@616: 	  This Class is not jet completly implemented and will not return any
tim@616: 	  result at this Moment.
tim@616: 
tim@616: 	* src/main/java/de/intevation/gnv/layer/LayerArtifact.java: 
tim@616: 	  Added new Artifactclass for the Product Layer.
tim@616: 
ingo@615: 2010-02-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@615: 
ingo@615: 	* src/main/java/de/intevation/gnv/state/InputData.java,
ingo@615: 	  src/main/java/de/intevation/gnv/state/DefaultInputData.java: Descriptions
ingo@615: 	  of values are stored in an array, because one InputData object can contain
ingo@615: 	  many data.
ingo@615: 
ingo@615: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Get a description
ingo@615: 	  for each input parameter and use an array to store all descriptions in an
ingo@615: 	  InputData object. Result of this is, that all user selected parameters are
ingo@615: 	  displayed and charts are well drawn again.
ingo@615: 
ingo@615: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@615: 	  Split up data values stored in InputData objects in search mechanism for
ingo@615: 	  specific parameters and put them all as KeyValueDescibeData objects into a
ingo@615: 	  collection.
ingo@615: 
ingo@614: 2010-02-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@614: 
ingo@614: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Removed
ingo@614: 	  useless method calls which removed elements from cache, because each state
ingo@614: 	  puts its own elements into cache - not in one big piece.
ingo@614: 
ingo@614: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Adapted 'reset'
ingo@614: 	  method. It removes the former user selection for this state, only.
ingo@614: 
tim@613: 2010-02-12  Tim Englich  <tim.englich@intevation.de>
tim@613: 
tim@613: 	* doc/conf/products/timeseries/conf_mesh.xml: 
tim@613: 	  Added new Transitions so that the State for entering a CoordinateValue will 
tim@613: 	  only be shown if no Point was inserted during the Instantiation of an Artifact.
tim@613: 	  (MapViewer-Interface)
tim@613: 	  The could be used in the FIS Modeldata using the Product TimeSeries. You also have
tim@613: 	  to use a Region in the RegionFilter.
tim@613: 
tim@612: 2010-02-12  Tim Englich  <tim.englich@intevation.de>
tim@612: 
tim@612: 	* src/main/java/de/intevation/gnv/state/PreSettingsTransferState.java: 
tim@612: 	  This new State ist Implemented for the Case that Values of the PreSettings 
tim@612: 	  has to be used instead of InputValues. This States will look into the 
tim@612: 	  Presettings and put Values identified by the configurable Names into the 
tim@612: 	  InputData-Collection.
tim@612: 	  For the Configuration you can insert the following XML-Element into the 
tim@612: 	  Configuration of a State.
tim@612: 	  <presettings-transfer presetting="geometry" inputvalue="mesh_coordinate"/>
tim@612: 	
tim@612: 	* src/main/java/de/intevation/gnv/state/StateBase.java (getPreSettings),
tim@612: 	  src/main/java/de/intevation/gnv/state/State.java (getPreSettings): 
tim@612: 	  Added a getter-method for the PreSettings that are set at the State.
tim@612: 	  Using this way e.g the PresettingsValueCompareTransition can reach the 
tim@612: 	  Settings an can evaluate them.
tim@612: 	  
tim@612: 	* src/main/java/de/intevation/gnv/transition/PresettingsValueCompareTransition.java (operator): 
tim@612: 	  This transition will have a look at the Values which where ste during the 
tim@612: 	  instantiation of an Artifact. If a defined Value is given an the Value is 
tim@612: 	  Equal to the configured Value using the configured Operator the Transition 
tim@612: 	  to the configured State could be used. Otherwise the Transition could not
tim@612: 	  be used.
tim@612: 
ingo@611: 2010-02-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@611: 
ingo@611: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@611: 	  Replaced method call which removes non selected parameters from parameter
ingo@611: 	  list. At this time, there are only selected parameters in the list, so
ingo@611: 	  there is no need to clean it. The result: Charts are drawn.
ingo@611: 
ingo@610: 2010-02-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@610: 
ingo@610: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Declared method as
ingo@610: 	  'protected' to be allowed to use it in derived classes.
ingo@610: 
ingo@610: 	* src/main/java/de/intevation/gnv/state/OutputStateBase.java: Changed the
ingo@610: 	  key to store into cache and restore data from it. Added a workarround to
ingo@610: 	  find min and max value fields in InputData.
ingo@610: 
ingo@610: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@610: 	  Adapted the search mechanism for specific parameter collections. This is
ingo@610: 	  required, because the the former mechanism searched in the big cache blob
ingo@610: 	  - which doesn't exist anymore.
ingo@610: 
ingo@610: 	  TODO: Repair chart generation. Although there are results existing for
ingo@610: 	  chart generation, no chart in drawn.
ingo@610: 
ingo@609: 2010-02-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@609: 
ingo@609: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Improved hash
ingo@609: 	  creation of each state. The hash is created using the uuid, state-id and
ingo@609: 	  the hash code of the input data required for the sql statement.
ingo@609: 
ingo@608: 2010-02-10  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@608: 
ingo@608: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Append description
ingo@608: 	  to InputData objects and use it while creating the describe document. The
ingo@608: 	  description is displayed in the static GUI part. A nice side effect of
ingo@608: 	  this is, that the subarea selection re-appears in the static GUI part.
ingo@608: 	  Even if no subarea has been selected. Furthermore, removed some methods 
ingo@608: 	  which became useless after refactoring the caching and rendering
ingo@608: 	  mechanism.
ingo@608: 
ingo@608: 	* src/main/java/de/intevation/gnv/state/MinMaxState.java: Adapted method
ingo@608: 	  signature regarding changes in upper class.
ingo@608: 
ingo@607: 2010-02-10  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@607: 	
ingo@607: 	* src/main/java/de/intevation/gnv/state/State.java: New method 'feed' in
ingo@607: 	  this interface. It should be used to feed this state with new data 
ingo@607: 	  selected by the user.
ingo@607: 
ingo@607: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Use new
ingo@607: 	  method 'feed' instead of 'putInputData' to feed the state with new data.
ingo@607: 
ingo@607: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/NorthSouthEastWestState.java,
ingo@607: 	  src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java,
ingo@607: 	  src/main/java/de/intevation/gnv/state/SingleInputState.java: Method
ingo@607: 	  'purifyResult' just cleans values from database and returns it. DO NOT
ingo@607: 	  put these results into cache at this place!
ingo@607: 	
ingo@607: 	* src/main/java/de/intevation/gnv/state/InputData.java,
ingo@607: 	  src/main/java/de/intevation/gnv/state/DefaultInputData.java: Some new
ingo@607: 	  methods to store objects in such an InputData object. Objects are used to
ingo@607: 	  store MinMaxDescribeData objects for example. And further new methods to
ingo@607: 	  store a description for each InputData object. This is used to render the
ingo@607: 	  static GUI part. Until now, this object stored the id's of the
ingo@607: 	  selected parameter, only - which are useless to show in GUI. The
ingo@607: 	  description should be the string shown in the GUI, later.
ingo@607: 
ingo@607: 	* src/main/java/de/intevation/gnv/state/MinMaxState.java: This type of state
ingo@607: 	  overrides 'feed' and 'appendToStaticNode'. 'feed' takes user input and
ingo@607: 	  parses min and max values from it (used for time periods for example).
ingo@607: 	  'appendToStaticNode' will append these fields to the static GUI part.
ingo@607: 
ingo@607: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Removed the big
ingo@607: 	  cache blob and parted it into pieces. Each state will now put its
ingo@607: 	  database data into cache. In this way, we are able to reuse these data
ingo@607: 	  when the user steps back in history. Data, inserted by the user, will be
ingo@607: 	  stored via 'feed'. Special input fields like multi selection or ranges
ingo@607: 	  need to override this method to parse the input data and store them in
ingo@607: 	  special objects.
ingo@607: 
ingo@607: 	  TODOs:
ingo@607: 		- The output modes are based on this big cache blob and search for
ingo@607: 		  parameterid, measurementid and dateid in it.
ingo@607: 		  TimeSeriesOutputState.getCollection() needs to be adapted!
ingo@607: 
tim@606: 2010-02-09  Tim Englich  <tim.englich@intevation.de>
tim@606: 
tim@606: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultFIS.java (addParameter),
tim@606: 	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/FIS.java (addParameter): 
tim@606: 	  Added the possibility to add Parameters to an existing FIS.
tim@606: 	  
tim@606: 	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java (getFIS): 
tim@606: 	  Added the support of the usecase that one FIS can be identified by different
tim@606: 	  MapServices. In that case the parameters will be merged into the existing 
tim@606: 	  FIS.
tim@606: 
ingo@605: 2010-02-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@605: 
ingo@605: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Do not query the
ingo@605: 	  cache / database for rendering the static part of the describe document -
ingo@605: 	  just take the input data stored at each state.
ingo@605: 
ingo@605: 	  TODOs:
ingo@605: 		- Store 'description' of each chosen value. At the moment we are able to
ingo@605: 		  render an id of value, only.
ingo@605: 		- Take care of input elements with multi selection.
ingo@605: 		- The subarea node disappears if we don't select any.
ingo@605: 
tim@604: 2010-02-09  Tim Englich  <tim.englich@intevation.de>
tim@604: 
tim@604: 	* doc/conf/conf.xml: 
tim@604: 	  Switched the usage of DummyMetaDataService to MetaDataService because
tim@604: 	  the Service is now able to work properly.
tim@604: 	* doc/conf/queries.properties: 
tim@604: 	  Added the required SQL-Statements for fetching the Metadata from the 
tim@604: 	  Database.
tim@604: 	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java:
tim@604: 	  Added the Database-Lookup of FIS and Parameters.
tim@604: 	  Now the Metadata will be looked up using the specified Databaseschema as
tim@604: 	  defined in doc/schema/externalinterface_schema.sql
tim@604: 	* src/main/java/de/intevation/gnv/artifacts/services/DummyMetaDataService.java 
tim@604: 	  Removed Dummyservice because it is not required any more.
tim@604: 
ingo@603: 2010-02-05  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@603: 
ingo@603: 	  Issue170
ingo@603: 	
ingo@603: 	* pom.xml: Changed log4j version to 1.2.14 (later version
ingo@603: 	  causes errors and breaks maven build process).
ingo@603: 
tim@600: 2010-02-05  Tim Englich  <tim.englich@intevation.de>
tim@600: 
tim@602: 	* pom.xml: 
tim@602: 	  Changed from ArcSDE version 9.2.5 to Version 9.3
tim@602: 	  You have to Install the required Libraries as described in
tim@602: 	  https://bsh-intern.intevation.de/Mavenbuildprozess
tim@602: 	  
tim@602: 2010-02-05  Tim Englich  <tim.englich@intevation.de>
tim@601: 	* doc/schema/externalinterface_testdata.sql: 
tim@601: 	  Changed the Testdata for layerhasparameter according to the the changes of 
tim@601: 	  the Tablestructure.
tim@601: 	* doc/schema/externalinterface_schema.sql: 
tim@601: 	  Changed id_layer Column in Table layerhasparameter from literal to number.
tim@601: 	  And added Column Layername to this Table.
tim@601: 	  This is nessessary because the Identifcation of an Layer is not the name 
tim@601: 	  but the ID.
tim@601: 
tim@601: 2010-02-05  Tim Englich  <tim.englich@intevation.de>
tim@600: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: 
tim@600: 	  ISSUE167
tim@600: 	  Fixed Bug in Konfiguration. Now Regionfilters can be used without running 
tim@600: 	  in an Exception.
tim@600: 
tim@599: 2010-02-02  Tim Englich  <tim.englich@intevation.de>
tim@599: 
ingo@603: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
tim@599: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
tim@599: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
tim@599: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
tim@599: 	  doc/conf/products/timeseries/conf_mesh.xml,
tim@599: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
tim@599: 	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
tim@599: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml,
tim@599: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
tim@599: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml: 
tim@599: 	  Added the possibility to use the Informations (PreSettings) which are
tim@599: 	  send using the MapViewer-Interface in all States which are responsible to
tim@599: 	  manage the choice of Parameters during the Workflows of GNV-Artifacts.
tim@599: 
tim@598: 2010-02-02  Tim Englich  <tim.englich@intevation.de>
tim@598: 
tim@598: 	* src/main/java/de/intevation/gnv/state/DefaultInputData.java (splitValue),
tim@598: 	  src/main/java/de/intevation/gnv/state/InputData.java (splitValue): 
tim@598: 	  Added Method which spilts the Values using the same Separator which is
tim@598: 	  used to concart the Values.
tim@598: 
tim@598: 	* src/main/java/de/intevation/gnv/state/StateBase.java: 
tim@598: 	  Added the usage of the Presettings during the Loading of the Data
tim@598: 	  which is nessesary to describe the current State.
tim@598: 	  If Values are given in the Presettings which are identified by the 
tim@598: 	  name wwhich is specified in the Configurationelement presettings-name
tim@598: 	  only the Intersection of the fetched Objects and the PresettingsObjects 
tim@598: 	  are used.
tim@598: 
tim@598: 	* src/main/java/de/intevation/gnv/state/State.java (setPreSettings): 
tim@598: 	  Added new Method setPreSettings to be Able to put the Presettings from the 
tim@598: 	  current Artifact to the different States.
tim@598: 
tim@598: 	* src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java (setup): 
tim@598: 	  The Method Setup now extracts the given PreSettingsparameter from the 
tim@598: 	  XML-Document and put them to the ProductArtifacts which are instantiated in 
tim@598: 	  the advance()-Method using the Methods of the PreSettingArtifact-Interface.
tim@598: 
tim@598: 	* src/main/java/de/intevation/gnv/artifacts/PreSettingArtifact.java (setPreSettings): 
tim@598: 	  New interfacedefinition. Artifacts which are implementing this Interface 
tim@598: 	  are able to exchange the given Presettings using the given getter and 
tim@598: 	  setter methods of this Interface.
tim@598: 
tim@598: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: 
tim@598: 	  The GNVArtifactBase now implements the Interface PreSettingsArtifacts.
tim@598: 	  So it is able to manage Data which is set during the construction of an 
tim@598: 	  new ArtifactInstance.
tim@598: 	  It also put the PreSettings-data to the different States. So that they are 
tim@598: 	  able to use it during their livecycle.
tim@598: 
tim@595: 2010-02-01  Tim Englich  <tim.englich@intevation.de>
tim@595: 
tim@597: 	* doc/conf/conf.xml: 
tim@597: 	  Added the Configuration-node for the MetaDataService into the Configuration
tim@597: 	  of the GNV-Artifact-Restserver.
tim@597: 	  At tis Moment it is only useful to use the DummyMetaDataService.
tim@597: 
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultLayer.java: 
tim@597: 	  Defaultimplementation of the Interface Layer.
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/Layer.java: 
tim@597: 	  Interfacedefinition for Objects that represents Layer and GroupLayer that 
tim@597: 	  where parsed from the XML-Document which was sent to the MetaDataService
tim@597: 
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultMapService.java: 
tim@597: 	  Defaultimplementation of the Interface MapService.
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/MapService.java: 
tim@597: 	  Interfacedefinition for Objects that represents Mapservices that where 
tim@597: 	  parsed from the XML-Document which was sent to the MetaDataService.
tim@597: 	
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultParameter.java: 
tim@597: 	  Defaultimplementation of the Interface Parameter.
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/Parameter.java:
tim@597: 	  Interfacedefinition for representing an Parameter which belongs to an FIS.
tim@597: 
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultFIS.java: 
tim@597: 	  Defaultimplementation of the Interface FIS.
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/FIS.java: 
tim@597: 	  Interfacedefinition for representing an FIS which will be used as an 
tim@597: 	  ResultValue of the MetaDataService-Processing.
tim@597: 
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataServiceException.java: 
tim@597: 	  Exceptionclass for classifiing Exception which occurs during the processing
tim@597: 	  of an MetaDataService-Call.
tim@597: 
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/DummyMetaDataService.java: 
tim@597: 	  DummyClass of an MetaDataService. This Class can be use to simulate an 
tim@597: 	  MetaDataService-Call until the required Metadata for the prossessing are
tim@597: 	  available in the Database-Backend.
tim@597: 	  This Class only returns the given Mapservices as an FIS and the Layer 
tim@597: 	  as an Parameter to a given FIS.
tim@597: 
tim@597: 	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java: 
tim@597: 	  This Class is an Implementation of the de.intevation.artifacts.Service 
tim@597: 	  Interface. This Service should provide Informations which FIS are available 
tim@597: 	  for given Mapservices an which FIS are intersecting a given Region
tim@597: 	  These Informations are required according to definition of the MapViewer
tim@597: 	  Interface.
tim@597: 	  
tim@597: 2010-02-01  Tim Englich  <tim.englich@intevation.de>
tim@597: 	
tim@595: 	* src/test/java/de/intevation/gnv/artifacts/TestArtifactDatabase.java (createArtifactWithFactory): 
tim@595: 	  Fixed Compilance-Errors triggered by Interface-Modifications in the 
tim@595: 	  Artifact-Module.
tim@595: 
tim@595: 	* src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointVerticalProfileTestCase.java (testArtifact),
tim@596: 	  src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointTimeSeriesTestCase.java (testArtifact),
tim@596: 	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalProfileTestCase.java (testArtifact),
tim@596: 	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java (testArtifact),
tim@596: 	  src/test/java/de/intevation/gnv/artifacts/MeshTimeSeriesTestCase.java (testArtifact),
tim@596: 	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalProfileTestCase.java (testArtifact),
tim@596: 	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java (testArtifact),
tim@596: 	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointVerticalProfileTestCase.java (testArtifact),
tim@596: 	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointHorizontalProfileTestCase.java (testArtifact):
tim@595: 	  Refactored Artifact-Instantiation using the new createArtifact()-Method of the super-Class.
tim@595: 
tim@595: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java (createArtifact)
tim@595: 	  Added Method for instantiating an new Artifact using the given Artifactfactory.
tim@595: 	  Also fixed the Compilance-Errors triggered by Interface-Modifications in the 
tim@595: 	  Artifact-Module.
tim@595: 
tim@594: 2010-02-01  Tim Englich  <tim.englich@intevation.de>
tim@594: 
tim@594: 	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java (setup),
tim@594: 	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java (setup), 
tim@594: 	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java (setup),
tim@594: 	  src/main/java/de/intevation/gnv/profile/horizontalcrosssection/HorizontalCrossSectionMeshArtifact.java (setup), 
tim@594: 	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java (setup),
tim@594: 	  src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java (setup),
tim@594: 	  src/main/java/de/intevation/gnv/artifacts/GNVProductArtifactFactory.java (createArtifact),
tim@594: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (setup): 
tim@594: 	  Changed Method signatures because of Interfacemodifications in the 
tim@594: 	  Artifact-Module. Now it is possible to retrieve the XML-Document which was
tim@594: 	  send by an Client during the create-Call. So it is possible to get further
tim@594: 	  Informations which could be used during the livecycle of an Artifact.
tim@594: 	
tim@594: 
sascha@593: 2010-01-31  Sascha L. Teichmann <sascha.teichmann@intevation.de>
sascha@593: 
sascha@593: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
sascha@593: 	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java,
sascha@593: 	  doc/conf/conf.xml: Added configuration for extrapolation in "Horizontalschnitte".
sascha@593: 
sascha@593: 	  Use gnv/horizontal-cross-section/extrapolation/@rounds with 
sascha@593: 	  integer rounds > 0 to turn extrapolation on (default: 0).
sascha@593: 	  Rounds is a number of successive point extrapolations which means that 
sascha@593: 	  the grid is successively filled with missing points based on prior rounds. 
sascha@593: 	  The larger 'rounds' get more gaps are filled synthetic generated points.
sascha@593: 
sascha@593: 	  Set this to 2 to get good results for the model data FIS.
sascha@593: 
sascha@593: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@593: 	  Foward configuration to area interpolation.
sascha@593: 
sascha@593: 	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java: 
sascha@593: 	  Foward configuration to GridCell.
sascha@593: 
sascha@593: 	* src/main/java/de/intevation/gnv/math/Point2d.java: Added method to extrapolate
sascha@593: 	  point along a line spanned by two points.
sascha@593: 	  Calculate Inverse Distance Weighting (IDW) for a given set of points on
sascha@593: 	  z components. Added method to check if set of points are near a given
sascha@593: 	  point.
sascha@593: 
sascha@593: 	* src/main/java/de/intevation/gnv/math/GridCell.java: Before building the
sascha@593: 	  i/j cells the grid is filled with synthetic generated points. The 
sascha@593: 	  position is estimated from the neighboring points. The parameter values
sascha@593: 	  are calculated by IDW. Some care is taken to avoid invalid grid topologies.
sascha@593: 
sascha@593: 	  TODO: Implement this for the "Profillschnitt" too to keep the inner
sascha@593: 	  symmetry.
sascha@593: 
tim@591: 2010-01-29  Tim Englich  <tim.englich@intevation.de>
tim@591: 
tim@591: 	* src/test/java/de/intevation/gnv/artifacts/MeshVerticalProfileTestCase.java (testArtifact),
tim@591: 	* src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java (testArtifact),
tim@591: 	* src/test/java/de/intevation/gnv/artifacts/MeshHorizontalProfileTestCase.java (testArtifact),
tim@591: 	* src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java (testArtifact):
tim@591: 	  Increases the number of steps that has to be done for the different products plus one.
tim@591: 	  
tim@591: 	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_out_statistics.xml,
tim@591: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_out_odv.xml,
tim@591: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_out_csv.xml,
tim@591: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_out_chart.xml,
tim@591: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_feed.xml,
tim@591: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_advance.xml,
tim@591: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_feed.xml,
tim@591: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_advance.xml,
tim@591: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_09_advance.xml:
tim@591: 	  Added Advance and Feed-Document for the State Year.
tim@591: 	  Changed the Advance to the State Year.
tim@591: 	  Moves the Last state to *11*.xml Documents.
tim@591: 	
tim@591: 	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_out_odv.xml,
tim@591: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_out_csv.xml,
tim@591: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_out_chart.xml,
tim@591: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_feed.xml,
tim@591: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_advance.xml,
tim@591: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_06_feed.xml,
tim@591: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_06_advance.xml,
tim@591: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_05_advance.xml:
tim@591: 	  Added Advance and Feed-Document for the State Year.
tim@591: 	  Changed the Advance to the State Year.
tim@591: 	  Moves the Last state to *07*.xml Documents.
tim@591: 	
tim@591: 	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_out_statistics.xml,
tim@591: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_out_odv.xml,
tim@591: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_out_csv.xml,
tim@591: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_out_chart.xml,
tim@591: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_advance.xml,
tim@591: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_feed.xml,
tim@591: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_advance.xml,
tim@591: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_09_advance.xml:
tim@591: 	  Added Advance and Feed-Document for the State Year.
tim@591: 	  Changed the Advance to the State Year.
tim@591: 	  Moves the Last state to *11*.xml Documents.
tim@591: 	
tim@591: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_08_out_zip.xml,
tim@591: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_08_out_wms.xml,
tim@591: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_08_feed.xml,
tim@591: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_08_advance.xml,
tim@591: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_feed.xml,
tim@591: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_advance.xml,
tim@591: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_advance.xml: 
tim@591: 	  Added Advance and Feed-Document for the State Year.
tim@591: 	  Changed the Advance to the State Year.
tim@591: 	  Moves the Last state to *08*.xml Documents.
tim@591: 
hans@538: 2010-01-27  Hans Plum <hans@intevation.de>
hans@538: 
hans@538: 	RELEASE 0.4
hans@538: 
hans@538: 	* Changes, NEWS, ChangeLog: Summarized activities
hans@538: 
sascha@539: 2010-01-27  Sascha L. Teichmann <sascha.teichmann@intevation.de>
sascha@539: 
sascha@539: 	* Changes: Reordered items a bit
sascha@539: 
ingo@537: 2010-01-27  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@537: 
ingo@537: 	  Issue164
ingo@537: 
ingo@537: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
ingo@537: 	  Applied patch of SLT to remove shape files and directories of out-dated
ingo@537: 	  artifacts. Therefor we need to store the artifact after an 'out' operation 
ingo@537: 	  - which is actually a read only operation - explicitly into the artifact
ingo@537: 	  database to keep the directory path.
ingo@537: 
ingo@536: 2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@536: 
ingo@536: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@536: 	  Calculate results after reaching the final state and store them in cache.
ingo@536: 	  This avoids long latencies for chart creation or exports.
ingo@536: 
ingo@535: 2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@535: 
ingo@535: 	  Issue158
ingo@535: 
ingo@535: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@535: 	  Replaced old way to create ChartLabel objects with a method call
ingo@535: 	  'createChartLabels()'.
ingo@535: 
ingo@534: 2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@534: 
ingo@534: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
ingo@534: 	  Set white border (border arround drawing area) as default for 
ingo@534: 	  'Profilschnitte'.
ingo@534: 
ingo@533: 2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@533: 
ingo@533: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
ingo@533: 	  Calculate results after reaching the final state and store them in cache.
ingo@533: 	  This avoids long latencies for chart creation or exports.
ingo@533: 
ingo@532: 2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@532: 
ingo@532: 	  Issue162
ingo@532: 
ingo@532: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
ingo@532: 	  doc/conf/queries.properties: Adapted transition model. Splitted date
ingo@532: 	  selection of 'Horizontalschnitte' into two steps.
ingo@532: 
ingo@531: 2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@531: 
ingo@531: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml: Removed csv export
ingo@531: 	  from product 'Profilschnitt'.
ingo@531: 
ingo@530: 2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@530: 
ingo@530: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java: Fixed an
ingo@530: 	  ArrayIndexOutOfBounds-exception which occured if there are less than two
ingo@530: 	  data points.
ingo@530: 
ingo@530: 2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@530: 
ingo@530: 	  Issue161
ingo@530: 
ingo@530: 	* doc/conf/products/verticalprofile/conf_mesh.xml: Adapted transition model.
ingo@530: 	  Splitted date selection into two steps.
ingo@530: 
sascha@528: 2010-01-25	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@528: 
sascha@528: 	Fix/Workaround for gnv/issue159
sascha@528: 
sascha@528: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
sascha@528: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
sascha@528: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
sascha@528: 	  Deactivated the index buffer by default because applying it gives to
sascha@528: 	  less data points in some circumstances. When processing the 
sascha@528: 	  "horizontalen Schnittprofile", the "Profilschnitte" and the
sascha@528: 	  "Horizontalschnitte" the whole set of mesh cells for
sascha@528: 	  the given parameters are retrieved. This results in much
sascha@528: 	  more traffic from database (~ 10x) but seems not to be much slower.
sascha@528: 	  The memory consumption increases accordingly.
sascha@528: 
sascha@528: 	  To turn the index buffer on again use the boolean system properties:
sascha@528: 
sascha@528: 		  "gnv.horizontal.profile.mesh.cross.index.buffer"
sascha@528: 		  "gnv.vertical.cross.section.index.buffer"
sascha@528: 		  "gnv.horizontal.profile.mesh.cross.index.buffer"
sascha@528: 
sascha@528: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Because much
sascha@528: 	  more data is processed a more sophisticated point culling strategy is
sascha@528: 	  implemented now. 
sascha@528: 	  
sascha@528: 	  If the number of points are higher than a given threshold (system property 
sascha@528: 	  "gnv.interpolation2d.cull.point.threshold", default: 1000) a culling is 
sascha@528: 	  performed. Two cases:
sascha@528: 
sascha@528: 	  a) given a path P ("horizontales Schnittprofil", "Profilschnitt")
sascha@528: 	     Calculates a bounding box B for P and continues with (b).
sascha@528: 
sascha@528: 	  b) a bounding box B ("Horizontalschnitt", and above after (a))
sascha@528: 	     Calculates a bounding box C for the input points. If the
sascha@528: 		 area of B is greater than 80% of the area of C no culling is
sascha@528: 		 performed. Else B is extended by 10% in each direction.
sascha@528: 		 If the new area of B is smaller than 10% of the area of C
sascha@528: 		 B is adjusted to have at least 10% the size of C.
sascha@528: 
sascha@528: 	  All input points that are not inside B are culled. Afterwards the
sascha@528: 	  i/j grid cell units are created and pushed into a spatial index
sascha@528: 	  as described below.
sascha@528: 
ingo@527: 2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@527: 
ingo@527: 	  Issue157
ingo@527: 
ingo@527: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
ingo@527: 	  Added method to adjust background color of this chart.
ingo@527: 
ingo@527: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
ingo@527: 	  Set white background as all other charts have.
ingo@527: 	  
ingo@526: 2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@526: 
ingo@526: 	  Issue160
ingo@526: 
ingo@526: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Copied a
ingo@526: 	  method from JFreeChart and adapted date formats.
ingo@526: 
sascha@525: 2010-01-25	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@525: 
sascha@525: 	* doc/conf/arcsdeconnectionpool.properties: Set serverRoundtripInterval
sascha@525: 	  to 5 seconds and serverInactiveInterval to 5 minutes.
sascha@525: 
ingo@524: 2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@524: 
ingo@524: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
ingo@524: 	  doc/conf/queries.properties: Splitted date selection into two steps - year
ingo@524: 	  and concreate date in this year. Removed useless option to 
ingo@524: 	  disable/enable data points of chart and export output, because points 
ingo@524: 	  make no sense in such products.
ingo@524: 
ingo@523: 2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@523: 
ingo@523: 	* doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@523: 	  doc/conf/products/horizontalprofile/conf_mesh.xml: Added new state for
ingo@523: 	  splitting the date selection into two parts - selection of year and
ingo@523: 	  selection of a concrete date of this year.
ingo@523: 
ingo@523: 	* doc/conf/queries.properties: Added new sql statement for querying years
ingo@523: 	  and adapted statement to query concrete dates.
ingo@523: 
ingo@522: 2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@522: 
ingo@522: 	  Issue156
ingo@522: 
ingo@522: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
ingo@522: 	  doc/conf/products/timeseries/conf_mesh.xml,
ingo@522: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@522: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@522: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@522: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@522: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@522: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@522: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added some
ingo@522: 	  parameter (width, height, and shapes) to output modes svg and pdf. Now,
ingo@522: 	  these parameter will have an effect on svg and pdf exports.
ingo@522: 
sascha@520: 2010-01-24	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@520: 
sascha@521: 	* doc/conf/conf.xml: Added attribute "fill-color" to
sascha@521: 	  /artifact-database/gnv/vertical-cross-section/ground/ configure
sascha@521: 	  the color of the seabed polygon.
sascha@521: 
sascha@521: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
sascha@521: 	  Adjusted column depth to the deepest interpolated position to
sascha@521: 	  prevent gaps.
sascha@521: 
sascha@521: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
sascha@521: 	  Add ground polygon to the chart.
sascha@521: 
sascha@521: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/OutputHelper.java:
sascha@521: 	  New. Contains code to create the ground polygon.
sascha@521: 
sascha@521: 	* src/main/java/de/intevation/gnv/raster/PolygonDatasetProducer.java,
sascha@521: 	  src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
sascha@521: 	  Handle temporary vertices more efficiently.
sascha@521: 
sascha@521: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
sascha@521: 	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@521: 	  Added configuration to set the color of the seabed polygon.
sascha@521: 
sascha@521: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
sascha@521: 	  Handle the seabad polygon color.
sascha@521: 
sascha@593: 2010-01-24	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@521: 
sascha@520: 	* contrib/palette2qgis.xsl: Cosmetic cleanups.
sascha@520: 
sascha@519: 2010-01-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@519: 
sascha@519: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
sascha@519: 	  Fixed bug when accessing i and j columns of SQL dataset. This
sascha@519: 	  prevented gap detection in "horizontale Schnittprofile" from working.
sascha@519: 
sascha@519: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java:
sascha@519: 	  "horizontale Schnittprofile" are now using the grid cell mechanism
sascha@519: 	  too. This should fix all remaining problems to solve gnv/issue153.
sascha@519: 	  The culling of too much points is controlled with the system property
sascha@519: 	  "gnv.interpolation2d.cull.point.threshold" with the same semantics 
sascha@519: 	  as in 'Profilschnitt' and 'Horizontalschnitt'.
sascha@519: 	  The spatial buffer size estimation code is removed because it is 
sascha@519: 	  not needed any longer.
sascha@519: 
sascha@519: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java: Moved some
sascha@519: 	  code to Interpolation2D.
sascha@519: 
sascha@519: 	* src/main/java/de/intevation/gnv/math/GridCell.java: Added some
sascha@519: 	  debug information about the number of found cells.
sascha@519: 
sascha@519: 	* src/main/java/de/intevation/gnv/utils/WKTUtils.java:
sascha@519: 	  Cleanup imports.
sascha@519: 
sascha@518: 2010-01-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@518: 
sascha@518: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
sascha@518: 	  Apply same logic about the number of points to "Profilschnitte"
sascha@518: 	  too. If there are more "gnv.interpolation3d.cull.point.threshold"
sascha@518: 	  points they are culled against a 5% extended bounding box around
sascha@518: 	  the path. Default threshold: 1000.
sascha@518: 
sascha@517: 2010-01-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@517: 
sascha@517: 	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
sascha@517: 	  - The lastest refactoring removed the evaluation of the
sascha@517: 	    depth. Now its back in again. 
sascha@517: 
sascha@517: 	  - If the number of incoming points is greater than
sascha@517: 	    a given threshold (default: 1000) than the bounding box
sascha@517: 		of the interpolation is extend about 5% for a test
sascha@517: 		if the points are in this area. Points outside this
sascha@517: 	    area are culled because its unlikely that they have
sascha@517: 		any influence on the result. Use the system property
sascha@517: 		"gnv.areainterpolation.cull.point.threshold" to modify
sascha@517: 		the threshold value.
sascha@517: 
sascha@517: 	* src/main/java/de/intevation/gnv/math/GridCell.java: When
sascha@517: 	  build the interpolation areas the points are culled against
sascha@517: 	  extented bounding box.
sascha@517: 
sascha@517: 2010-01-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@516: 
hans@538: 	* contrib/palette2qgis.xsl: New. XSLT transformation to turn a
sascha@516: 	  palette XML file into a style definition suitable to be used
sascha@516: 	  in QGIS. Tested with QGIS 1.4.0-Enceladus. Usage:
sascha@516: 
sascha@516: 	  $ xsltproc contrib/palette2qgis.xsl       \
sascha@516: 	    doc/conf/palette/water-temperature.xml  \
sascha@516: 		> water-temperature.qml
sascha@516: 
sascha@516: 	  Do similar to process salinity.xml et al.
sascha@516: 
sascha@516: 	  When you've loaded the "Horizontalschnitt" polygon layer 
sascha@516: 	  in QGIS, class it via the "CLASS" attribute, load the
sascha@516: 	  according style and apply it. Voila!
sascha@516: 	  
sascha@515: 2010-01-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@515: 
sascha@515: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
sascha@515: 	  Make "Profilschnitte" work the same way like "Horzontalschnitte"
sascha@515: 	  again.
sascha@515: 
sascha@514: 2010-01-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@514: 
sascha@514: 	* src/main/java/de/intevation/gnv/math/GridCell.java: New.
sascha@514: 	  A 4-tupel of neighbored points in the mesh. It is valid
sascha@514: 	  to interpolate in this area.
sascha@514: 
sascha@514: 	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
sascha@514: 	  The algorithm how neighbored points in the mesh are determined
sascha@514: 	  has changed. Now all incoming points are tiled into GridCells.
sascha@514: 	  If there are gaps in i,j the corresponding tile is omited.
sascha@514: 	  These tiles are stored in an R tree. To lookup a point in
sascha@514: 	  world coordinates the spatial index is queried. If no result
sascha@514: 	  is found the point is ignore as a gap. If a fitting grid cell
sascha@514: 	  is found the interpolation in done between the four points
sascha@514: 	  of that cell is performed. Special gap checking is not needed any 
sascha@514: 	  longer. This fixes gnv/issue153 because there are no assumptions
sascha@514: 	  about axis aligned points any more.
sascha@514: 
sascha@514: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Used
sascha@514: 	  euclid distance to estimate spatial buffer size. TODO: Remove
sascha@514: 	  this code when adjusting the "Profilschnitte" to the same logic
sascha@514: 	  as used in "Horzontalschnitte" now.
sascha@514: 
sascha@514: 	* src/main/java/de/intevation/gnv/math/LinearFunction.java: Added
sascha@514: 	  author's email.
sascha@514: 
sascha@514: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
sascha@514: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java: 
sascha@514: 	  Cleanup imports.
sascha@514: 
ingo@513: 2010-01-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@513: 
ingo@513: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Removed
ingo@513: 	  debug output which has been checked in by mistake.
ingo@513: 
tim@512: 2010-01-22  Tim Englich  <tim.englich@intevation.de>
tim@512: 
tim@512: 	* doc/conf/meshwidth.xml: 
tim@512: 	  Added Description of the sense of the different Attributes.
tim@512: 	  
tim@509: 2010-01-22  Tim Englich  <tim.englich@intevation.de>
tim@509: 
tim@511: 	  Issue93
tim@511: 
tim@511: 	* doc/conf/meshwidth.xml: 
tim@511: 	  Added file for the global Configuration of MeshWidths to the Project.
tim@511: 	  This file has to be edited if the mean Distance between two MeshPoints has
tim@511: 	  changed or a new Mesh will be introduced.
tim@511: 	  
tim@511: 	* doc/conf/products/verticalprofile/conf_mesh.xml,
tim@511: 	  doc/conf/products/timeseries/conf_mesh.xml, 
tim@511: 	  doc/conf/products/horizontalprofile/conf_mesh.xml:
tim@511: 	  Added Elemet with Link to the MeshWidth-Document to Configurations 
tim@511: 	  for CoordinateSelectionStates.
tim@511: 	  
tim@511: 	* src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java : 
tim@511: 	  Added the possibility to configure the different width of the Meshes.
tim@511: 
tim@511: 2010-01-22  Tim Englich  <tim.englich@intevation.de>
sascha@514: 
tim@510: 	* src/test/java/de/intevation/gnv/artifacts/TestArtifactDatabase.java (serviceNamesAndDescriptions),(process):
tim@510: 	  Fixed Compiler-Error after adding further Methods to the Interface ArtifactDatabase.
tim@510: 
tim@510: 2010-01-22  Tim Englich  <tim.englich@intevation.de>
tim@509: 	* src/test/java/de/intevation/gnv/artifacts/util/ShapeFileWriterTestCase.java (testMultiLineStringWriter): 
tim@509: 	  Fixed Compiler-Error after changes in the Method-Signature.
tim@509: 
ingo@508: 2010-01-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@508: 
ingo@508: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java:
ingo@508: 	  Repaired  revision. Removed try-catch of a never thrown exception.
ingo@508: 
ingo@507: 2010-01-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@507: 
ingo@507: 	  Issue136 & Issue137
ingo@507: 
ingo@507: 	* src/main/resources/lang/artifactMessages.properties,
ingo@507: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@507: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@507: 	  src/main/resources/lang/artifactMessages_de.properties: Added templates
ingo@507: 	  to format coordinates to a human readable output.
ingo@507: 
ingo@507: 	* src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java,
ingo@507: 	  src/main/java/de/intevation/gnv/utils/WKTUtils.java: Moved function to
ingo@507: 	  format coordinates from wkt string to human readalbe output to WKTUtils.
ingo@507: 	  Modified the method: Read template out of the i18n files and use a Java
ingo@507: 	  MessageFormatter to fill this template with string objects. A result of 
ingo@507: 	  this is a proper encoding (issue137).
ingo@507: 
ingo@507: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java:
ingo@507: 	  Use the method described above to format coordinate output and display
ingo@507: 	  this as chart subtitle (issue136). 
ingo@507: 
ingo@506: 2010-01-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@506: 
ingo@506: 	  Issue100
ingo@506: 
ingo@506: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: If there
ingo@506: 	  are more than one axis, each dataset is mapped to its own dataset after
ingo@506: 	  adding it to the plot (one dataset for each parameter). In this way, we
ingo@506: 	  get a well scaled axis for each parameter which is independent from other
ingo@506: 	  axes (see range of salinity and air-pressure for example).
ingo@506: 
ingo@505: 2010-01-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@505: 	
ingo@505: 	  Issue152
ingo@505: 
ingo@505: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Removed date
ingo@505: 	  formatting from timeseries charts. Set locale of DateAxis instead to
ingo@505: 	  localize chart axis. Advantage: JFreeChart defines intervals of axis
ingo@505: 	  labels automatically.
ingo@505: 
sascha@504: 2010-01-20	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@504: 
sascha@504: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@504: 	  Trigger the calculation when the state is initialized.
sascha@504: 
ingo@503: 2010-01-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@503: 
ingo@503: 	  Issue129
ingo@503: 
ingo@503: 	* src/main/resources/lang/artifactMessages.properties,
ingo@503: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@503: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@503: 	  src/main/resources/lang/artifactMessages_de.properties: Renamed I-axis to
ingo@503: 	  'West-East-axis' and J-axis to 'North-South-axis'.
ingo@503: 
ingo@502: 2010-01-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@502: 
ingo@502: 	  Issue105 The option to enable/disable data points in charts is now 
ingo@502: 	  available in gui.
ingo@502: 
ingo@502: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@502: 	  Parse optional chart parameter 'points' to adjust rendering of shapes.
ingo@502: 
ingo@502: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
ingo@502: 	  doc/conf/products/timeseries/conf_mesh.xml,
ingo@502: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@502: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@502: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@502: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@502: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@502: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@502: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added an
ingo@502: 	  option to enable/disable data points in charts.
ingo@502: 
sascha@501: 2010-01-20	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@501: 
sascha@501: 	* doc/conf/conf.xml: Set number of per axis samples to 1024
sascha@501: 	  because generation of "Horizontalschnitte" is much faster
sascha@501: 	  now (60x).
sascha@501: 
sascha@501: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java:
sascha@501: 	  Added some kind of outlier test when guessing the buffer size
sascha@501: 	  of the spatial index. The speed problem arose from the fact
sascha@501: 	  that to much points are assumed to be neighbors of a given
sascha@501: 	  point. Long distances which differ more than 40% from the 
sascha@501: 	  standard derivation are assumed to be outliers.
sascha@501: 
sascha@501: 	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java: Uses
sascha@501: 	  the outlier aware buffer size guessing now.
sascha@501: 
sascha@501: 	* src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java,
sascha@501: 	  src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java:
sascha@501: 	  Removed needless imports.
sascha@501: 
ingo@500: 2010-01-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@500: 
ingo@500: 	  Issue148
ingo@500: 
ingo@500: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
ingo@500: 	  doc/conf/products/timeseries/conf_mesh.xml,
ingo@500: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@500: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@500: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@500: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
ingo@500: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@500: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@500: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Removed
ingo@500: 	  mistakes in description and mimetype of svg export nodes.
ingo@500: 
sascha@499: 2010-01-20	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@499: 
sascha@499: 	* src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java,
sascha@499: 	  src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java:
sascha@499: 	  Clip against given polygon. BTW: Geotools has problems with
sascha@499: 	  writing clipped polygons in packed 2-tuple form, too. Therefore
sascha@499: 	  polygons are also stores in the packed 3-tuple form. :-/
sascha@499: 
sascha@499: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@499: 	  Forward clipping polygon to isoline and polygon generator.
sascha@499: 
sascha@498: 2010-01-19	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@498: 
sascha@498: 	* trunk/pom.xml: Upgraded Geotools to 2.5.8
sascha@498: 
sascha@498: 	* trunk/src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java:
sascha@498: 	  Ported to Geotools 2.5.8 API. Write parameter id, date and layer
sascha@498: 	  to shape files, too.
sascha@498: 
sascha@498: 	* trunk/src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
sascha@498: 	  Flip upside down again because its not necessary.
sascha@498: 
sascha@498: 	* trunk/src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java:
sascha@498: 	  XXX: There is a Geotools bug when writing multi lines strings
sascha@498: 	  to shape files when the internal data representation are 
sascha@498: 	  packed 2-tuples. 2-tuples are enough in our use case but we
sascha@498: 	  use 3-tuples for multi line line strings. multi polygons work
sascha@498: 	  fine with 2-tuples.
sascha@498: 	  Removed needless bug output.
sascha@498: 	
sascha@498: 	* src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java:
sascha@498: 	  Use packed 3-tuples as the internal representation.
sascha@498: 
sascha@498: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java,
sascha@498: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@498: 	  Removed needless imports.
sascha@498: 
hans@538: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java: Write polygons and lines strings to shape files.
sascha@498: 	  
sascha@497: 2010-01-19	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@497: 
sascha@497: 	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
sascha@497: 	  Removed import to make it compilable again.
sascha@497: 
ingo@496: 2010-01-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@496: 
ingo@496: 	  Issue142
ingo@496: 
ingo@496: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Fixed an issue
ingo@496: 	  in timeseries chart caused by parameters with no value. Paid attention on
ingo@496: 	  array length.
ingo@496: 
sascha@495: 2010-01-19	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@495: 
sascha@495: 	* src/main/java/de/intevation/gnv/raster/RasterToPPM.java: New.
sascha@495: 	  Class to write rasters with palettes to portable pixmaps.
sascha@495: 	  Handy to debug raster outputs.
sascha@495: 
sascha@495: 	* src/main/java/de/intevation/gnv/raster/Raster.java: Added
sascha@495: 	  getValues() to access the backing data.
sascha@495: 
sascha@495: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@495: 	  Read parameter from input data correctly.
sascha@495: 
sascha@495: 	* src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java: Walk
sascha@495: 	  rings of polygons in reversed order to produce correct JTS polygons.
sascha@495: 	  Its not entierly clear why this is necessary.
sascha@495: 
sascha@495: 	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java: Clipp the
sascha@495: 	  input points against an buffered version of the bounding box of
sascha@495: 	  the given polygon to reduce the number of data. TODO: figure out why
sascha@495: 	  upside down rendering in necessary.
sascha@495: 
tim@494: 2010-01-19  Tim Englich  <tim.englich@intevation.de>
tim@494: 
tim@494: 	* doc/schema/externalinterface_testdata.sql,
tim@494: 	  doc/schema/externalinterface_schema.sql: 
tim@494: 	  Do some Bugfixes after testing the Schema and Testdata against an Oracle 10.2 DBMS.
tim@494: 
ingo@493: 2010-01-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@493: 
ingo@493: 	* src/main/java/de/intevation/gnv/state/State.java,
ingo@493: 	  src/main/java/de/intevation/gnv/state/StateBase.java,
ingo@493: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/NorthSouthEastWestState.java,
ingo@493: 	  src/main/java/de/intevation/gnv/state/OutputStateBase.java: Changed some
ingo@493: 	  method signatures. Use CallContext objects in some methods of the State 
ingo@493: 	  interface instead of CallMeta objects, which are a subset of CallContext.
ingo@493: 	
ingo@493: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Adapted
ingo@493: 	  method calls on State objects to the changes in the interface.
ingo@493: 
ingo@492: 2010-01-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@492: 
ingo@492: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
ingo@492: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@492: 	  Sourced creation of a ChartLabel object out to an own method which can be
ingo@492: 	  overwritten in subclasses to adjust the labels in each chart type.
ingo@492: 	
ingo@492: 	* src/main/java/de/intevation/gnv/chart/ChartLabels.java: Added string for
ingo@492: 	  labeling y axis and a parameter used in 'Profilschnitten'.
ingo@492: 
ingo@492: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java: Read
ingo@492: 	  labels from ChartLabel object and set chart and axes titles according to
ingo@492: 	  these labels.
ingo@492: 	
ingo@492: 	* src/main/resources/lang/artifactMessages.properties,
ingo@492: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@492: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@492: 	  src/main/resources/lang/artifactMessages_de.properties: Added labels for
ingo@492: 	  x and y axes of 'Profilschnitt' charts.
ingo@492: 
ingo@491: 2010-01-18  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@491: 
ingo@491: 	* src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java: Add an
ingo@491: 	  attribute 'fis' to the fis select node. If this attribute is found in
ingo@491: 	  XSLT, a link to step back and select a new fis will be created.
ingo@491: 
tim@490: 2010-01-18  Tim Englich  <tim.englich@intevation.de>
tim@490: 
tim@490: 	* doc/schema/externalinterface_schema.sql: 
tim@490: 	  Added Comments and further Informations.
tim@490: 	
tim@489: 2010-01-18  Tim Englich  <tim.englich@intevation.de>
tim@489: 
tim@489: 	* doc/schema/externalinterface_testdata.sql: 
tim@489: 	  Added Testdata to demonstrate how the different Tables has to be filled.
hans@538: 
tim@489: 	* doc/schema/externalinterface_schema.sql: 
tim@489: 	  Added Schema for the DB-Schemaextention for providing the Data that is 
tim@489: 	  required for the external Interface to the Mapviewer
tim@490: 	
tim@489: 
ingo@488: 2010-01-18  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@488: 
ingo@488: 	* src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java:
ingo@488: 	  Implements a single method to append the selected fis to ui's static part.
ingo@488: 
ingo@488: 	* src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java,
ingo@488: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Inherit
ingo@488: 	  from GNVDefaultArtifact to append the selected fis to static part of the
ingo@488: 	  describe document.
ingo@488: 
ingo@488: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Do not create static
ingo@488: 	  and dynamic nodes of the user interface any longer - fetch these nodes via
ingo@488: 	  xpath expression. The creation of these nodes takes place in the artifact
ingo@488: 	  itself.
ingo@488: 
ingo@488: 	* src/main/resources/lang/artifactMessages.properties,
ingo@488: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@488: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@488: 	  src/main/resources/lang/artifactMessages_de.propertie: Added label for
ingo@488: 	  fis.
ingo@488: 
sascha@487: 2010-01-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@487: 
sascha@487: 	* ChangeLog: Fixed indention.
sascha@487: 
tim@486: 2010-01-18  Tim Englich  <tim.englich@intevation.de>
tim@486: 
sascha@487: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_chart.xml,
sascha@487: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_odv.xml,
sascha@487: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_csv.xml: 
hans@538: 	  Removed Files, because they are not required any more.
tim@486: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_zip.xml: 
tim@486: 	  Added new RequestFile for calling for retrieving a Zip-File from the Server.
tim@486: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_wms.xml: 
tim@486: 	  Added new RequestFile for calling for an WMS-Result.
tim@486: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_04_feed.xml: 
tim@486: 	   Added Polygon as WKT into the feed-Request.
tim@486: 
tim@485: 2010-01-18  Tim Englich  <tim.englich@intevation.de>
tim@485: 
sascha@487: 	* src/test/java/de/intevation/gnv/artifacts/TestArtifactDatabase.java (TestArtifactDatabase): 
hans@538: 	  New: Added an Testimplementation of the ArtifactDatabase to the Tests to use it inside the
sascha@487: 	  TestCallcontext to prevent NPEs during the Testzenarios.
sascha@487: 	  
sascha@487: 	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java (TestCallContext): 
sascha@487: 	  Added Artifactfactory to the Methodsignature of the Context to use it inside the Context.
sascha@487: 	  Added the Method getDatabase to resolve Compilationerrors.
sascha@487: 	  
sascha@487: 	* src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointVerticalProfileTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointTimeSeriesTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalProfileTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/MeshTimeSeriesTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalProfileTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointVerticalProfileTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointHorizontalProfileTestCase.java (testArtifact),
sascha@487: 	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java (createCallContext): 
sascha@487: 	  Changed Methodsignature of createCallContext. Add the Artifactfactory to use it for creating
sascha@487: 	  the CallContext.
sascha@487: 	  
sascha@484: 2010-01-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@484: 
sascha@484: 	* src/main/java/de/intevation/gnv/raster/ExternalIndexConverter.java:
sascha@484: 	  New. Helper to convert the internal palette indices
sascha@484: 	  to the explicit configured external ones.
sascha@484: 
sascha@484: 	* src/main/java/de/intevation/gnv/math/AttributedPoint2ds.java:
sascha@484: 	  Store the JTS geometries too.
sascha@484: 
sascha@484: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@484: 	  Generate JTS multi polygons for parameter regions and multi line strings
sascha@484: 	  for iso lines. TODO: Clip against incoming polygon.
sascha@484: 
sascha@483: 2010-01-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@483: 
sascha@483: 	* src/main/java/de/intevation/gnv/raster/Palette.java:
sascha@483: 	  load <range> attribute "index" as external index. This
sascha@483: 	  is useful to match color classes with external sources.
sascha@483: 	  If no explicit index is given the order of ranges is
sascha@483: 	  used as external index.
sascha@483: 
sascha@483: 	* doc/conf/palette/flow-velocity.xml,
sascha@483: 	  doc/conf/palette/water-levels.xml,
sascha@483: 	  doc/conf/palette/salinity.xml,
sascha@483: 	  doc/conf/palette/water-temperature.xml: Set explicit
sascha@483: 	  external color class indices.
sascha@483: 
sascha@483: 	* doc/conf/conf.xml: Set ground interpolation of "Horizontalschnitte" 
sascha@483: 	  to bilinear.
sascha@483: 
sascha@482: 2010-01-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@482: 
sascha@482: 	* doc/conf/conf.xml: Reduced number of "Horizontalschnitt"
sascha@482: 	  samples to 256 because its much too slow with higher resolutions.
sascha@482: 	  This has to be improved.
sascha@482: 
sascha@482: 	* doc/conf/queries.properties: Use point data to generate
sascha@482: 	  "Horizontalschnitte". Added parameter id and date to results.
sascha@482: 
sascha@482: 	* src/main/java/de/intevation/gnv/utils/WKTUtils.java: Made
sascha@482: 	  reading to points more fault tolerant.
sascha@482: 
sascha@482: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@482: 	  Call the area interpolation.
sascha@482: 
sascha@482: 	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
sascha@482: 	  Fixed bug with calculating points inside bounding box of polygon.
sascha@482: 
sascha@481: 2010-01-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@481: 
sascha@481: 	* src/main/java/de/intevation/gnv/state/State.java: Added
sascha@481: 	  support for end of life.
sascha@481: 
sascha@481: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Implemented
sascha@481: 	  end of life trivial.
sascha@481: 
sascha@481: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java:
sascha@481: 	  call end of life when leaving state.
sascha@481: 
sascha@481: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@481: 	  Used XMLUtils.toStream() instead of own tranformer code. Removed
sascha@481: 	  dead code.
sascha@481: 
sascha@481: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@481: 	  Implemented end of life. Remove shapefile directory from
sascha@481: 	  file system belonging to concrete artifact.
sascha@481: 	  Implemented download as ZIP file. Offer some link for
sascha@481: 	  WMS integration. TODO: implement the real WMS publishing here.
sascha@481: 
sascha@480: 2010-01-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@480: 
sascha@480: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml:
sascha@480: 	  Only offer WMS layers and download ZIPs in output state.
sascha@480: 
sascha@480: 	* src/main/java/de/intevation/gnv/utils/FileUtils.java:
sascha@480: 	  New. Helper class to recursively delete files and directories
sascha@480: 	  and create ZIP archives from files and directories.
sascha@480: 
sascha@480: 	* src/main/java/de/intevation/gnv/utils/WKTUtils.java: Simpilied
sascha@480: 	  signature of worldEnvelopeCoordinatesToIndex().
sascha@480: 
sascha@480: 	* src/main/java/de/intevation/gnv/state/OutputState.java: Cleanup
sascha@480: 	  imports. Made source more readable.
sascha@480: 
sascha@480: 	* src/main/java/de/intevation/gnv/state/OutputStateBase.java:
sascha@480: 	  Cleanup imports. Made source more readable. Moved some
sascha@480: 	  XPath stuff from TimeSeriesOutputState up into this base class.
sascha@480: 
sascha@480: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@480: 	  Move some XPath stuff into base class. Made source more readable.
sascha@480: 
sascha@480: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@480: 	  Directly inherit from OutputStateBase now to break the implicit
sascha@480: 	  constraints (chart styles, statisctics, etc.) of the 
sascha@480: 	  TimeSeriesOutputStates which not hold for this kind of state.
sascha@480: 	  XXX: Added Workaround to circumvent gnv-intern/issue146
sascha@480: 
sascha@480: 	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java: Added
sascha@480: 	  e-mail addresses for authors. Made querying for attributes more
sascha@480: 	  robust.
sascha@480: 
sascha@480: 	* src/main/java/de/intevation/gnv/math/AttributedPoint2ds.java:
sascha@480: 	  New. Data carrier for the "Horizontalschnitte". Used for generation
sascha@480: 	  of results and caching
sascha@480: 
sascha@479: 2010-01-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@479: 
sascha@479: 	* src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java,
sascha@479: 	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java,
sascha@479: 	  src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java,
sascha@479: 	  src/main/java/de/intevation/gnv/artifacts/GNVProductArtifactFactory.java,
sascha@479: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
sascha@479: 	  src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
sascha@479: 	  Cleaned up imports.
sascha@479: 
ingo@478: 2010-01-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@478: 
ingo@478: 	  Added support to step back to the point where the user is able to choose
ingo@478: 	  the product of a FIS.
ingo@478: 
ingo@478: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactFactory.java,
ingo@478: 	  src/main/java/de/intevation/gnv/artifacts/GNVProductArtifactFactory.java:
ingo@478: 	  Cleaned up factories regarding their tasks. GNVArtifactFactory creates
ingo@478: 	  concrete products. GNVProductArtifactFactory handles all FIS and knows 
ingo@478: 	  the products of a FIS.
ingo@478: 
ingo@478: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java: Removed,
ingo@478: 	  because it is not used anymore.
ingo@478: 
ingo@478: 	* src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java,
ingo@478: 	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java:
ingo@478: 	  A Product does no longer save its factory but the name of its factory as
ingo@478: 	  string.
ingo@478: 
ingo@478: 	* src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java:
ingo@478: 	  This artifact will no longer read the config file to get information about
ingo@478: 	  the products of a fis.  The products are set via setter method out of the
ingo@478: 	  ArtifactFactory where this artifact is build.
ingo@478: 
ingo@478: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Added the
ingo@478: 	  possibility to step back to the point where the user can choose a product.
ingo@478: 	  If the target of advance is 'product' we fetch the
ingo@478: 	  GNVProductArtifactFactory from ArtifactDatabase and create a new
ingo@478: 	  SelectProductArtifact, put it into the ProxyArtifact and clean up the ugly
ingo@478: 	  cache.
ingo@478: 
ingo@478: 	* doc/conf/conf.xml: Create top level FIS artifacts with
ingo@478: 	  GNVProductArtifactFactory instead of GNVArtifactFactory.
ingo@478: 
tim@477: 2010-01-15  Tim Englich  <tim.englich@intevation.de>
tim@477: 
tim@477: 	* doc/conf/arcsdeconnectionpool.properties: 
tim@477: 	  Added the Property serverRoundtripInterval to the Configuration an 
tim@477: 	  set its Value to 15 Minutes.
tim@477: 
tim@476: 2010-01-15  Tim Englich  <tim.englich@intevation.de>
tim@476: 
tim@476: 	* src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointVerticalProfileTestCase.java (testArtifact): 
tim@476: 	  Added new Step for querying the Years where measurements has been done into the 
tim@476: 	  Testcase.
tim@476: 	
tim@476: 	* src/test/ressources/verticalprofile/verticalprofile_step_07_out_statistics.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_07_out_odv.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_07_out_csv.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_07_out_chart.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_07_feed.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_07_advance.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_06_feed.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_06_advance.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_05_feed.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_04_advance.xml,
tim@476: 	  src/test/ressources/verticalprofile/verticalprofile_step_05_advance.xml: 
tim@476: 	  Added State-Ressource for the new step Year and modified the other Ressource-Files
tim@476: 	  so that the new Step is queued in the right direction.
tim@476: 
ingo@475: 2010-01-13  Ingo Weinzierl <ingo_weinzierl@web.de>
ingo@475: 
ingo@475: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISSelectArtifact.java,
ingo@475: 	  src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java:
ingo@475: 	  Renamed FISSelectArtifact to SelectProductArtifact which fits better,
ingo@475: 	  because the intent of this artifact is to choose a product - not a FIS.
ingo@475: 
ingo@475: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
ingo@475: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactFactory.java:
ingo@475: 	  Replaced FISSelectArtifact with SelectProductArtifact.
ingo@475: 
sascha@474: 2010-01-13	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@474: 
sascha@474: 	* src/test/java/de/intevation/gnv/artifacts/util/ShapeFileWriterTestCase.java,
sascha@474: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@474: 	  Removed needless imports.
sascha@474: 
sascha@474: 	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java: New. Interpolates
sascha@474: 	  area for a given bounding box, taking gaps and DEM into account.
sascha@474: 	  Not very fast. Use bilinear interpolation to match the "Profilschnitt".
sascha@474: 	  Possible TODOs: 
sascha@474: 	  - speed up by assuming the grid is not sparse.
sascha@474: 	  - use higher interpolation methods.
sascha@474: 
sascha@474: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
sascha@474: 	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@474: 	  Added configuration for ground interpolation.
sascha@474: 
sascha@474: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@474: 	  Add helper functions to access configuration.
sascha@474: 
sascha@474: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Simplified Code.
sascha@474: 
sascha@474: 	* src/main/java/de/intevation/gnv/math/L1Comparator.java: add setReference()
sascha@474: 	  method.
sascha@474: 
ingo@473: 2010-01-13  Ingo Weinzierl <ingo_weinzierl@web.de>
ingo@473: 
ingo@473: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: 'advance'
ingo@473: 	  method will now consider old states. We reset input data of target state
hans@538: 	  and clean cache from 'future data' before steping back to previous
ingo@473: 	  states.
ingo@473: 
ingo@473: 	  TODO: Refactor caching mechanism which should take care of different 
ingo@473: 	  states' hash values to be able to use the cache more efficiently.
ingo@473: 
ingo@473: 	* src/main/java/de/intevation/gnv/state/State.java: Added method to return
ingo@473: 	  map which stores input data of the current state.
ingo@473: 
ingo@473: 	* src/main/java/de/intevation/gnv/state/describedata/MinMaxDescribeData.java,
ingo@473: 	  src/main/java/de/intevation/gnv/state/describedata/SingleValueDescribeData.java,
ingo@473: 	  src/main/java/de/intevation/gnv/state/describedata/KeyValueDescibeData.java
ingo@473: 	  src/main/java/de/intevation/gnv/state/describedata/DefaultSingleValueDescribeData.java,
ingo@473: 	  src/main/java/de/intevation/gnv/state/describedata/DefaultMinMaxDescribeData.java,
ingo@473: 	  src/main/java/de/intevation/gnv/state/describedata/DefaultKeyValueDescribeData.java:
ingo@473: 	  Add current state's name when initializing new objects of these classes.
ingo@473: 	  The name of a state is added as attribute to a node when creating the 
ingo@473: 	  describe-document. The xsl transformer will read this attribute and create
ingo@473: 	  a link which allows the user to step back to previous states.
ingo@473: 	
ingo@473: 	* src/main/java/de/intevation/gnv/state/SingleInputState.java,
ingo@473: 	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
ingo@473: 	  src/main/java/de/intevation/gnv/state/StateBase.java:
ingo@473: 	  - Add state name when creating objects to store input data.
ingo@473: 	  - Use XMLUtils.ElementCreator to write namespace aware xml elements.
ingo@473: 	  - Add state names as attributes to xform elements.
ingo@473: 	  - Append old states to list of reachable targets in describe-document.
ingo@473: 	  - Remove data from cache which belong to future states after stepping
ingo@473: 	    back to a previous state.
ingo@473: 	  - Remove input data of current state after stepping back.
ingo@473: 
sascha@472: 2010-01-12	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@472: 
sascha@472: 	* doc/conf/conf.xml,
sascha@472: 	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
sascha@472: 	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@472: 	  Added configuration od file system directory of generate "Horizontalschnitt"
sascha@472: 	  shape files.
sascha@472: 
sascha@471: 2010-01-12	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@471: 
sascha@471: 	* src/main/java/de/intevation/gnv/utils/WKTUtils.java,
sascha@471: 	  src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@471: 	  Code cleanup
sascha@471: 
ingo@470: 2010-01-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@470: 
ingo@470: 	* src/main/java/de/intevation/gnv/state/SingleInputState.java,
ingo@470: 	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
ingo@470: 	  src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java:
ingo@470: 	  Data, describing the user interface, is stored in a list instead of a
ingo@470: 	  collection, now. This makes it easier to remove the last element if we
ingo@470: 	  advance back.
ingo@470: 
ingo@470: 	* src/main/java/de/intevation/gnv/state/State.java,
ingo@470: 	  src/main/java/de/intevation/gnv/state/StateBase.java: Added a 'reset'
ingo@470: 	  method to clear data which has been inserted before returning to an old
ingo@470: 	  state. This is called when we try to advance into the past.
ingo@470: 
ingo@470: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Now, it's
ingo@470: 	  possible to advance to an earlier state. The 'advance' method first
ingo@470: 	  searches for a given target name in the list of reachable targets. If no
ingo@470: 	  future target has been found, the method looks for an old state with this
ingo@470: 	  target name. The last option is to return to the initial step for choosing
ingo@470: 	  the FIS, if the target name is 'start'.
ingo@470: 
tim@468: 2010-01-12  Tim Englich  <tim.englich@intevation.de>
tim@468: 
tim@469: 	* doc/conf/queries.properties: 
tim@469: 	  Added Query for Years in VerticalProfiles in TimeSeriesPoints.
tim@469: 	  Modified the Query for Dates in VerticalProfiles in TimeSeriesPoints.
tim@469: 	
tim@469: 	* doc/conf/products/verticalprofile/conf_timeseriespoint.xml: 
tim@469: 	  Added State for choosing the year and than it will only display
tim@469: 	  the Dates which are within the coosen year.
tim@469: 	  
tim@469: 	* src/main/resources/lang/artifactMessages*.properties:
tim@469: 	  Added Ressource for diaplaying year. 
tim@469: 
tim@469: 2010-01-12  Tim Englich  <tim.englich@intevation.de>
tim@468: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java (configureHorizontalCrossSection): 
tim@468: 	  Added the Method to load the Configurationsettings for horizontal-cross-sections
tim@468: 	  from the global Configuartion and put it into the Context.
tim@468: 	  
tim@468: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java: 
tim@468: 	  Added static variables to define the Keys used for horizontal-cross-sections
tim@468: 
tim@468: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java (getChartResult): 
tim@468: 	  Integrated the Possibility to determin the required Snipped of an Mesh
tim@468: 	  using the ij-Index determined by the given Polygon.
tim@468: 	  Added the process-method which must still be implemented.
tim@468: 
tim@468: 	* src/main/java/de/intevation/gnv/utils/WKTUtils.java (worldEnvelopeCoordinatesToIndex): 
tim@468: 	  Added worldEnvelopeCoordinatesToIndex-Method for determining the ij-Coodinates
tim@468: 	  for a given Envelope.
tim@468: 	  Some refactoring-Work done for reuse some existing Code of this Class.
tim@468: 
tim@468: 	* doc/conf/conf.xml: 
tim@468: 	  Added the Configuration-Node for horizontal-cross-sections in this
tim@468: 	  File.
tim@468: 
tim@468: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: 
tim@468: 	  Added ij-Query Node  to OutputState to make the Querystring
tim@468: 	  available to this Product.
tim@468: 
ingo@467: 2010-01-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@467: 
ingo@467: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@467: 	  Use XMLUtils to read evaluate xpath expressions. Adapted xpath
ingo@467: 	  expressions regarding namespace and prefix.
ingo@467: 
tim@466: 2010-01-11  Tim Englich  <tim.englich@intevation.de>
tim@466: 
tim@466: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java (readDocument): 
tim@466: 	  Set NameSpaceAware to true to get the Unittests work again.
hans@538: 	  The Out-Calls doesn't work yet!!!
tim@466: 	
tim@466: 
sascha@465: 2010-01-11	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@465: 
sascha@465: 	* pom.xml: Introduced dependency to GeoTools 2.4.5 (maybe a bit too old)
sascha@465: 	  Needed to write traced polygons and line strings to shape files.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/utils/Pair.java: New
sascha@465: 	  simple pair tuple for type safety.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java:
sascha@465: 	  New. Writes multi polygons and multi line strings to
sascha@465: 	  shapefiles. Writing the multi polygons works. 
sascha@465: 
sascha@465: 	  !! Writing the multi line strings fails!
sascha@465: 	  !! Its not clear by now if its a geotool bug or a
sascha@465: 	  !! misunderstanding of the API. The polygon and
sascha@465: 	  !! the line string export are coded symmetrically
sascha@465: 	  !! but the line string export complains about invalid 
sascha@465: 	  !! FIDs states.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/raster/AbstractProducer.java:
sascha@465: 	  New. Abstract base class for multi line string/polygons producers
sascha@465: 	  as backends of the vectorizer.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/raster/PolygonDatasetProducer.java:
sascha@465: 	  Inherits from AbstractProducer now.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/raster/IsoProducer.java:
sascha@465: 	  New. Common base class for the iso line producers, inherits
sascha@465: 	  from AbstractProducer.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
sascha@465: 	  Moved some code to new base class IsoProducer.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/raster/DemuxRingsHandler.java:
sascha@465: 	  New. Little helper class to demultiplex many ring handlers on
sascha@465: 	  one single vectorizer.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/raster/IsoAttributeGenerator.java:
sascha@465: 	  The implemented AttributeGenerator interface is defined in IsoProducer
sascha@465: 	  now.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java:
sascha@465: 	  New. Traces regions directly to JTS multi polygons.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java:
sascha@465: 	  New. Traces iso lines directly to JTS multi line strings.
sascha@465: 
sascha@465: 	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java,
sascha@465: 	  src/main/java/de/intevation/gnv/statistics/AbstractStatistics.java: 
sascha@465: 	  Removed needless imports.
sascha@465: 
ingo@464: 2010-01-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@464: 
ingo@464: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISSelectArtifact.java:
ingo@464: 	  Artifact used for the initial steps when no product is chosen.
ingo@464: 
ingo@464: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactFactory.java: Factory
ingo@464: 	  to create artifacts. It is used to put a new FISSelectArtifact into the 
ingo@464: 	  ProxyArtifact for the initial steps when no product is  chosen.
ingo@464: 
ingo@464: 	* doc/conf/conf.xml: Use the ProxyArtifact instead of FISArtifact and
ingo@464: 	  GNVArtifactFactory to create it.
ingo@464: 
ingo@464: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java:
ingo@464: 	  - Defined XPath expressions at the top of the class instead of directly in
ingo@464: 	    code.
ingo@464: 	  - Use XMLUtils.ElementCreator to create new namespace aware nodes and
ingo@464: 	    attributes.
ingo@464: 	  - Defined 'describe' method to create user interface for initial steps.
ingo@464: 
ingo@464: 	* src/main/java/de/intevation/gnv/profile/horizontalcrosssection/HorizontalCrossSectionMeshArtifact.java,
ingo@464: 	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java,
ingo@464: 	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java,
ingo@464: 	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java,
ingo@464: 	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java:
ingo@464: 	  Moved 'describe' methods which had no special code to super class.
ingo@464: 
ingo@464: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Use
ingo@464: 	  XMLUtils.ElementCreator to create new elements in xml documents.
ingo@464: 
sascha@463: 2010-01-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@463: 
sascha@463: 	* doc/conf/conf.xml: Added configuration for vertical cross 
sascha@463: 	  section ground interpolation.
sascha@463: 
sascha@463: 	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java: Uses configured
sascha@463: 	  interpolation method now.
sascha@463: 
sascha@463: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@463: 	  Read configuration for vertical cross section ground interpolation.
sascha@463: 
sascha@463: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java:
sascha@463: 	  Added key and default for vertical cross section ground interpolation.
sascha@463: 
sascha@463: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@463: 	  Forwards vertical cross section ground interpolation to QueriedXYDepth.
sascha@463: 
sascha@462: 2010-01-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@462: 
sascha@462: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@462: 	  Prevent NPE if no results are produced by vertical cross sections.
sascha@462: 
sascha@462: 	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java: Replaced
sascha@462: 	  envelope checking by direct coordinate checking in tile cache.
sascha@462: 	  Store the last used tile explicitly to save it from being collected
sascha@462: 	  by the garbage collector.
sascha@462: 
tim@459: 2010-01-08  Tim Englich  <tim.englich@intevation.de>
tim@459: 
hans@538: 	Issue 137
hans@538: 
tim@461: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (getPointValue),
tim@461: 	  src/main/java/de/intevation/gnv/timeseries/gap/DefaultTimeGap.java (key),
tim@461: 	  src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java (getStatisticsGenerator), 
tim@461: 	  src/main/java/de/intevation/gnv/state/StateBase.java (extractKVP),
tim@461: 	  src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java (prepareInputData4RegionDBQuery),
tim@461: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (advance):
tim@461: 	  Removed Encodingerrors from listed Files. All Files are now UTF-8 compliant.
tim@461: 	
tim@461: 2010-01-08  Tim Englich  <tim.englich@intevation.de>
tim@460: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestSuite.java (suite): 
tim@460: 	  Added a Testsuit for executing all Testcases at once.
tim@460: 	
tim@460: 	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_feed.xml,
tim@460: 	  src/test/ressources/timeseries_mesh/timeseries_step_08_feed.xml,
tim@460: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_feed.xml: 
hans@538: 	  Changed the feeded Datevalues because the Values in the Database
hans@538: 	  have changed. TODO: Does it have an effect on the IDs?
tim@460: 	
tim@460: 	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_03_advance.xml,
tim@460: 	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java (testArtifact): 
tim@460: 	  Switched Testcase to the new Condition that an LineString has to be entered.
tim@460: 	
tim@460: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_*.xml, 
tim@460: 	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java (testArtifact):
tim@460: 	  Switched Testcase to the new Condition that an Polygon has to be entered. 
tim@460: 
tim@460: 2010-01-08  Tim Englich  <tim.englich@intevation.de>
tim@460: 	
tim@459: 	* src/main/resources/lang/artifactMessages.properties: 
tim@459: 	  Added Ressources for the GUI for visualizing the Inputstate for
tim@459: 	  Polygons.
hans@538: 	
tim@459: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: 
hans@538: 	  Added State for the possibility to enter a Polygon which should clip
hans@538: 	  the data that will be visualized.
hans@538: 	
tim@459: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java (getChart): 
tim@459: 	  Integrated the access to the Polygon which should be used to trim the Data which 
tim@459: 	  should be visualized.
tim@459: 
sascha@458: 2010-01-05	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@458: 
sascha@458: 	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java:
sascha@458: 	  - Simplified code
sascha@458: 	  - Search tile cache in reversed order because its more likely
sascha@458: 	    that last loaded tile is used more than once.
sascha@458: 	  - Stores cached tiles under soft references to prevent the
sascha@458: 	    possible case to flood the memory with hires tiles.
sascha@458: 
tim@457: 2010-01-05  Tim Englich  <tim.englich@intevation.de>
tim@457: 
tim@457: 	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java (depth): 
tim@457: 	  Added the usage of the new RasterObject integrated in the geo-backend.
tim@457: 	  Now the Performance is much better accessing the depth to an coordinate.
tim@457: 
ingo@456: 2010-01-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@456: 
ingo@456: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java: Declared
ingo@456: 	  method to create a new xforms element as static to be able to use it
ingo@456: 	  without instantiating an object of this class.
ingo@456: 
ingo@456: 	* src/main/java/de/intevation/gnv/state/StateBase.java: Splitted code pathes
ingo@456: 	  of static and dynamic nodes. Static nodes contain the selected value
ingo@456: 	  only instead of transfering the complete stack of possible values again.
ingo@456: 
tim@455: 2010-01-04  Tim Englich  <tim.englich@intevation.de>
tim@455: 
ingo@456: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java (process): 
ingo@456: 	  Changed the XYDepth-Interface-Implementation to QueriedXYDepth
hans@538: 
ingo@456: 	* doc/conf/queries.properties: 
ingo@456: 	  Added the Query for Rasterdataaccess.
hans@538: 
ingo@456: 	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java (QueriedXYDepth): 
ingo@456: 	  Added Implementation of the XYDepth-Interface for Querying the height
ingo@456: 	  of an Position using the geo-backend interface.
ingo@456: 	  It is only nessesary to add a Query with the id rasterQuery to the query-Properties.
tim@455: 
sascha@454: 2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@454: 
sascha@454: 	* src/main/java/de/intevation/gnv/statistics/Statistics.java:
sascha@454: 	  Changed interface to allow general object results as
sascha@454: 	  input for statistic calculation. This is needed because
sascha@454: 	  the vertical cross section produces no SQL like resultsets.
sascha@454: 
sascha@454: 	* src/main/java/de/intevation/gnv/statistics/AbstractStatistics.java:
sascha@454: 	  New. Added common base class for different kind of statistics.
sascha@454: 	  TODO: Move more common code into this class.
sascha@454: 
sascha@454: 	* src/main/java/de/intevation/gnv/statistics/VerticalCrossSectionStatistics.java:
sascha@454: 	  New. Statistics for vertical cross sections. Does nothing
sascha@454: 	  by now.
sascha@454: 
sascha@454: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@454: 	  Creates a VerticalCrossSectionStatistics object as statistics
sascha@454: 	  generator now.
sascha@454: 
sascha@454: 	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java:
sascha@454: 	  Inherits from AbstractStatistics now. Some code moved to new
sascha@454: 	  base class.
sascha@454: 
sascha@454: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@454: 	  Cleaned up the usage of statistics.
sascha@454: 
sascha@453: 2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@453: 
sascha@453: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
sascha@453: 	  Fixed problem with running to max depth on every column.
sascha@453: 
sascha@452: 2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@452: 
sascha@452: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@452: 	  Fix class cast exception to enable PDF export of
sascha@452: 	  vertical cross section charts.
sascha@452: 
sascha@452: 	* ChangeLog: Typo fixes.
sascha@452: 
sascha@451: 2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@451: 
sascha@451: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
sascha@451: 	  Uses ValueAxis.valueToJava2D() to transform data values into chart
sascha@452: 	  space. This is slower than doing it via the Java2D matrix stack
sascha@451: 	  but its more the JFreeChart way and prevents transforming of
sascha@451: 	  graphical attributes too. TODO: Speed this up again!
sascha@451: 
sascha@451: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java:
sascha@451: 	  Forward plot to polygon renderer to make domain and range
sascha@451: 	  axis accessible.
sascha@451: 
sascha@451: 	* src/main/java/de/intevation/gnv/math/XYColumn.java: Moved code a bit.
sascha@451: 
sascha@450: 2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@450: 
sascha@450: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonSeriesLabelGenerator.java:
sascha@450: 	  New. Interface to generate labels for polygon series.
sascha@450: 
sascha@450: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
sascha@450: 	  Added logic to generate and render labels of polygons.
sascha@450: 	  The implemented layout algorithm is greedy. For all
sascha@450: 	  polygons with labels the label is placed on the center of
sascha@450: 	  the ring, which center in terms of the indices of the vertices.
sascha@450: 	  If the bounding box of the label intersects the bounding box
sascha@450: 	  of a an already placed one alternative places are tried. 
sascha@450: 	  In level order positions at 1/4, 3/4, 1/8, 3/8, 5/8, 7/8 and 
sascha@450: 	  so on are evaluated for non intersections with former placed labels.
sascha@450: 	  This terminates if a free place is found or all index positions
sascha@450: 	  are exhausted. If no free position is found the label is omitted.
sascha@450: 
sascha@450: 	  The visual result is okay but could be improved by a more clever
sascha@450: 	  algorithm e.g. tension reduction in the graph of labels.
sascha@450: 
sascha@450: 	  TODO: Improve clipping against chart borders.
sascha@450: 
sascha@450: 	* src/main/java/de/intevation/gnv/jfreechart/LevelOrderIndices.java:
sascha@450: 	  New. Little helper class to generate the level order index
sascha@450: 	  traversal used in the label layout. Placed in the jfreechart
sascha@450: 	  package to keep it clean from gnv dependencies.
sascha@450: 
sascha@450: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java:
sascha@450: 	  Added some methods to access the domain and range axis and
sascha@450: 	  there edge position. Mainly C&P from JFreeCahrts XYPlot
sascha@450: 	  to ease the coordinate transformation between Java2D and
sascha@450: 	  the value spaces of the chart. Call the label generation
sascha@450: 	  of the polygon renderer.
sascha@450: 
sascha@450: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
sascha@450: 	  Added an implementation of PolygonSeriesLabelGenerator to
sascha@450: 	  generate localized labels for the iso lines.
sascha@450: 	  
sascha@449: 2010-01-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@449: 
sascha@449: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
sascha@449: 	  Only add colors to scale which are in the chart.
sascha@449: 
sascha@449: 	* src/main/java/de/intevation/gnv/raster/Palette.java: Added
sascha@449: 	  getter for 'color' field of palette entry.
sascha@449: 
sascha@448: 2010-01-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@448: 
sascha@448: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@448: 	  Generate iso line classes according gnv-issues/issue108:
sascha@448: 
sascha@448: 	  - If there are more than nine colors used in the chart
sascha@448: 	    only the borders of the regions are traced.
sascha@448: 	  - If there are less than ten colors each color region
sascha@448: 	    is devided into two sub regions.
sascha@448: 	  - If there are less than five colors each color region
sascha@448: 	    is devided into five sub regions.
sascha@448: 
sascha@448: 	  Generate attribute per iso line class with the parameter value
sascha@448: 	  of the iso line.
sascha@448: 
sascha@448: 	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
sascha@448: 	  Renamed inner interface from LabelGenerator to AttributeGenerator to
sascha@448: 	  reflect the fact that the concrete label generation is a matter
sascha@448: 	  of i18n too. The concrete label generation should be done when 
sascha@448: 	  the final chart is going to be created. TODO: Add
sascha@448: 	  a JFreeChart style label generator to PolygonRenderer
sascha@448: 
sascha@448: 	* src/main/java/de/intevation/gnv/raster/IsoAttributeGenerator.java:
sascha@448: 	  New. Implements the AttributeGenerator interface. It takes
sascha@448: 	  the indices of the neighboring regions, uses these values
sascha@448: 	  to look into the iso palette and averages the parameter values
sascha@448: 	  at the touching borders. This should help in cases where 
sascha@448: 	  two regions are neighbored in the chart which are not neighbored
sascha@448: 	  in the palette which may happen by quantification artifacts.
sascha@448: 
sascha@448: 	* src/main/java/de/intevation/gnv/raster/Palette.java: Added
sascha@448: 	  getters to 'from' and 'to' fields.
sascha@448: 
sascha@448: 	* src/main/java/de/intevation/gnv/math/XYColumn.java: Fixed
sascha@448: 	  another silly bug with adding values at surface and ground.
sascha@448: 
sascha@448: 	* ChangeLog: Typo fixes
sascha@448: 
sascha@447: 2010-01-01	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@447: 
sascha@447: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@447: 	  Generate iso lines by dividing palette ranges in two
sascha@448: 	  parts each and trace them. This shows that the ideas described
hans@538: 	  by K. Jancke in gnv-issues/issue108 are probably not the
sascha@447: 	  right way to go. Applying this strategy there would be
hans@538: 	  locally too many isolines if there is a steep gradient. 
hans@538: 	  On the other hand large areas are splitted in too less sections
sascha@447: 	  by too less iso lines. A better way may be a splitting with
sascha@448: 	  a look at the areas and shapes of the regions. Large, round 
sascha@448: 	  regions need more splits. Long, thin regions need less.
sascha@447: 
sascha@447: 	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
sascha@447: 	  Stabilized iso line hashing a bit. Added line width to
sascha@447: 	  give iso lines a more appealing presentation in the chart.
sascha@447: 	  The according value is stored in "line.width".
sascha@447: 
sascha@447: 	* src/main/java/de/intevation/gnv/raster/Vectorizer.java: Fixed silly
sascha@448: 	  bug when simplifying lines. This prevented iso lines 
sascha@448: 	  from rendering.
sascha@447: 
sascha@447: 	* src/main/java/de/intevation/gnv/raster/Palette.java: Fixed index issue
sascha@447: 	  when generating a divided palette.
sascha@447: 
sascha@447: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonSeries.java:
sascha@447: 	  Do not crash with NPE any more when not having any series.
sascha@447: 
sascha@447: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonDataset.java:
sascha@447: 	  Added method to add a whole collection of series. Useful to add
sascha@447: 	  iso lines to dataset.
sascha@447: 
sascha@447: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
sascha@447: 	  Set the "line.width" attribute when rendering lines.
sascha@447: 
sascha@446: 2010-01-01	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@446: 
sascha@446: 	* doc/conf/conf.xml: Deactivated gauss filter because
sascha@446: 	  it blurs no data areas too.  Moreover gauss filtering does not 
sascha@446: 	  seem to be necessary at all. Possible TODO: Mask the no data
sascha@446: 	  areas while filtering.
sascha@446: 
sascha@446: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@446: 	  Added generation of polygon data suitable for PolygonPlot.
sascha@446: 
sascha@446: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@446: 	  Some hacks to display the new Chart. XXX: This class is
sascha@446: 	  a real mess ... but I've said that before.
sascha@446: 
sascha@446: 	* src/main/java/de/intevation/gnv/chart/Chart.java: Made it
sascha@446: 	  serializable.
sascha@446: 
sascha@446: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
sascha@446: 	  New. Chart for vertical cross sections. Mainly a copy of
sascha@446: 	  Ingo's prototype implementation. TODO: parameter based i18n.
sascha@446: 
sascha@446: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java: Code
sascha@446: 	  simplification. Made it Serializable to be cachable persistently.
sascha@446: 	
sascha@446: 	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java:
sascha@446: 	  Added fields for the interpolation and the generated PolygonDataset.
sascha@446: 	  Its used as the data carrying object in cache now.
sascha@446: 
sascha@446: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java:
sascha@446: 	  Removed println debug code.
sascha@446: 
sascha@446: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
sascha@446: 	  Added a little hack to draw the polygons of the interpolation.
sascha@446: 	  The values are in y-direction all below zero (depth is given
sascha@446: 	  by negative values) so the drawing is mirrored along y axis.
sascha@446: 	  This special behavior is determined by the position of data 
sascha@446: 	  bounding box. At first I suspected a ccw issue here but some
sascha@446: 	  initial tests falsified this hypothesis. We need to have a
sascha@446: 	  deeper look at this but till than it works.
sascha@446: 
sascha@446: 	* ChangeLog: Fixed some typos.
sascha@446: 
sascha@445: 2009-12-30	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@445: 
sascha@445: 	* doc/conf/conf.xml: Fixed defect XML
sascha@445: 
sascha@445: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@445: 	  Use configuration to generate JFreeChart compatible polygons.
sascha@445: 
sascha@445: 	* src/main/java/de/intevation/gnv/raster/PaletteManager.java:
sascha@445: 	  Add method to access base palette.
sascha@445: 
sascha@445: 	* src/main/java/de/intevation/gnv/raster/Vectorizer.java:
sascha@445: 	  Added logging and new constructor.
sascha@445: 
sascha@445: 	* src/main/java/de/intevation/gnv/math/ConstantXYDepth.java:
sascha@445: 	  "Simulates" DEM with a constant depth.
sascha@445: 
sascha@445: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java:
sascha@445: 	  Fixed bug with construction of buffer size.
sascha@445: 
sascha@445: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
sascha@445: 	  Some clean ups. New method to calculate max depth.
sascha@445: 
sascha@445: 	* src/main/java/de/intevation/gnv/math/XYColumn.java:
sascha@445: 	  Fixed bug with extrapolation.
sascha@445: 
sascha@444: 2009-12-30	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@444: 
sascha@444: 	* doc/conf/conf.xml: Added section gnv/vertical-cross-section
sascha@444: 	  to configure the "Profilschnitte".
sascha@444: 	  <samples width="..." height="..."/> configures the size of
sascha@444: 	  the sample area. Defaults to 1024x768.
sascha@444: 	  <filters><filter>...</filter></filters> configures the
sascha@444: 	  list of post processing filters applied to the sample area 
sascha@444: 	  after the interpolation is done. Defaults to empty list.
sascha@444: 
sascha@444: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java:
sascha@444: 	  Added keys for vertical cross section samples and filters.
sascha@444: 
sascha@444: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@444: 	  Parse the configuration for the new parameters.
sascha@444: 
sascha@443: 2009-12-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@443: 
sascha@443: 	* doc/conf/conf.xml: Added a gnv/horizontal-cross-section-profile
sascha@443: 	  section to configure the "horizontalen Schnittprofile".
sascha@443: 	  <samples number=".."/> gives the number of samples the
sascha@443: 	  interpolation track is divided into. Defaults to 250
sascha@443: 
sascha@443: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java:
sascha@443: 	  The names of the keys for fetching informations from the 
sascha@443: 	  configuration context are stored here now instead of the factory.
sascha@443: 
sascha@443: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@443: 	  Removed the lookup keys. Configure the "horizontalen Schnittprofile".
sascha@443: 
sascha@443: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
sascha@443: 	  Fetch number of samples from config now instead of no longer supported
sascha@443: 	  system property.
sascha@443: 
sascha@443: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
sascha@443: 	  The key from chart template config is now in GNVArtifactContext, too.
sascha@443: 
sascha@442: 2009-12-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@442: 
sascha@442: 	* doc/conf/conf.xml: Moved chart template and palette config
sascha@442: 	  into new section 'gnv'.
sascha@442: 
sascha@442: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@442: 	  Adjusted to new 'gnv' section in config.
sascha@442: 	  Stores chat template under 'gnv.chart.template' and palettes
sascha@442: 	  under 'gnv.color.palettes'.
sascha@442: 	  Added authors.
sascha@442: 
sascha@442: 	* src/main/java/de/intevation/gnv/utils/StringUtils.java: Fixed
sascha@442: 	  index out of bounds issue.
sascha@442: 
sascha@441: 2009-12-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@441: 
sascha@441: 	* src/main/java/de/intevation/gnv/raster/Filter.java: New.
sascha@441: 	  General filter mechanism raster in -> raster out. Useful
sascha@441: 	  to chain processing. The Filter.Factory takes an 
sascha@441: 	  DOM element to configure itself.
sascha@441: 
sascha@441: 	* src/main/java/de/intevation/gnv/raster/KernelFilter.java:
sascha@441: 	  New. Implements raster filters based on kernel folding. Has
sascha@441: 	  an inner class GaussFactory which acts as a factory to create 
sascha@441: 	  Gauss filters. The attributes "sigma" and "radius" are read
sascha@441: 	  from the configuring DOM element to set up the parameters
sascha@441: 	  of the kernel.
sascha@441: 
sascha@440: 2009-12-28	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@440: 
sascha@440: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
sascha@440: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
sascha@440: 	  src/main/java/de/intevation/gnv/utils/WKTUtils.java: Refactored most 
sascha@440: 	  silly code like inefficent access to input data and redundant 
sascha@440: 	  WKT line string parsing.
sascha@440: 
sascha@440: 	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java,
sascha@440: 	  src/main/java/de/intevation/gnv/math/XYColumn.java:
sascha@440: 	  Removed needless imports.
sascha@440: 
sascha@439: 2009-12-28	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@439: 
sascha@439: 	* src/main/java/de/intevation/gnv/state/OutputStateBase.java,
sascha@439: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java,
sascha@439: 	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java,
sascha@439: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
sascha@439: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
sascha@439: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
sascha@439: 	  src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
sascha@439: 	  Bring CallContext down to the chart generation. This is necessary to
sascha@439: 	  access the configuration. BTW: this a much cleaner way than
sascha@439: 	  the omnipresent singletons all around in the code!
sascha@439: 
sascha@439: 	  Observation: All the stuff derived from OutputStateBase is coded very messy 
sascha@439: 	  ... even if your demands are not high about aesthetic :-/
sascha@439: 
sascha@439: 	* src/main/java/de/intevation/gnv/utils/StringUtils.java: New.
sascha@439: 	  Some functions to ease working with strings.
sascha@439: 
sascha@438: 2009-12-28	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@438: 
sascha@438: 	* src/main/java/de/intevation/gnv/raster/PaletteManager.java: New.
sascha@438: 	  Used to manage several levels of palette subdivsions derived from
sascha@438: 	  base palette. Contains name and description of palette, too.
sascha@438: 	  
sascha@438: 	* src/main/java/de/intevation/gnv/raster/Palette.java: Removed
sascha@438: 	  palette description because it is hold by the PaletteManager now.
sascha@438: 
sascha@438: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@438: 	  The palettes are not stored under the name of the palette any longer.
sascha@438: 	  Instead the new attribute 'parameter-id' is splitted (comma separated)
sascha@438: 	  into integers which are use as keys now. The values are PaletteManagers.
sascha@438: 	  This should ease the access to an adequate PaletteManager when
sascha@438: 	  generating a chart for a certain parameter.
sascha@438: 
sascha@438: 	* doc/conf/conf.xml: Added the 'parameter-ids' for the four palettes.
sascha@438: 	  The values are extracted from the gdiintern wiki.
sascha@438: 
sascha@438: 	  !!! This have to be in sync with the database parameter ids !!!
sascha@438: 
sascha@437: 2009-12-27	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@437: 
sascha@437: 	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
sascha@437: 	  New. Vectorizer rings callback which produces iso lines in
sascha@437: 	  form of PolygonSeries. These series can be added to PolygonDatasets.
sascha@437: 	  If a IsoPolygonSeriesProducer.LabelGenerator is given
sascha@437: 	  each of the series has an attribute "label" which could be used
sascha@437: 	  to label text on the plot. TODO: Add label rendering to plot.
sascha@437: 
sascha@437: 	  Iso line generation is a bit more sophisticated than pure
sascha@437: 	  region tracing. Along a border of a region there could
sascha@446: 	  be more than one type of neighborhood. This is due to quantification
sascha@437: 	  errors introduced by the fact that steep value gradients
sascha@437: 	  are sampled to less points. The only ways out would be an
sascha@437: 	  increase of the sample resolution or an other algorithm
sascha@437: 	  working directly on the interpolated floating point samples.
sascha@437: 
sascha@437: 	* src/main/java/de/intevation/gnv/raster/Vectorizer.java: Made
sascha@437: 	  line simplification work with open polygons, too.
sascha@437: 
sascha@437: 	* src/main/java/de/intevation/gnv/math/IJKey.java: Added method
sascha@437: 	  to sort (i, j) in place.
sascha@437: 
sascha@437: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
sascha@437: 	  Do not close line shapes because iso lines are not closed shapes
sascha@437: 	  in general.
sascha@437: 
sascha@437: 	* src/main/java/de/intevation/gnv/raster/PolygonDatasetProducer.java:
sascha@437: 	  Added author. Some reformatting.
sascha@437: 
sascha@436: 2009-12-26	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@436: 
sascha@436: 	* src/main/java/de/intevation/gnv/raster/PolygonDatasetProducer.java:
sascha@436: 	  New. Vectorizer rings callback which produces PolygonDatasets suitable
sascha@436: 	  to be fed into PolygonPlot.
sascha@436: 
sascha@436: 	* src/main/java/de/intevation/gnv/raster/Vectorizer.java: 
sascha@436: 	  Forward height to rings callback.
sascha@436: 	  Made simplification of chains an option (default: true).
sascha@436: 	  This should be turn off if generating iso lines.
sascha@436: 	  Made edges hashable (handy to find neighbored edges in
sascha@436: 	  iso line scanning).
sascha@436: 
sascha@436: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonSeries.java:
sascha@436: 	  Added default constructor. Generate unique comparable long id
sascha@436: 	  in thos constructor.
sascha@436: 	  Added method to add a single ring.
sascha@436: 
sascha@436: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonDataset.java:
sascha@436: 	  Added constructor to construct with a collection of polygon
sascha@436: 	  series.
sascha@436: 
sascha@435: 2009-12-25	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@435: 
sascha@435: 	* src/main/java/de/intevation/gnv/raster/Palette.java: Added
sascha@435: 	  method subdive(N) to Palette class which creates a new
sascha@435: 	  palette in which each interval is splitted into N
sascha@435: 	  equal sized intervals. Infinity sized intervals are not
sascha@435: 	  splitted. This is useful to fulfill the conditions of
sascha@435: 	  gnv/issue108.
sascha@435: 
sascha@434: 2009-12-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@434: 
sascha@434: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: 
sascha@434: 	  Use local variable debug instead of asking log.isDebugEnabled() 
sascha@434: 	  more than once.
sascha@434: 
sascha@434: 	* src/main/java/de/intevation/gnv/math/XYColumn.java: extrapolate
sascha@434: 	  with boundary values.
sascha@434: 
sascha@434: 	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
sascha@434: 	  Implements a 3D interpolation called 'Profilschnitt' along a 
sascha@434: 	  track similiar to the 'Horizontaler Schnittprofil' which takes 
sascha@434: 	  all k layers into account. 
sascha@434: 
sascha@434: 	  At the interpolated (x, y) points columns of parameter values 
sascha@434: 	  from surface to ground are interpolated. To do so the four 
sascha@434: 	  next neighbor of that columns are figured out. Four
sascha@434: 	  cubic splines are fitted through these parameter values 
sascha@434: 	  of these neighbors. Now its possible to continuous eval
sascha@434: 	  the parameter on each. Every entry in the interpolated column
sascha@434: 	  is interpolated bilinear from the four cubic spline interpolated
sascha@434: 	  neighbor values at the respective depth.
sascha@434: 
sascha@434: 	  The result is stored into a double valued raster. NaN values
sascha@449: 	  indicate interpolation gaps.
sascha@434: 
sascha@433: 2009-12-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@433: 
sascha@433: 	* src/main/java/de/intevation/gnv/math/XYColumn.java: Added a method
sascha@433: 	  prepare() which generates an continues interpolator for the
sascha@433: 	  given z values. if only one value is given a constant function
sascha@433: 	  is assumed. If the larger z-value is below zero the
sascha@433: 	  next lower value is supplemented at zero. Symmetrically 
sascha@433: 	  if the lowest z-value is above the depth at the given point
sascha@433: 	  the lowest value is repeated at depth. This should guarantee
sascha@433: 	  that the gradient is vansihing towards the surface and the
sascha@433: 	  bottom of the ocean.
sascha@433: 
sascha@433: 	  If after the supplementation there are less than three points
sascha@433: 	  a linear interpolation is performed. If there are more than three
sascha@433: 	  points a higher degree interpolation is used instead. This defaults
sascha@433: 	  to a cubic spline interpolation. Overwrite the getInterpolator()
sascha@433: 	  function to replace this behavior.
sascha@433: 	  
sascha@433: 	* src/main/java/de/intevation/gnv/math/ConstantFunction.java: New.
sascha@433: 	  Constant function used in interpolation.
sascha@433: 
sascha@433: 	* src/main/java/de/intevation/gnv/math/LinearFunction.java: Added
sascha@433: 	  an inner class Univariate which fits into the interpolation
sascha@433: 	  framework.
sascha@433: 
sascha@433: 	* src/main/java/de/intevation/gnv/math/HeightValue.java: Sort
sascha@433: 	  z-Values in descending order because we are below zero.
sascha@433: 
sascha@433: 	* src/main/java/de/intevation/gnv/math/XYDepth.java: New. Interface
sascha@433: 	  to figure out the depth (negative values below surface) for
sascha@433: 	  a given coordinate. TODO: Implement this by query the DEM grid
sascha@433: 	  of the ocean.
sascha@433: 
sascha@433: 	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java: Added
sascha@433: 	  authors.
sascha@433: 
sascha@432: 2009-12-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@432: 
sascha@432: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
sascha@433: 	  When preprocessing database data only dissemble WKT points if we
sascha@432: 	  have to.
sascha@432: 	  Read z values as double value now.
sascha@432: 	  Commented out CSV export because it takes the database data
sascha@432: 	  as data which is not correct here. TODO: We need to implement some output 
sascha@432: 	  based on the interpolated data.
sascha@432: 	  Added some type safety to better match the 2D code.
sascha@432: 
sascha@432: 	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java: Stores
sascha@432: 	  XYColumns in ArrayList for better reused of the 2D code.
sascha@432: 
sascha@432: 	* src/main/java/de/intevation/gnv/math/XYColumn.java: Removed toArray()
sascha@432: 	  method because its not needed any longer.
sascha@432: 
sascha@431: 2009-12-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@431: 
sascha@431: 	* src/main/java/de/intevation/gnv/math/XYColumn.java: Extends from
sascha@431: 	  Point2d now to make some of the code (x/y sorting, envelope, etc.)
sascha@431: 	  reusable in 3D from 2D code.
sascha@431: 
sascha@431: 	* src/main/java/de/intevation/gnv/math/IJKey.java: New: The (i, j) hashing
sascha@431: 	  is now moved to this class because of the new inheritance of XYColumn.
sascha@431: 
sascha@431: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java: 
sascha@431: 	  Adjusted the (i, j) hashing. 
sascha@431: 
sascha@431: 	* src/main/java/de/intevation/gnv/math/Point2d.java: Added a new constructor
sascha@431: 	  to make it easier to extend from it.
sascha@431: 
sascha@431: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Made the buffer
sascha@431: 	  extend calculation a static method to be reusable in 3D case.
sascha@431: 
sascha@430: 2009-12-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@430: 
sascha@430: 	* doc/conf/conf.xml: Load salinity palette correctly.
sascha@430: 
ingo@429: 2009-12-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@429: 
ingo@429: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
ingo@429: 	  Preprocessing of data used for interpolation.
ingo@429: 
ingo@429: 	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java: Data
ingo@429: 	  wrapper. Contains preprocessed data used for interpolation and some
ingo@429: 	  metadata used for chart creation.
ingo@429: 
ingo@429: 	* src/main/java/de/intevation/gnv/math/XYColumn.java,
ingo@429: 	  src/main/java/de/intevation/gnv/math/HeightValue.java: Made them
ingo@429: 	  serializable and added hashCode() and equals() to XYColumn to use it as
ingo@429: 	  key in HashMaps.
ingo@429: 
ingo@429: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
ingo@429: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
ingo@429: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
ingo@429: 	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java,
ingo@429: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java,
ingo@429: 	  src/main/java/de/intevation/gnv/state/OutputStateBase.java: Changed some 
ingo@429: 	  method signatures.
ingo@429: 
ingo@429: 	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java:
ingo@429: 	  Improved error handling. Return empty statistic set if there are no input
ingo@429: 	  data.
ingo@429: 
ingo@428: 2009-12-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@428: 
ingo@428: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml: Adjusted
ingo@428: 	  configuration for verticalcrosssection ('Profilschnitt') products.
ingo@428: 
ingo@428: 	* doc/conf/queries.properties: Adjusted sql query for chart generation of 
ingo@428: 	  verticalcrosssection products.
ingo@428: 
ingo@428: 	* src/main/java/de/intevation/gnv/state/StateBase.java,
ingo@428: 	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java: Code
ingo@428: 	  refactoring and better error handling.
ingo@428: 
ingo@427: 2009-12-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@427: 
ingo@427: 	* src/main/java/de/intevation/gnv/math/HeightValue.java,
ingo@427: 	  src/main/java/de/intevation/gnv/math/XYColumn.java: Added model classes to
ingo@427: 	  store information for interpolation.
ingo@427: 
sascha@426: 2009-12-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@426: 
sascha@426: 	* doc/conf/conf.xml: Added config section for palettes.
sascha@426: 
sascha@426: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@426: 	  load palettes at start up.
sascha@430: 	  They are stored in a hash map under the key 'color.palettes'. The keys of
sascha@430: 	  the map are the names from the configuration, the values are 
sascha@426: 	  de.intevation.gnv.raster.Palette objects.
sascha@426: 	  Put configuration of chart template into own method.
sascha@426: 
sascha@426: 	* src/main/java/de/intevation/gnv/raster/Palette.java: Added a palette
sascha@426: 	  description.
sascha@426: 
sascha@425: 2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@425: 
sascha@425: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
sascha@425: 	  Ignore invalid interpolations correctly.
sascha@425: 
sascha@424: 2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@424: 
sascha@424: 	* src/main/java/de/intevation/gnv/raster/Raster.java: New. Models 2D double 
sascha@424: 	  rasters. Has some support for filtering with gauss kernels, building
sascha@424: 	  iso classes, etc.
sascha@424: 
sascha@424: 	* src/main/java/de/intevation/gnv/raster/Palette.java: New. Maps double
sascha@424: 	  values to integer indices and colors.
sascha@424: 
sascha@424: 	* src/main/java/de/intevation/gnv/raster/Vectorizer.java: New. Simple
sascha@424: 	  vectorizer which traces regions in integer rasters.
sascha@424: 
sascha@424: 	* pom.xml: Added dependency to GNU Trove 2.1.1 which is needed by the
sascha@424: 	  vectorizer.
sascha@424: 
ingo@423: 2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@423: 
ingo@423: 	* src/main/java/de/intevation/gnv/utils/WKTUtils.java,
ingo@423: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
ingo@423: 	  Moved some methods back to old place.
ingo@423: 
sascha@422: 2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@422: 
sascha@422: 	Added Ingo Weinzierl's special JFreeChart classes.
sascha@422: 
sascha@422: 	* src/main/java/de/intevation/gnv/jfreechart: New package.
sascha@422: 	  Should contain general JFreeChart stuff.
sascha@422: 
sascha@422: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java: New.
sascha@422: 	  New type of plot to display multi-polygons with holes.
sascha@422: 
sascha@422: 	* src/main/java/de/intevation/gnv/jfreechart/CompactXYItems.java: New.
sascha@422: 	  Basic vertex data model: a ring of a polygon. ccw = shell, cw = hole.
sascha@422: 
sascha@422: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonSeries.java: New.
sascha@422: 	  Attributes a set of rings with key/value pairs.
sascha@422: 
sascha@422: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonDataset.java: New
sascha@422: 	  List of PolygonSeries which makes it a multi-polygon.
sascha@422: 
sascha@422: 	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java: New
sascha@422: 	  A renderer to draw PolygonDatasets into a PolygonPlot.
sascha@422: 	
ingo@421: 2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@421: 
ingo@421: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml: Prepared states and
ingo@421: 	  transitions of verticalcrosssection (german 'Profilschnitt').
ingo@421: 
ingo@420: 2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
hans@538: a
ingo@420: 	* src/main/java/de/intevation/gnv/utils/WKTUtils.java
ingo@420: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
ingo@420: 	  Outsourcing of some methods to prepare results for chart creation.
ingo@420: 
sascha@419: 2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@419: 
sascha@419: 	* doc/conf/palette/flow-velocity.xml:
sascha@419: 	  color palette for flow velocity "Fliessgeschwindigkeit".
sascha@419: 	* doc/conf/palette/water-levels.xml:
sascha@419: 	  color palette for water levels "Wasserstaende".
sascha@419: 	* doc/conf/palette/salinity.xml:
sascha@419: 	  color palette for salinity "Salzgehalt".
sascha@419: 	* doc/conf/palette/water-temperature.xml:
sascha@419: 	  color palette for water temperature "Wassertemperatur".
sascha@419: 
sascha@418: 2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@418: 
sascha@418: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
sascha@418: 	  Added some code to prevent needless null inserts if interpolating 
sascha@418: 	  over large gaps.
sascha@418: 
ingo@417: 2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@417: 
ingo@417: 	* src/main/java/de/intevation/gnv/chart/HorizontalCrossProfileChart.java:
ingo@417: 	  Removed warning, which told the user that gap detection is not implemented
ingo@417: 	  yet.
ingo@417: 
ingo@416: 2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@416: 
ingo@416: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
ingo@416: 	  src/main/java/de/intevation/gnv/math/Interpolation2D.java: Add 'null'
ingo@416: 	  values for gap detection to result collection instead of omitting them.
ingo@416: 	  
ingo@416: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@416: 	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.jav:
ingo@416: 	  Handle null values - don't throw an exception.
ingo@416: 
sascha@375: 2009-12-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@375: 
sascha@375: 	RELEASE 0.3
sascha@375: 
sascha@375: 	* Changes, NEWS, ChangeLog: Summarized activities
sascha@375: 
sascha@374: 2009-12-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@374: 
sascha@374: 	* doc/conf/conf.xml: Bind REST server to localhost.
sascha@374: 
sascha@372: 2009-12-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@372: 
sascha@372: 	* src/test/ressources/lang/artifactMessages_de_DE.properties,
sascha@373: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
sascha@373: 	  src/main/resources/lang/artifactMessages_de.properties:
sascha@372: 	  s/Modeldaten/Modelldaten
sascha@372: 
sascha@371: 2009-12-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@371: 
sascha@371: 	* src/main/resources/lang/artifactMessages_de_DE.properties,
sascha@371: 	  src/main/resources/lang/artifactMessages_de.properties: Removed
sascha@371: 	  wkt line strings.
sascha@371: 
sascha@371: 2009-12-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@370: 
ingo@370: 	* doc/conf/queries.properties: Added K-position to sql statement for
ingo@370: 	  verticalprofile charts on meshes.
ingo@370: 
ingo@370: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@370: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Changed
ingo@370: 	  the depending axis for gap detection on meshes for verticalprofile charts.
ingo@370: 
sascha@371: 2009-12-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>
sascha@371: 
sascha@371: 	Issue 106
ingo@369: 
ingo@369: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
ingo@369: 	  Fixed a file-leak bug while reading chart template. Sourced parsing of xml
ingo@369: 	  file out to XMLUtils of de.intevation.artifactdatabase.XMLUtils.
ingo@369: 
ingo@368: 009-12-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@368: 
ingo@368: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
ingo@368: 	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java,
ingo@368: 	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@368: 	  Added column labels for csv export.
ingo@368: 
hans@367: 2009-12-17  Hans Plum <hans@intevation.de>
hans@367: 
tim@461: 	Issue 129: Release 0.2: Verbesserung der �bersetzungen
hans@367: 
hans@367: 	* src/main/resources/lang/artifactMessages_de_DE.properties,
hans@367: 	src/main/resources/lang/artifactMessages_de.properties:
hans@367: 	Fixed i18n strings for german language
hans@367: 
sascha@366: 2009-12-16	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@366: 
sascha@366: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java:
sascha@366: 	  Fixed index error in i-gab detection between neighbors.
sascha@366: 
ingo@365: 2009-12-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@365: 
ingo@365: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
ingo@365: 	  Override method to create chart. Fixed some bugs for interpolation.
ingo@365: 
ingo@365: 	* src/main/java/de/intevation/gnv/chart/HorizontalCrossProfileChart.java:
ingo@365: 	  Chart class for generating horizontal crossprofile charts. Horizontal
ingo@365: 	  crossprofile charts are a subclass of horizontal profile charts.
ingo@365: 
ingo@365: 	* src/main/java/de/intevation/gnv/math/Point2d.java: Changed epsilon value.
ingo@365: 
ingo@365: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Fixed some bugs
ingo@365: 	  regarding buffer size to limit data for interpolation.
ingo@365: 
ingo@365: 	  TODO: At the moment, there is no gap detection for horizontal crossprofile
ingo@365: 	  charts.
ingo@365: 
ingo@364: 2009-12-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@364: 
ingo@364: 	  Issue100
ingo@364: 
ingo@364: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
ingo@364: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@364: 	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java:
ingo@364: 	  Workarround: Store information about max range of data for each parameter
ingo@364: 	  while iterating over all data values. Set the max range at the end of 
ingo@364: 	  chart generation.
ingo@364: 
ingo@364: 	  NOTE: NumberAxis.setAutoRange(true) doesn't seem to work properly.
ingo@364: 
ingo@363: 2009-12-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@363: 
ingo@363: 	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
ingo@363: 	  Removed useless import of VerticalCrossSectionChartFactory.
ingo@363: 
ingo@363: 	* src/main/java/de/intevation/gnv/chart/HorizontalCrossSectionChartFactory.java,
ingo@363: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java,
ingo@363: 	  src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChartFactory.java,
ingo@363: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java,
ingo@363: 	  src/main/java/de/intevation/gnv/chart/ChartFactory.java: Removed useless
ingo@363: 	  chart factory classes.
ingo@363: 
sascha@362: 2009-12-16	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@362: 
sascha@362: 	* src/main/java/de/intevation/gnv/utils/DistanceCalculator.java:
sascha@362: 	  Added method to calculate distance of path.
sascha@362: 	  TODO: Move this class into math package and and add
sascha@362: 	  an slerp interpolator so it can be used as a metric inside
sascha@362: 	  the interpolation code.
sascha@362: 
sascha@362: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
sascha@362: 	  Added code to disassemble the incoming result set, interpolate
sascha@362: 	  along a given path and returns an adjusted result set.
sascha@362: 	  The (i, j) got lost on this track because we don't travel along
sascha@362: 	  the main axis of the grid any more. The test for gaps has to be
sascha@362: 	  adjusted because, because the dx/dy on the path depends on how
sascha@362: 	  many steps are made on the way [*]. This is controlled by the system
sascha@362: 	  property 'interpolation.step.width'. It is set in meters
sascha@362: 	  and defaults to 100m. TODO: This should be configurable
sascha@362: 	  in the conf.xml file.
sascha@362: 
sascha@362: 	  [*] I opt strongly for integration of the outlier test based gap
sascha@362: 	  detection to overcome this problem.
sascha@362: 
sascha@361: 2009-12-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@361: 
sascha@361: 	* src/main/java/de/intevation/gnv/math/LinearToMap.java:
sascha@361: 	  Uses JTS Coordinate as geometry model now.
sascha@361: 
sascha@361: 	* src/main/java/de/intevation/gnv/math/Metrics.java,
sascha@361: 	  src/main/java/de/intevation/gnv/math/Interpolator.java: New.
sascha@361: 	  Moved from inner class of LinearToMap to top level class
sascha@361: 	  to be more reusable. Uses JTS Coordinate as geometry model now.
sascha@361: 
sascha@361: 	* src/main/java/de/intevation/gnv/math/Point2d.java: New.
sascha@361: 	  Extends JTS Coordinate to have an additional (i, j)
sascha@371: 	  to model the topological neighborhood within the mesh, too.
sascha@361: 
sascha@361: 	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: New.
sascha@361: 	  Has a method interpolate() which takes a path line string in form
sascha@361: 	  of a list of JTS Coordinates, a list of grid points (Point2d
sascha@361: 	  to carry the topology, too), a linear range in diagram coordinate
sascha@361: 	  space, a metric to cope with the projection. It reports
sascha@361: 	  interpolated points to an implementor of the new inner interface
sascha@361: 	  Consumer as a JTS Coordinate. (x, y) of this coordinate is the
sascha@361: 	  postion on the map, the z value is the interpolated attribute.
sascha@361: 
sascha@361: 	  To speed up the search for the neighbors the input points are
sascha@361: 	  sorted into a quadtree and are queried first level with a buffer of
sascha@361: 	  size (max(abs(p[i].x - p[i+1].x)), max(abs(p[i].y - p[i+1].y)))
sascha@361: 	  around the point to be interpolated. The second level filter 
sascha@361: 	  is performed by an inverse L1-ordering with region coding, so 
sascha@361: 	  that only the nearest four neighbors are taken into acount. 
sascha@361: 	  Only if all four neighbors are present and no
sascha@361: 	  i- or j-gaps exist the interpolation is performed. TODO: Create
sascha@361: 	  a better extrapolation strategy in these cases were these conditions
sascha@361: 	  are not fulfilled.
sascha@361: 
sascha@361: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
sascha@361: 	  Added a process() method to perform the interpolation. It does
sascha@361: 	  nothing by now. TODO: bring it to life.
sascha@361: 	  
sascha@360: 2009-12-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@360: 
sascha@360: 	* src/main/java/de/intevation/gnv/math/LinearToMap.java: Map linear
sascha@360: 	  coordinates (from, to) to world coordinates (x, y) along a line string
sascha@360: 	  given by a set of java.awt.geom.Point2D points.
sascha@360: 
sascha@360: 	* src/main/java/de/intevation/gnv/math/LinearMetrics.java: Implements
sascha@360: 	  Euclidean metric used by LinearToMap.	TODO: Do same for WGS84 to
sascha@360: 	  be more precise.
sascha@360: 
tim@359: 2009-12-15  Tim Englich  <tim.englich@intevation.de>
tim@359: 
sascha@360: 	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java (calculateStatistics): 
tim@359: 	  Issue96 Resloved big that one entry is missiing in the Statitic.
tim@359: 	  The last row of the ResultSet was never used.
tim@359: 
ingo@358: 2009-12-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@358: 
ingo@358: 	  Issue106
ingo@358: 
ingo@358: 	* doc/conf/conf.xml: Added charttemplate to global configuration.
ingo@358: 
ingo@358: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java: Made
ingo@358: 	  method static to call it without initiating an object of its class.
ingo@358: 
ingo@358: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
ingo@358: 	  Create ChartTheme at startup of artifact server and put it into global
ingo@358: 	  context. The theme is created one time on this way.
ingo@358: 
ingo@358: 	* src/main/java/de/intevation/gnv/state/OutputState.jav,
ingo@358: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Changed
ingo@358: 	  signature of 'out'-method. Call 'out' with CallContext instead of
ingo@358: 	  CallMeta, which is contained in CallContext. CallContext is needed to
ingo@358: 	  fetch the ChartTheme out of it.
ingo@358: 
ingo@358: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
ingo@358: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
ingo@358: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
ingo@358: 	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java:
ingo@358: 	  Changed signature of 'getChart'-method which now gets the CallContext
ingo@358: 	  containing the ChartTheme.
ingo@358: 
ingo@358: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@358: 	  Get ChartTheme from CallContext instead of reading the XML file here.
ingo@358: 
sascha@357: 2009-12-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@357: 
sascha@357: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
sascha@357: 	  If a few (i, j) values are not available (gaps in the grid) try
sascha@357: 	  to fill the holes with guessing the values by the ones which could
sascha@357: 	  be fetched. We are using a componentwise linear function here.
sascha@357: 	  This is surely slightly wrong because world coordinates are
sascha@357: 	  in WGS84 which is ellipsoid in nature. TODO: Look at the errors
sascha@357: 	  and if needed compensate them by using cubic polynonial or ellipsoid 
sascha@357: 	  function terms.
sascha@357: 
sascha@357: 	* src/main/java/de/intevation/gnv/math/LinearFunction.java: New.
sascha@357: 	  Linear function to be used in curve fitting process.
sascha@357: 
tim@356: 2009-12-15  Tim Englich  <tim.englich@intevation.de>
tim@356: 
tim@356: 	* doc/conf/queries.properties: 
tim@356: 	  Added the Unit of the Parameter to the Query for Parameters in 
tim@356: 	  all Parameterqueries where it was still missing. Now the Unit will 
tim@356: 	  be displaied in the Combobox and in the Diagramm-Axis-Description. 
tim@356: 
sascha@354: 2009-12-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@354: 
sascha@354: 	* pom.xml: Upgraded to Apache Commons Math 2.0. Needed for
sascha@354: 	  curve fitting (splines e.g)
sascha@354: 
sascha@354: 	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java:
sascha@354: 	  Use 'new DescriptiveStatistics()' instead of 
sascha@354: 	  'DescriptiveStatistics().newInstance()' to be compatible with new
sascha@354: 	  math api.
sascha@354: 
tim@352: 2009-12-15  Tim Englich  <tim.englich@intevation.de>
sascha@357: 
sascha@357: 	Added the Unit of the Parameter to the Query for Parameters in 
sascha@357: 	TimeSeries. Now teh Unit will be displaied in the Combobox and
sascha@357: 	in the Diagramm-Axis-Description.
sascha@357: 
tim@353: 	* src/main/resources/lang/artifactMessages*.properties: 
tim@353: 	  Added the name Productname for "horizontale Schnittprofile". to the
tim@353: 	  Resources so that it could be displaied properly in the GUI
sascha@354: 
tim@353: 2009-12-15  Tim Englich  <tim.englich@intevation.de>
tim@353: 
sascha@354: 	* src/main/resources/lang/artifactMessages*.properties:
sascha@354: 	  Added the required Resources for the Outputelements of "horizontale Schnittprofile".
sascha@354: 	* doc/conf/queries.properties: 
sascha@354: 	  Added the specialized Queries for getting the Data and the depths for 
sascha@354: 	  generating "horizontale Schnittprofile".
sascha@354: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java (log): 
sascha@354: 	  Added an new OutputTransition to handle the special Way to d detremine the required
sascha@354: 	  Data for generating "horizontale Schnittprofile".
sascha@354: 	* doc/conf/conf.xml,
sascha@354: 	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
sascha@354: 	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileMeshCrossArtifact.java: 
sascha@354: 	  Added Support for "Horizontales Schnittprofil"-Artifacts to the Project
sascha@354: 	  
ingo@351: 2009-12-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@351: 
ingo@351: 	  Issue102
ingo@351: 	
ingo@351: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java:
ingo@351: 	  Reset 'nextColor' at the beginning of chart creation. Now, color of lines
ingo@351: 	  in charts are stable, which means, that an export will look like the chart
ingo@351: 	  in the gui itself.
ingo@351: 
ingo@350: 2009-12-14  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@350: 
ingo@350: 	  Issue101
ingo@350: 
ingo@350: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Changed date
ingo@350: 	  representation in timeseries charts. Date format is sourced out to
ingo@350: 	  ressource files. German date representation is now 'dd-MMM-yyyy' (eg
ingo@350: 	  31-12-2009) and the english date representation is 'yyyy-MMM-dd' (eg
ingo@350: 	  2009-12-31). 
ingo@350: 
ingo@350: 	* src/main/resources/lang/artifactMessages.properties,
ingo@350: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@350: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@350: 	  src/main/resources/lang/artifactMessages_de.properties: Added date format
ingo@350: 	  strings for timeseries charts.
ingo@350: 
sascha@349: 2009-12-14	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@349: 
sascha@349: 	* src/main/java/de/intevation/gnv/utils/IndexBuffer.java:
sascha@349: 	Creates SQL-WHERE clauses for buffers around a list of 
sascha@349: 	line segments in index (i, j) space.
sascha@349: 
ingo@348: 2009-12-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@348: 
ingo@348: 	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java:
ingo@348: 	  Exception handling while creating subtitle of horizontalprofile charts.
ingo@348: 	  Included the case, that there is no start and no end date.
ingo@348: 
sascha@347: 2009-12-11	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@347: 
sascha@347: 	* src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointTimeSeriesTestCase.java,
sascha@347: 	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java:
sascha@347: 	  Removed needless imports.
sascha@347: 
tim@345: 2009-12-11  Tim Englich  <tim.englich@intevation.de>
tim@345: 
tim@346: 	* doc/conf/queries.properties: 
tim@346: 	  Added Z-Value to verticalcrosssection_mesh_chart_data.
tim@346: 
tim@346: 2009-12-11  Tim Englich  <tim.englich@intevation.de>	
sascha@347: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java,
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointHorizontalProfileTestCase.java, 
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointVerticalProfileTestCase.java, 
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java, 
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalProfileTestCase.java, 
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/MeshTimeSeriesTestCase.java, 
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java, 
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointTimeSeriesTestCase.java, 
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointVerticalProfileTestCase.java,
sascha@347: 	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalProfileTestCase.java:
sascha@347: 	  Split all Unittestcases in separat Classes. Now it is easier to uses the UnitTests with Maven.
sascha@347: 	  
ingo@344: 2009-12-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@344: 
ingo@344: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Fade out
ingo@344: 	  gridlines of range axis in charts if there are more than one axis.
ingo@344: 
ingo@343: 2009-12-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@343: 
ingo@343: 	* src/main/resources/lang/artifactMessages.properties,
ingo@343: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@343: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@343: 	  src/main/resources/lang/artifactMessages_de.properties: Added axis labels
ingo@343: 	  for horizontalprofile, verticalprofile, horizontalcrosssection and
ingo@343: 	  verticalcrosssection charts.
ingo@343: 
ingo@343: 	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
ingo@343: 	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
ingo@343: 	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
ingo@343: 	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java:
ingo@343: 	  Read axis labels from ressources instead of hard coded strings in code.
ingo@343: 
ingo@342: 2009-12-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@342: 
ingo@342: 	  Cleared Issue104.
ingo@342: 
ingo@342: 	* src/main/resources/lang/artifactMessages.properties,
ingo@342: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@342: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@342: 	  src/main/resources/lang/artifactMessages_de.properties: Added axis label
ingo@342: 	  for timeseries charts.	
ingo@342: 
ingo@342: 	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
ingo@342: 	  Removed hard coded axis label of timeseries charts. Read label from 
ingo@342: 	  ressources.
ingo@342: 
ingo@341: 2009-12-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@341: 
ingo@341: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@341: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
ingo@341: 	  gap detection for horizontal and vertical profile charts.
ingo@341: 
sascha@339: 2009-12-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@339: 
sascha@339: 	* doc/conf/conf.xml: Expanded the time to live of inactive artifacts
sascha@339: 	  to 3600000ms (= 1h). Dead artifacts are removed from databasse
sascha@339: 	  only every 15mins now. Improved the description on the artifact
sascha@339: 	  factories.
sascha@339: 
tim@337: 2009-12-08  Tim Englich  <tim.englich@intevation.de>
tim@337: 
tim@338: 	* doc/conf/queries.properties: 
tim@338: 	  Added the Unit of the Parameter to the Query for Parameters in 
tim@338: 	  TimeSeries. Now teh Unit will be displaied in the Combobox and
tim@338: 	  in the Diagramm-Axis-Description.
tim@338: 	  
tim@338: 2009-12-08  Tim Englich  <tim.englich@intevation.de>	
tim@337: 	* src/main/java/de/intevation/gnv/transition/profile:
tim@337: 	  Removed empty needless package.
tim@337: 	* src/main/java/de/intevation/gnv/transition/TransitionFactory.java:
tim@337: 	  src/main/java/de/intevation/gnv/transition/ValueCompareTransition.java, 
tim@337: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java, 
tim@337: 	  src/main/java/de/intevation/gnv/transition/Transition.java,
tim@337: 	  src/main/java/de/intevation/gnv/transition/DefaultTransition.java:
tim@337: 	  The new Transitions which has the only job to provide the connectios between
tim@337: 	  the different States and look if it is Possible to go the different Ways.
tim@337: 	* src/main/java/de/intevation/gnv/state/StateBase.java,
tim@337: 	  src/main/java/de/intevation/gnv/state/State.java: 
tim@337: 	  Removed the Logic to descide which State is be reacable as next.
tim@337: 	  Now the Transition configured in the Artifacts will do that according
tim@337: 	  to the modified TransitionModel.
tim@337: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (transitions): 
tim@337: 	  Added the Transitions to the Artifact and changed the Logic.
tim@337: 	  Now the Transition is able to decide if it could be uses or not.
tim@337: 	* doc/conf/products/verticalprofile/*.xml:
tim@337: 	  Modified the Configuration. Splitted States and Transitions into 
tim@337: 	  different XML-Fragments according to the modified Transitionmodel.
tim@337: 
ingo@336: 2009-12-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@336: 
ingo@336: 	* doc/conf/queries.properties: Added marker ('DATAID') for different data
ingo@336: 	  sources.
ingo@336: 
tim@335: 2009-12-08  Tim Englich  <tim.englich@intevation.de>
tim@335: 
tim@335: 	* doc/conf/products/*.xml: 
tim@335: 	  Switched all Package and Classnames to the new Names.
tim@335: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: 
tim@335: 	  Switched Imports from de.intevation.gnv.transition to de.intevation.gnv.state
tim@335: 	  and renamed all Mebers and local Variables from *transition* to *state*
tim@335: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java: 
tim@335: 	  Changed the Class for the loggeer from TimeseriesoutputTransition
tim@335: 	  to ArtifactXMLUtilities because it was wrong.
tim@335: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java, 
tim@335: 	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java,
tim@335: 	  src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java, 
tim@335: 	  src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java, 
tim@335: 	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java, 
tim@335: 	  src/main/java/de/intevation/gnv/statistics/Statistics.java, 
tim@335: 	  src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java, 
tim@335: 	  src/main/java/de/intevation/gnv/exports/SimpleOdvDataCollector.java, 
tim@335: 	  src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java, 
tim@335: 	  src/main/java/de/intevation/gnv/exports/Export.java, 
tim@335: 	  src/main/java/de/intevation/gnv/exports/DefaultExport.java, 
tim@335: 	  src/main/java/de/intevation/gnv/exports/DefaultDataCollector.java, 
tim@335: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java, 
tim@335: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java, 
tim@335: 	  src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChartFactory.java, 
tim@335: 	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java, 
tim@335: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java, 
tim@335: 	  src/main/java/de/intevation/gnv/chart/HorizontalCrossSectionChartFactory.java, 
tim@335: 	  src/main/java/de/intevation/gnv/chart/ChartFactory.java, 
tim@335: 	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: 
tim@335: 	  Changed import from de.intevation.gnv.transition.* to de.intevation.gnv.state.*
tim@335: 	  according to refactoring Work in the Transitionsmodel.
tim@335: 	* de.intevation.gnv.transition.* 
tim@335: 	  Moved to de.intevation.gnv.state.* 
tim@335: 	  and renamed all Mebers,  local Variables, and Methodsignatures from *transition* to *state*
tim@335: 
ingo@334: 2009-12-07  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@334: 
ingo@334: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@334: 	  Remove unselected parameters from parameters list before initiating
ingo@334: 	  charts. Parameter names are used as axis labels.
ingo@334: 
ingo@334: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
ingo@334: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@334: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Changed
ingo@334: 	  the way of adding data to charts: same parameters are stored in the same 
ingo@334: 	  dataset. Now, each parameter has only one axis. Axes and renderer are 
ingo@334: 	  adjusted one time after collecting data - not after creating every 
ingo@334: 	  single series.
ingo@334: 
ingo@334: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Added some
ingo@334: 	  more colors to distinguish between different parameters/attributes.
ingo@334: 	  Changed method to adjust rendering options regarding the changes of 
ingo@334: 	  datasets described above.
ingo@334: 
ingo@333: 2009-12-07  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@333: 
ingo@333: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Changed method
ingo@333: 	  generateChart to initChart, which just created a new timeseries chart.
ingo@333: 	  General chart stuff is done in AbstractXYLineChart.
ingo@333: 
ingo@333: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Sourced
ingo@333: 	  ChartFactory call out to a new initChart method. This has been done,
ingo@333: 	  because TimeSeriesCharts needs to initiate another type of chart than
ingo@333: 	  horizontal or vertical charts.
ingo@333: 
ingo@332: 2009-12-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@332: 
ingo@332: 	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java:
ingo@332: 	  Added method to fetch a string from ressource bundle with a specified
ingo@332: 	  locale. Before, there just have been existing a method to fetch string 
ingo@332: 	  from ressource bundle on basis of the first locale in a list of locales.
ingo@332: 
ingo@332: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java:
ingo@332: 	  Added method to fetch strings from ressource bundle from RessourceFactory
ingo@332: 	  with a specified locale, a key and a default value, if there is no string
ingo@332: 	  matching key in bundle.
ingo@332: 
ingo@332: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@332: 	  Added methods for creating title and subtitle of charts. FIS name is
ingo@332: 	  fetched from ressource bundle with best locale (regarding supported server 
ingo@332: 	  and client locales) instead of first locale in list of supported locales 
ingo@332: 	  of the server.
ingo@332: 
ingo@332: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java:
ingo@332: 	  Changed title of charts. The main title contains FIS and station name. The
ingo@332: 	  subtitle contains the time period, the cruise, the depth and the position 
ingo@332: 	  of a chart.
ingo@332: 
ingo@332: 	* src/main/java/de/intevation/gnv/chart/ChartLabels.java: Added subtitle as
ingo@332: 	  parameter in class and constructor.
ingo@332: 
ingo@332: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Added a
ingo@332: 	  subtitle to charts. Titles and subtitles are stored in a ChartLabels
ingo@332: 	  object.
ingo@332: 
ingo@332: 	* src/main/resources/lang/artifactMessages.properties,
ingo@332: 	  src/main/resources/lang/artifactMessages_de_DE.properties,
ingo@332: 	  src/main/resources/lang/artifactMessages_en.properties,
ingo@332: 	  src/main/resources/lang/artifactMessages_de.properties: Added strings for
ingo@332: 	  chart title.
ingo@332: 
sascha@330: 2009-12-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@330: 
sascha@330: 	* ChangeLog: Cleaned up a bit.
sascha@330: 
ingo@329: 2009-12-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@329: 
ingo@329: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Added time gap
sascha@330: 	  detection. If a time gap is detected, a null value will be inserted to
ingo@329: 	  break the current line.
ingo@329: 
ingo@328: 2009-12-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@328: 
sascha@330: 	* pom.xml: Added JBoss repository for JFreeChart 1.0.13 and removed explicit
ingo@328: 	  JCommon dependency which is now needless. Now, it is no more necessary to
ingo@328: 	  install JFreeChart into the local maven repository on your own.
ingo@328: 
ingo@327: 2009-12-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@327: 
ingo@327: 	* doc/conf/charttemplate.xml: Added lines to configure rendering of lines
ingo@327: 	  and points in charts (visibility of lines/points and size of points).
ingo@327: 
ingo@327: 	* src/main/java/de/intevation/gnv/chart/XMLChartTheme.java: Added method
ingo@327: 	  parsing the rendering options for lines and points in charts.
ingo@327: 
ingo@327: 	* src/main/java/de/intevation/gnv/chart/AbstractChart.java: Added boolean
ingo@327: 	  member attributes which are used to control the visibility of lines and
ingo@327: 	  points in charts.
ingo@327: 
ingo@327: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@327: 	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
ingo@327: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java:
ingo@327: 	  Constructor needs two further boolean parameter to control the visibility
ingo@327: 	  of lines and points in charts.
sascha@330: 
ingo@327: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: The
sascha@330: 	  renderer controlling the style of a series is adjusted after adding a
ingo@327: 	  new series to the chart.
ingo@327: 
ingo@327: 	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
ingo@327: 	  src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.jav,
ingo@327: 	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
ingo@327: 	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
ingo@327: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@327: 	  Adjusted method calls regarding the constructor changes in *Chart classes.
ingo@327: 
ingo@327: 	  TODO: Lines and points in charts will both always be rendered at the
ingo@327: 	  moment. This needs to be changed as soon as a new gui option is
ingo@327: 	  implemented to control the visibility of lines/points.
ingo@327: 
tim@325: 2009-12-01  Tim Englich  <tim.englich@intevation.de>
tim@325: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java:
tim@326: 	  Added one more Transitionstep to each Testcase according to the refactored Transitionmodel.
tim@326: 	* src/test/ressources/verticalprofile/verticalprofile_step_*_advance.xml,
sascha@330: 	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_*_advance.xml,
sascha@330: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_*_advance.xml,
sascha@330: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_*_advance.xml,
tim@326: 	  src/test/ressources/timeseries_mesh/timeseries_step_*_advance.xml,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_*_advance.xml,
sascha@330: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_*_advance.xml,
sascha@330: 	  src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_*_advance.xml,
tim@326: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_*_advance.xml:
tim@326: 	  Moved each Adancedocument plus one according to the refactored Transitionmodel.
sascha@330: 	  Added the first advanced Call for the Product-Artifact
sascha@330: 
tim@326: 2009-12-01  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java:
sascha@330: 	  All Data which is required to generate the Charts is now fetched using the
sascha@330: 	  Method getChartResult. The Method advance and initialize now have nothing to do.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out):
sascha@330: 	  Removed the advance call because all Data which is required to generate the Charts is
sascha@330: 	  fetched using the Method getChartResult.
sascha@330: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java (initialize):
sascha@330: 	  Use Method instantiate instead of Advance to add the required Data for describe
sascha@330: 	  and feed this Transition.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (initialize),
sascha@330: 	  src/main/java/de/intevation/gnv/transition/Transition.java (initialize):
sascha@330: 	  Added new Method Initaialize which will be callcall to Initailize the current
sascha@330: 	  Transition. In this step all Data will be fetched which is required  to Ddescribe and
sascha@330: 	  feed each Transition.
sascha@330: 	  Also the AlternativeTransition was removed  because it is not longer required.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (advance):
sascha@330: 	  Switched to the usage of the Method initialize instead of Advance while instantiating
sascha@330: 	  a new Productartifact, according to the Refactoring work wich is done in the
sascha@330: 	  TransitionModel.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (initialize):
sascha@330: 	  Added new Function Initialize so that it is possible to Initialize an Artifact
sascha@330: 	  without doing this in the Constructor. That is nessessary because some Artifacts need
sascha@330: 	  some Metadata (e.g. SourceID) befor it can be initialized.
sascha@330: 
sascha@330: 	* doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
sascha@330: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
sascha@330: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml,
sascha@330: 	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
sascha@330: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
sascha@330: 	  doc/conf/products/timeseries/conf_mesh.xml,
sascha@330: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
sascha@330: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
sascha@330: 	  doc/conf/products/horizontalcrosssection/conf_mesh.xml:
sascha@330: 	  Some Refactoring work done according to the Refactoring Work wich
sascha@330: 	  was done in the Transitionmodel.
sascha@330: 
ingo@324: 2009-11-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@324: 
ingo@324: 	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java,
ingo@324: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java,
ingo@324: 	  src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
ingo@324: 	  src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java,
ingo@324: 	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
ingo@324: 	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java:
ingo@324: 	  Removed needless imports.
ingo@324: 
ingo@323: 2009-11-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@323: 
ingo@323: 	* pom.xml: Updated batik dependencies to 1.7
ingo@323: 
ingo@323: 	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java: Use
ingo@323: 	  java native DOMImplementation instead of Batik's SVGDOMImplementation,
ingo@323: 	  which is not present in batik 1.7 libs.
ingo@323: 
ingo@322: 2009-11-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@322: 
ingo@322: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
ingo@322: 	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
ingo@322: 	  doc/conf/products/timeseries/conf_mesh.xml,
ingo@322: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@322: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@322: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@322: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@322: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@322: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added svg
ingo@322: 	  to output modes (MimeType image/svg+xml).
ingo@322: 
ingo@322: 	* pom.xml: Added batik 1.6.1 dependencies which are used to create svg
ingo@322: 	  exports.
ingo@322: 
ingo@322: 	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java:
ingo@322: 	  Implemented chart export to svg.
ingo@322: 
ingo@322: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@322: 	  Output mode 'svg' will call svg export of ChartExportHelper.
ingo@322: 
ingo@320: 2009-11-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@320: 
ingo@320: 	* pom.xm: Added iText 2.1.7 dependency (to create pdf's).
ingo@320: 
ingo@320: 	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java:
ingo@320: 	  Implemented chart export to pdf using iText library. The chart fills the
ingo@320: 	  complete page. A boolean system property "export.pdf.landscape" can be
ingo@320: 	  used to adjust the page orientation (portrait or landscape, default is
ingo@320: 	  landscape).
ingo@320: 
ingo@320: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@320: 	  Added method for exporting chart to pdf. Calls the new method of
ingo@320: 	  ChartExportHelper.
ingo@320: 
tim@319: 2009-11-27  Tim Englich  <tim.englich@intevation.de>
tim@319: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java
tim@319: 	  (testHorizontalProfileInstantaneousPointArtifact),
tim@319: 	  src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_*.xml:
sascha@330: 	  Added new stapes using the RegionFilter into the Tescase of HorizontalProfiles Instantaneous Point.
tim@319: 	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_feed.xml,
sascha@330: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_feed.xml:
tim@319: 	  Bugfix: Removed second dateid. horizontalcrosssection and verticalcrosssection  only provide the usage of one dateid.
sascha@330: 	* doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml:
tim@319: 	  Added the RegionFilters into the configuration of the Products for
tim@319: 	  Horizontalprofiles IntantaneousPoints.
sascha@330: 	* doc/conf/queries.properties:
tim@319: 	  Query to select only Ships, Cruises, Tracks  which are within an Region.
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (extractKVP):
tim@319: 	  Added Row-Number lookup for ColumnNames for Performanceimprofements.
tim@319: 
ingo@318: 2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@318: 
ingo@318: 	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java: Helper
sascha@330: 	  class to export charts. Dependencies on JFreeChart and iText are capsuled
sascha@330: 	  here, no further dependencies in OutputTransitions. Export methods for
ingo@318: 	  images and pdf already implemented.
ingo@318: 
ingo@318: 	* src/main/java/de/intevation/gnv/chart/Chart.java,
ingo@318: 	  src/main/java/de/intevation/gnv/chart/AbstractChart.java: Outsourcing of
ingo@318: 	  export methods to ChartExportHelper.
ingo@318: 
ingo@318: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@318: 	  Adapted current export of charts.
ingo@318: 
ingo@317: 2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@317: 
ingo@317: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
ingo@317: 	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
ingo@317: 	  doc/conf/products/timeseries/conf_mesh.xml,
ingo@317: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@317: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@317: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@317: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@317: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@317: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added pdf
ingo@317: 	  as export format.
ingo@317: 
ingo@316: 2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@316: 
ingo@316: 	* TODO: Added point in TODO regarding tick units and distance between tick
ingo@316: 	  units in timeseries charts.
ingo@316: 
ingo@315: 2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@315: 
ingo@315: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Localized
sascha@330: 	  chart axis. Two method have been added - method to localize y-axis of
ingo@315: 	  charts, abstract method to localize x-axis of charts.
ingo@315: 
ingo@315: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@315: 	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Override
ingo@315: 	  abstract method to localize x-axis.
ingo@315: 
ingo@315: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@315: 	  Call algorithm to determine the best locale regarding intersection of
sascha@330: 	  supported server and browser locales. This locale is used to create
ingo@315: 	  localized charts.
ingo@315: 
ingo@314: 2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@314: 
ingo@314: 	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java:
ingo@314: 	  New method getLocales() which returns an array of locales which are
ingo@314: 	  supported by the server.
ingo@314: 
ingo@314: 	* src/main/resources/lang/lang.conf: Config-file for supported languages.
ingo@314: 	  The resource bundles for localized text should be configured here. It is
ingo@314: 	  used to determine the best locale regarding the supported locales by
ingo@314: 	  server and browser.
ingo@314: 
ingo@312: 2009-11-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@312: 
ingo@312: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Override
ingo@312: 	  method generateChart to instantiate TimeSeries charts instead of XY
sascha@330: 	  charts. Before these changes, timeseries charts did not have a valid date
sascha@330: 	  axis.
ingo@312: 
ingo@311: 2009-11-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@310: 
ingo@310: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@310: 	  src/main/java/de/intevation/gnv/chart/AbstractChart.java,
ingo@310: 	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
ingo@310: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
ingo@310: 	  timegap definitions, adapted constructors.
ingo@310: 
ingo@310: 	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
ingo@310: 	  src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java,
ingo@310: 	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
ingo@310: 	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
ingo@310: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@310: 	  Adapted creation of charts regarding changes of constructors.
ingo@310: 
tim@309: 2009-11-24  Tim Englich  <tim.englich@intevation.de>
tim@309: 
sascha@330: 	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_feed.xml,
sascha@330: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_feed.xml,
sascha@330: 	  src/test/ressources/timeseries_mesh/timeseries_step_08_feed.xml,
sascha@330: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_feed.xml,
sascha@330: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_feed.xml,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_06_out_chart.xml:
sascha@330: 	  Added new Timevalues because the Data in the DWH has changed.
sascha@330: 
ingo@308: 2009-11-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@308: 
sascha@330: 	* pom.xml: Added dependencies for esri and ibm libraries required for unit
ingo@308: 	  tests.
ingo@308: 
tim@306: 2009-11-24  Tim Englich  <tim.englich@intevation.de>
tim@306: 
sascha@330: 	* src/test/ressources/timeseries/timeseries_step_06_out_chart.xml:
tim@307: 	  Added mime-type to get a propper output-result and not an NPE
sascha@330: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java (findValueTitle):
tim@307: 	  Added null-value check to prevent NPEs.
tim@307: 	* src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java (getChart),
tim@307: 	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (getChart),
sascha@330: 	  src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java (getChart),
sascha@330: 	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java (getChart):
tim@307: 	  Changed Method-Signature to this one which the base method provide.
tim@307: 	  Now the Methods will be used again.
tim@307: 
tim@307: 2009-11-24  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java (TestCallContext):
sascha@330: 	  Removed Compilationerrors that were triggert by API-Changes in
tim@306: 	  Module Artifact-Database.
sascha@330: 
tim@306: 	* doc/conf/queries.properties,
sascha@330: 	  doc/conf/products/timeseries/conf_mesh.xml:
sascha@330: 	  Removed Meshpoint from SQL-Query because the same value will be
tim@306: 	  insert by using the depthid.
tim@306: 	  depthid on layer 1 = featureid
tim@306: 	  In the old configuration only Charts on Layer 1 were drawn.
tim@306: 	  issue91
tim@306: 
ingo@305: 2009-11-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@305: 
ingo@305: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java:
ingo@305: 	  Remove chart from cache when data which is displayed has changed.
ingo@305: 
ingo@304: 2009-11-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@304: 
ingo@304: 	* doc/conf/charttemplate.xml: Added configuration file for chart themes.
ingo@304: 
ingo@304: 	* src/main/java/de/intevation/gnv/chart/XMLChartTheme.java: Theme class for
ingo@304: 	  reading xml files which describe chart styles. It extends the
ingo@304: 	  StandardChartTheme class of JFreeChart which defines default values for
ingo@304: 	  chart parameters. It is possible to apply different xml configurations for
ingo@304: 	  different charts.
ingo@304: 
ingo@304: 	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java,
ingo@304: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
sascha@330: 	  Before creating a new chart, an instance of XMLChartTheme is initialized
ingo@304: 	  which is responsible for the chart style.
ingo@304: 
ingo@304: 	  NOTE: 'charttemplate.xml' is used by artifact server and has to be placed
ingo@304: 	  in the config directory.
ingo@304: 
ingo@303: 2009-11-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@303: 
ingo@303: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@303: 	  Export format of charts (png, jpeg, gif) depends on mime-type.
ingo@303: 
ingo@303: 	* src/main/java/de/intevation/gnv/chart/Chart.java,
ingo@303: 	  src/main/java/de/intevation/gnv/chart/AbstractChart.java: Renamed export
ingo@303: 	  method, because it doesn't export just png anymore, but jpeg or gif as
ingo@303: 	  well.
ingo@303: 
ingo@302: 2009-11-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@302: 
ingo@302: 	* src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_06_out_chart.xml,
ingo@302: 	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_chart.xml,
ingo@302: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_out_chart.xml,
ingo@302: 	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_out_chart.xml,
ingo@302: 	  src/test/ressources/timeseries_mesh/timeseries_step_08_out_chart.xml,
ingo@302: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_out_chart.xml,
ingo@302: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_out_chart.xml,
ingo@302: 	  src/test/ressources/verticalprofile/verticalprofile_step_06_out_chart.xml:
ingo@302: 	  Removed mistake in xml structure of artifact protocol. Mime-type node was
ingo@302: 	  called 'out' instead of 'mime-type'.
ingo@302: 
ingo@301: 2009-11-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@301: 
ingo@301: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
ingo@301: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@301: 	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java,
ingo@301: 	  src/main/java/de/intevation/gnv/chart/AbstractChart.java,
ingo@301: 	  src/main/java/de/intevation/gnv/exports/Export.java,
ingo@301: 	  src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java,
ingo@301: 	  src/main/java/de/intevation/gnv/exports/SimpleOdvDataCollector.java,
ingo@301: 	  src/main/java/de/intevation/gnv/exports/DefaultProfile.java,
ingo@301: 	  src/main/java/de/intevation/gnv/exports/DefaultExport.java,
ingo@301: 	  src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
ingo@301: 	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
ingo@301: 	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
ingo@301: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@301: 	  Removed duplicated and needless imports.
ingo@301: 
ingo@300: 2009-11-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@300: 
ingo@300: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java:
ingo@300: 	  Added methods for caching charts.
ingo@300: 
ingo@300: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
ingo@300: 	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
ingo@300: 	  src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
ingo@300: 	  src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java,
ingo@300: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@300: 	  Changed chart generation. Charts will now be generated in a central place
ingo@300: 	  in TimeSeriesOutputTransition which is the parent class of other
ingo@300: 	  OutputTransitions. Each OutputTransition got a new method to serve its own
ingo@300: 	  special chart class.
ingo@300: 
ingo@300: 	* TODO: Added hint for caching charts. Verticalcrosssection and
ingo@300: 	  orizontalcrosssection charts aren't implemented yet.
ingo@300: 
sascha@330: 	  NOTE: Charts can be cached. This could be useful if the user exports
ingo@300: 	  charts as svg, png or pdf. The caching of charts is configured via system
ingo@300: 	  property 'cache.chart' at the moment.
ingo@300: 
ingo@300: 2009-11-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@300: 
ingo@300: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
ingo@300: 	  src/main/java/de/intevation/gnv/transition/OutputTransition.java,
ingo@300: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@300: 	  Changed parameter of 'out'-method of OutputTransition. Now, the
ingo@300: 	  OutputTransition gets the complete xml document of the request (before
ingo@300: 	  just the target name). The mime type of this xml ist used to distinguish
ingo@300: 	  between different output formats of charts (png, jpeg).
ingo@300: 
ingo@298: 2009-11-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@298: 
ingo@298: 	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
ingo@298: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
ingo@298: 	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java:
ingo@298: 	  Classes for creating charts of different output transitions, inherit from
ingo@298: 	  AbstractXYLineChart. The subclasses should only implement special code.
ingo@298: 	  General configurations should be done in AbstractChart or
ingo@298: 	  AbstractXYLineChart.
ingo@298: 
ingo@298: 	  TODO: Take care of gaps between two values.
ingo@298: 
ingo@297: 2009-11-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@297: 
ingo@297: 	* src/main/java/de/intevation/gnv/chart/Chart.java: Interface, which
ingo@297: 	  declares basic method to create charts and export it in different formats.
ingo@297: 
ingo@297: 	* src/main/java/de/intevation/gnv/chart/AbstractChart.java,
sascha@330: 	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Abstract
ingo@297: 	  chart classes which declare basic methods for chart creation and implement
ingo@297: 	  general methods used by subclasses.
ingo@297: 
ingo@297: 2009-11-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@297: 
ingo@297: 	* src/main/java/de/intevation/gnv/utils/DistanceCalculator.java: Declared a
ingo@297: 	  method as static, which can be used without instantiating an object of its
ingo@297: 	  class.
ingo@297: 
ingo@295: 2009-11-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@295: 
ingo@295: 	* pom.xml: Changed version of JFreeChart from 1.0.12 to 1.0.13 and added
ingo@295: 	  dependency of JCommon 1.0.15, which is used by JFreeChart.
ingo@295: 
sascha@330: 	  NOTE: The JFreeChart 1.0.13 jar has to be installed on your own for the
ingo@295: 	  time the central maven repository is broken.
ingo@295: 
ingo@294: 2009-11-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@294: 
ingo@294: 	* pom.xml: Changed version of JFreeChart from 1.0.7 to 1.0.12, which
ingo@294: 	  includes the template mechanism to configure the style of charts.
ingo@294: 
ingo@294: 	  NOTE: JFreeChart 1.0.13 is the newest release, but the maven repository
ingo@294: 	  does not contain a pom.xml file. Created an issue on
ingo@294: 	  (http://jira.codehaus.org/browse/MEV-647).
ingo@294: 
ingo@261: 2009-11-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@261: 
ingo@261: 	* bin/run.sh: Added start-script to version control.
ingo@261: 
hans@260: 2009-11-13  Hans Plum <hans@intevation.de>
hans@260: 
hans@260: 	* RELEASE 0.2:
hans@260: 	Summarized activities in NEWS, Changes
hans@260: 
hans@259: 2009-11-13  Hans Plum <hans@intevation.de>
hans@259: 
hans@259: 	* ChangeLog:
hans@259: 	Unified style of ChangeLog descriptions refering to issues.
hans@259: 
tim@256: 2009-11-13  Tim Englich  <tim.englich@intevation.de>
tim@256: 
tim@258: 	* doc/conf/products/timeseries/conf_timeseriespoint.xml:
sascha@330: 	  Moved Comment according to Instantiationerrors loading Artifact.
tim@258: 
tim@258: 2009-11-13  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
tim@257: 	* doc/conf/log4j.properties,,
tim@257: 	  doc/conf/conf.xml,
tim@257: 	  doc/conf/arcsdeconnectionpool.properties,
sascha@330: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml:
tim@257: 	  Added Documentation of Configuration-Files.
tim@257: 
tim@257: 2009-11-13  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
tim@256: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
tim@256: 	  doc/conf/products/horizontalcrosssection/conf_mesh.xml:
tim@256: 	  Removed statistics as possible out-Variant from Configuration
tim@256: 	  according to TG_0030.061
sascha@330: 
sascha@330: 	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_out_statistics.xml,
sascha@330: 	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_out_statistics.xml,
sascha@330: 	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalCrossSectionMeshArtifact),
sascha@330: 	  (testVerticalCrossSectionMeshArtifact):
tim@256: 	  Removed Statistics-Test on This Artifact-Test because no Statistic is required
tim@256: 	  for this Producttyp.
sascha@330: 
hans@259: 	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/
sascha@330: 	HorizontalCrossSectionMeshOutputTransition.java (createCSV):
tim@256: 	  No Statistics for this Output is required.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/statistics/HorizontalCrossSectionStatistics.java:
tim@256: 	  Removed becaus the Statistics for ths product is not required.
tim@256: 
tim@253: 2009-11-12  Tim Englich  <tim.englich@intevation.de>
tim@253: 
sascha@330: 	* src/main/java/de/intevation/gnv/statistics/HorizontalCrossSectionStatistics.java (calculateXOrdinateValue),
sascha@330: 	  src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java (calculateXOrdinateValue),
sascha@330: 	  src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java (calculateXOrdinateValue),
tim@255: 	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java :
sascha@330: 	  Added the previous Row to the Method for calculating the GAP between
sascha@330: 	  those Rows. Also added Calculation of the Distance between two Points in
tim@255: 	  HorizontalProfileStatistic and returning the Depth in VerticalProfileStatistics.
tim@255: 	  Also added the Metjod clearStatistics to restet the Object if an new Calculation
sascha@330: 	  will started.
tim@255: 
tim@255: 2009-11-12  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (extractKVP):
tim@254: 	  Translated "Keine Auswahl" to "No Selection" according to the Specification that
sascha@330: 	  the primary Language is english. Please note that the Values  that are currently
sascha@330: 	  displaied are almost in german.
sascha@330: 
tim@254: 2009-11-12  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (writeStatistics2XML):
sascha@330: 	  Changed XML-Syntaxt according to the new Structure of StatisticValues.
tim@253: 	  (out):
sascha@330: 	  Changed Call of calculateStatistics according to the new Methodsignature.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java,
sascha@330: 	  src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java.
tim@253: 	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java,
sascha@330: 	  src/main/java/de/intevation/gnv/statistics/Statistics.java:
tim@253: 	  Extended Methods calculateStatistics to put Lable-Values into the
tim@253: 	  Calculation. Now for each Group of Statistics is it possible
sascha@330: 	  to calclulate a separat name which is simmilar to the name of
tim@253: 	  the Diagramm-Series-Name.
sascha@330: 	  Also the Representation of the Statistics has changed so each Group
tim@253: 	  will be stored in one StatisticSet
sascha@330: 
tim@253: 	* src/main/java/de/intevation/gnv/statistics/StatisticSet.java:
tim@253: 	  Bean for Storing the Statistic to one Group and also storing the
sascha@330: 	  Name of the Statistic.
tim@253: 
tim@251: 2009-11-11  Tim Englich  <tim.englich@intevation.de>
tim@251: 
hans@259: 	Issue 19: Validation of max. min value order
hans@259: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (putInputData):
tim@252: 	  Added Validation if a given maxvalue is greater than a given minvalue issue19
sascha@330: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid):
tim@252: 	  Added new Method for validating if a maxvalue is greater than a minvalue. issue19
sascha@330: 
tim@252: 2009-11-11  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 81: Keeping input values in coordinate input fields
hans@259: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/describedata/DefaultSingleValueDescribeData.java
sascha@330: 	  (setValue), src/main/java/de/intevation/gnv/transition/describedata/SingleValueDescribeData.java:
sascha@330: 	  Added setValue-Method
sascha@330: 	  for setting the Value which was sent back to the Server using the feed-request. issue81
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (getDescribeData):
tim@251: 	  Added SingleValueDescribeData to the method for storing InputValues for
tim@251: 	  Describeoutput issue81
sascha@330: 
tim@250: 2009-11-11  Tim Englich  <tim.englich@intevation.de>
tim@250: 
tim@250: 	* src/main/java/de/intevation/gnv/transition/describedata/MinMaxDescribeData.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/describedata/DefaultMinMaxDescribeData.java:
tim@250: 	  Added getName and added Constants for minValue and maxValue Id to
tim@250: 	  enable the storage of this Values which would be put using the
tim@250: 	  feed command.
sascha@330: 
tim@250: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe):
tim@250: 	  Changed the usage of the Name of the MinMaxTransition from getMinName to getName.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java (purifyResult):
tim@250: 	  Changed the Constructor of MinMaxTransition according to API-Changes of
tim@250: 	  DefaultMinMaxDescribeData
sascha@330: 
tim@249: 2009-11-11  Tim Englich  <tim.englich@intevation.de>
tim@249: 
hans@259: 	Issue 76: Improving XML config documents
hans@259: 
tim@249: 	* doc/conf/products/verticalprofile/conf_mesh.xml,
tim@249: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml,
tim@249: 	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
tim@249: 	  doc/conf/products/timeseries/conf_mesh.xml,
tim@249: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
sascha@330: 	  doc/conf/products/horizontalcrosssection/conf_mesh.xml:
tim@249: 	  Removed unnecessary characters 'v' from the Documents. issue76
tim@249: 
tim@247: 2009-11-10  Tim Englich  <tim.englich@intevation.de>
tim@247: 
tim@248: 	* src/main/resources/lang/artifactMessages_*.properties:
tim@248: 	  Added Ressources for the AreaFilter Ids areaid and subareid
tim@248: 
tim@248: 2009-11-10  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 68: Improving ODV Export
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (TIMESERIES_ODV_PROFILE_NAMES):
tim@247: 	  Sort Columns to the given order of the ODV-Specification
sascha@330: 	  and added the Columns DATAVALUE and PARAMETER to the output
tim@247: 	  according to issue68
hans@259: 
sascha@330: 	* doc/conf/queries.properties:
sascha@330: 	  Changed Column-alias in Query for HorizontalProfile ODV-Exports in Meshes
tim@247: 	  from PARAMETERID to PARAMETER to be able to use in only on ODV-Export-Profile
tim@247: 
tim@242: 2009-11-10  Tim Englich  <tim.englich@intevation.de>
tim@242: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalCrossSectionMeshArtifact):
tim@246: 	  Added the ODV-Export to the Unit-Testcase for VerticalCrossSection-Mesh.
sascha@330: 	  Some Refactoring Work done.
sascha@330: 	* doc/conf/products/verticalcrosssection/conf_mesh.xml:
sascha@330: 	  Added QueryID for ODV-Exports to the Configuration of an
tim@246: 	  Mesh-VerticalCrossSection-Artifacts
sascha@330: 	* doc/conf/queries.properties:
tim@246: 	  Added Query for VerticalCrossSection ODV-Exports in Meshes.
tim@246: 	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_feed.xml:
tim@246: 	  Changed Datevalue, because the old value was out of range to the Data.
sascha@330: 	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_out_odv.xml:
sascha@330: 	  Added Out-Request for ODV-Export to the JUnitTest Configuration for
tim@246: 	  VerticalCrossSection Mesh.
tim@246: 
tim@246: 2009-11-10  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
tim@245: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalCrossSectionMeshArtifact):
tim@245: 	  Added the ODV-Export to the Unit-Testcase for HorizontalCrossSection-Mesh.
sascha@330: 	  Some Refactoring Work done.
sascha@330: 	* doc/conf/queries.properties:
tim@245: 	  Added Query for HorizontalCrossSection ODV-Exports in Meshes.
sascha@330: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml:
sascha@330: 	  Added QueryID for ODV-Exports to the Configuration of an
tim@245: 	  Mesh-HorizontalCrossSection-Artifacts
sascha@330: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_feed.xml:
tim@245: 	  Changed Datevalue, because the old value was out of range to the Data.
sascha@330: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_out_odv.xml:
sascha@330: 	  Added Out-Request for ODV-Export to the JUnitTest Configuration for
tim@245: 	  HorizontalCrossSection Mesh.
tim@245: 
tim@245: 2009-11-10  Tim Englich  <tim.englich@intevation.de>
hans@260: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileInstantaneousPointArtifact):
tim@244: 	  Added the ODV-Export to the Unit-Testcase for HorizontalProfile-InstantaneousPoint.
tim@244: 	  Some Refactoring Work done.
sascha@330: 	* src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_06_out_odv.xml:
sascha@330: 	  Added Out-Request for ODV-Export to the JUnitTest Configuration for
tim@244: 	  HorizontalProfiles InstantaneousPoint.
sascha@330: 	* doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml:
sascha@330: 	  Added QueryID for ODV-Exports to the Configuration of an
tim@244: 	  InstantaneousPoint-HorizontalProfile-Artifacts
tim@244: 	* doc/conf/queries.properties:
tim@244: 	  Added Query for HorizontalProfile ODV-Exports in InstantaneousPoint
tim@244: 
tim@244: 2009-11-10  Tim Englich  <tim.englich@intevation.de>
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileInstantaneousPointArtifact):
tim@244: 	  Added the ODV-Export to the Unit-Testcase for VerticalProfile-InstantaneousPoint.
tim@243: 	  Some Refactoring Work done.
sascha@330: 	* doc/conf/products/verticalprofile/conf_instantaneouspoint.xml:
sascha@330: 	  Added QueryID for ODV-Exports to the Configuration of an
tim@243: 	  InstantaneousPoint-VerticalProfile-Artifacts
sascha@330: 	* doc/conf/queries.properties:
tim@243: 	  Added Query for VerticalProfile ODV-Exports in InstantaneousPoint
tim@243: 	* src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_odv.xml:
tim@243: 	  Added Out-Request for ODV-Export to the JUnitTest Configuration for VerticalProfiles InstantaneousPoint.
tim@243: 
tim@243: 2009-11-10  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileMeshPointArtifact):
tim@242: 	  Added the ODV-Export to the Unit-Testcase for HorizontalProfile-Mesh.
tim@242: 	  Some Refactoring Work done.
sascha@330: 	* doc/conf/products/horizontalprofile/conf_mesh.xml:
sascha@330: 	  Added QueryID for ODV-Exports to the Configuration of an
tim@242: 	  Mesh-HorizontalProfile-Artifacts
sascha@330: 	* doc/conf/queries.properties:
tim@242: 	  Added Query for HorizontalProfile ODV-Exports in Meshes
sascha@330: 	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_out_odv.xml:
tim@242: 	  Added Out-Request for ODV-Export to the JUnitTest Configuration for HorizontalProfiles Mesh.
sascha@330: 	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_02_feed.xml:
tim@242: 	  BugFix: Changed missspelled Input-Name
tim@242: 
tim@241: 2009-11-09  Tim Englich  <tim.englich@intevation.de>
tim@241: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (TIMESERIES_ODV_PROFILE_NAMES):
tim@241: 	  Changed the Order of Columnlookup for ODV-Exports and added column "Depth" to the Export
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesMeshArtifact):
tim@241: 	  Added the ODV-Export to the Unit-Testcase for TimeSeries-Mesh.
tim@241: 	  Some Refactoring Work done.
sascha@330: 	* doc/conf/queries.properties:
tim@241: 	  Added Query for VerticalProfile ODV-Exports in Meshes
sascha@330: 	* doc/conf/products/verticalprofile/conf_mesh.xml:
sascha@330: 	  Added QueryID for ODV-Exports to the Configuration of an
tim@241: 	  Mesh-VerticalProfile-Artifacts
sascha@330: 	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_out_odv.xml,
sascha@330: 	  src/test/ressources/verticalprofile/verticalprofile_step_06_out_odv.xml:
tim@242: 	  Added Out-Request for ODV-Export to the JUnitTest Configuration for VerticalProfiles.
sascha@330: 
tim@240: 2009-11-09  Tim Englich  <tim.englich@intevation.de>
tim@240: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesMeshArtifact):
hans@259: 	Added the ODV-Export to the Unit-Testcase for TimeSeries-Mesh.
hans@259: 	Some Refactoring Work done.
hans@259: 
hans@259: 	* src/test/ressources/timeseries_mesh/timeseries_step_08_out_odv.xml:
hans@259: 	Added Out-request for ODV-Export to the JUnitTest Configuration for TimeSeries Mesh.
hans@259: 
sascha@330: 	* doc/conf/products/timeseries/conf_mesh.xml:
hans@259: 	Added QueryID for ODV-Exports to the Configuration of an Mesh-TimeSeries-Artifacts
hans@259: 
hans@259: 	* doc/conf/queries.properties: Added Query for TimeSeries ODV-Exports in Meshes
hans@259: 
ingo@239: 2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@239: 
ingo@239: 	* src/main/java/de/intevation/gnv/exports/Export.java
ingo@239: 	  src/main/java/de/intevation/gnv/exports/DefaultProfile.java
ingo@239: 	  src/main/java/de/intevation/gnv/exports/DefaultExport.java: Added the
ingo@239: 	  possibility to print column labels in the first line of an export.
ingo@239: 
ingo@239: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
ingo@239: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@239: 	  Adjusted instantiation of the DefaultExport object and added column labels
ingo@239: 	  for odv export.
ingo@239: 
ingo@238: 2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@238: 
ingo@238: 	* src/main/java/de/intevation/gnv/exports/SimpleOdvDataCollector.java:
ingo@238: 	  Implemented a DataCollector for Odv exports.
ingo@238: 
ingo@238: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@238: 	  OEV-export uses a SimpleOdvDataCollector to collect export data.
ingo@238: 
ingo@235: 2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@235: 
ingo@235: 	* src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java,
ingo@235: 	  src/main/java/de/intevation/gnv/exports/HorizontalProfileDataCollector.java:
ingo@235: 	  Renamed HorizontalProfileDataCollector into ShapeDataCollector, because it
ingo@235: 	  will be used by other transitions as well.
ingo@235: 
ingo@235: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java:
ingo@235: 	  Adjusted class name of DataCollector after renaming.
ingo@235: 
ingo@234: 2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@234: 
ingo@234: 	* src/main/java/de/intevation/gnv/exports/HorizontalProfileDataCollector.java:
ingo@234: 	  Special DataCollector for fetching data used for horizontal profile
ingo@234: 	  exports.
ingo@234: 
ingo@234: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java:
ingo@234: 	  Uses the an exporter for csv export.
ingo@234: 
ingo@233: 2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@233: 
ingo@233: 	* src/main/java/de/intevation/gnv/exports/Export.java,
ingo@233: 	  src/main/java/de/intevation/gnv/exports/DefaultDataCollector.java:
sascha@330: 	  Implemented a DataCollector to collect all data used to create exports.
sascha@330: 	  DefaultCollector fetches data with help of its headers. For special
sascha@330: 	  exports, where a header returns more than one value, special
ingo@233: 	  DataCollectors needs to be implemented (overwritung the 'getData' method).
ingo@233: 
ingo@233: 	* src/main/java/de/intevation/gnv/exports/DefaultProfile.java,
ingo@233: 	  src/main/java/de/intevation/gnv/exports/DefaultExport.java: Export now
ingo@233: 	  uses a DataCollector to get the data.
ingo@233: 
ingo@233: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
sascha@330: 	  Adjusted exports of csv export.
ingo@233: 
tim@232: 2009-11-09  Tim Englich  <tim.englich@intevation.de>
tim@232: 
sascha@330: 	* doc/conf/queries.properties:
sascha@330: 	  Added SQLStatemenet for ODV-Data for VerticalProfiles
tim@237: 	  on TimeSeriesPoints.
sascha@330: 	* doc/conf/products/verticalprofile/conf_timeseriespoint.xml:
tim@237: 	  Added QueryID for ODV-Data-Query
sascha@330: 
tim@237: 2009-11-09  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
tim@232: 	* src/test/ressources/timeseries/timeseries_step_06_out_*.xml:
tim@232: 	  Added the missing out-Modes to the Testcase and rename it to
sascha@330: 	  the common used way in this TestCases.
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesArtifact):
tim@232: 	  Added the ODV-Export to the Unit-Testcase.
tim@232: 	  Some Refactoring Work done.
sascha@330: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out):
tim@232: 	  The Method for generating ODV-Export now reads its Data from
tim@232: 	  the special Method which delivers the adapted Data.
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (generateFilterValuesFromInputData):
tim@232: 	  Extracted the Generation of the FilterValues for the geo-backend
tim@232: 	  to use it in several methods.
sascha@330: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java (getODVResult):
sascha@330: 	  Added Method for getting the rquired Data for ODV-Exports
sascha@330: 	* doc/conf/products/timeseries/conf_timeseriespoint.xml:
sascha@330: 	  Added separat QueryID Lookup for ODV-Data-Queryies
sascha@330: 	* doc/conf/queries.properties:
sascha@330: 	  DB-Queries for ODV-Support TimeSeries on TimeSeriesPoints added.
tim@232: 
ingo@230: 2009-11-06  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@230: 
ingo@230: 	* src/main/java/de/intevation/gnv/exports,
ingo@230: 	  src/main/java/de/intevation/gnv/exports/Export.java,
ingo@230: 	  src/main/java/de/intevation/gnv/exports/DefaultProfile.java,
ingo@230: 	  src/main/java/de/intevation/gnv/exports/DefaultExport.java: Implemented an
ingo@230: 	  Exporter for odv and csv exports. Each exports just needs a Profile, which
sascha@330: 	  describes the output.
ingo@230: 
ingo@230: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
ingo@230: 	  Added an exemplary export for CSV and ODV formats of
ingo@230: 	  TimeSeriesOutputTransition.
ingo@230: 
ingo@230: 	  TODO: ODV exporter exports the same data as CSV exporter does. This needs
ingo@230: 	  to be adapted.
ingo@230: 
tim@229: 2009-11-06  Tim Englich  <tim.englich@intevation.de>
tim@229: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java:
ingo@230: 	  Added and moved Workflowsteps because of changes in the Workflow of these Artifacts.
ingo@230: 	  Now the Region-Filter is added to the Workflow an can be tested using
ingo@230: 	  this UnitTestCases.
ingo@230: 
sascha@330: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_*.xml,
ingo@230: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_*.xml,
ingo@230: 	  src/test/ressources/timeseries/timeseries_step_*.xml,
ingo@230: 	  src/test/ressources/timeseries_mesh/timeseries_step_*.xml,
ingo@230: 	  src/test/ressources/verticalprofile/verticalprofile_step_*.xml,
ingo@230: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_*.xml:
ingo@230: 	  Added and moved Files because of changes in the Workflow of these Artifacts.
ingo@230: 	  Now the Region-Filter is added to the Workflow an can be tested using
ingo@230: 	  the UnitTestCases.
ingo@230: 
ingo@228: 2009-11-06  Ingo Weinzierl <ingo.weinzierl@intevation.de>
ingo@228: 
ingo@228: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
ingo@228: 	  doc/conf/products/timeseries/conf_mesh.xml,
ingo@228: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
ingo@228: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
ingo@228: 	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
ingo@228: 	  doc/conf/products/verticalprofile/conf_mesh.xml,
ingo@228: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
ingo@228: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added odv
ingo@228: 	  as output format.
ingo@228: 
tim@226: 2009-11-06  Tim Englich  <tim.englich@intevation.de>
tim@226: 
sascha@330: 	* src/main/java/de/intevation/gnv/chart/ChartFactory.java (calculateMaxGap):
sascha@330: 	  Bugfix Gap-Calculation moved maxGap into negative Valies because of
tim@226: 	  overflow of Long-Variable.
tim@226: 
tim@222: 2009-11-05  Tim Englich  <tim.englich@intevation.de>
tim@222: 
sascha@330: 	* doc/conf/queries.properties:
tim@224: 	  Query to select only those TimeSeriesPoints
tim@224: 	  which are within an Region
sascha@330: 
sascha@330: 	* doc/conf/products/timeseries/conf_timeseriespoint.xml,
sascha@330: 	doc/conf/products/verticalprofile/conf_timeseriespoint.xml:
sascha@330: 	Added the RegionFilters into the configuration of the Products
hans@260: 	for TimeSeriesPoints.
tim@224: 
tim@224: 2009-11-05  Tim Englich  <tim.englich@intevation.de>
hans@259: 
sascha@330: 	* doc/conf/queries.properties:
tim@223: 	  Added new Queries to fill the Lists for the
tim@223: 	  Regionfilters and one Query to select only those Meshes
tim@224: 	  which are within an Region.
sascha@330: 
sascha@330: 	* doc/conf/products/verticalprofile/conf_mesh.xml,
sascha@330: 	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
sascha@330: 	  doc/conf/products/timeseries/conf_mesh.xml,
sascha@330: 	  doc/conf/products/horizontalprofile/conf_mesh.xml,
tim@223: 	  doc/conf/products/horizontalcrosssection/conf_mesh.xml:
tim@223: 	  Added the RegionFilters into the configuration of the Products
tim@223: 	  for Meshes.
tim@223: 
tim@223: 2009-11-05  Tim Englich  <tim.englich@intevation.de>
hans@259: 
tim@222: 	* src/test/ressources/*_describe.xml:
tim@222: 	  Added the DescribeRequestBodies to each TestCaseData.
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java:
tim@222: 	  Added the DescribeRequestBody to Describe-Calls in the Test
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java:
tim@222: 	  Added the possibility to switch to an alternative Transition if no value was choosen.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid):
tim@222: 	  Added that the Inputvalue is valid if it fullfills the confitions of "no value choosen" (n/n)
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java (calculateXOrdinateValue):
tim@222: 	   Added Dummyvalue for X-OrdinateValue
tim@222: 	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java (describe),
sascha@330: 	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java (describe),
tim@222: 	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java (describe),
sascha@330: 	  src/main/java/de/intevation/gnv/profile/horizontalcrosssection/HorizontalCrossSectionMeshArtifact.java (describe),
tim@222: 	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java (describe),
tim@222: 	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (describe),
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (createDescibeOutput):
tim@222: 	  Added the possibility to exclude the UI from the DescribeRequest.
tim@222: 
tim@221: 2009-11-03  Tim Englich  <tim.englich@intevation.de>
tim@221: 
sascha@330: 	* src/main/java/de/intevation/gnv/chart/ChartFactory.java (getTimeGapValue):
sascha@330: 	  Integrated special case for TimeGaps in Meshes. There is no Gap defined in
sascha@330: 	  Meshes so we have to use Long.MAXVALE to define a Gap for a Mesh which value
tim@221: 	  canno be reached.
tim@221: 
tim@220: 2009-11-02  Tim Englich  <tim.englich@intevation.de>
tim@220: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java
sascha@330: 	  (createCSV): Code Cleanup: Removed obsoled TODO Flag
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (setSelection):
sascha@330: 	  Changed the Value of the min and maxvalue of the Request to the Value which is unsed to name
tim@220: 	  the Inputfields in the DescribeOutput.
hans@259: 
tim@220: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java,
tim@220: 	  src/main/java/de/intevation/gnv/transition/Transition.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/SingleInputTransition.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/MinMaxTransition.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/DefaultTransition.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java,
tim@220: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (advance),
sascha@330: 	  CodeCleanup: Removed needless Method validate from Transition,
tim@220: 	  because it had always returned true
sascha@330: 
tim@218: 2009-10-30  Tim Englich  <tim.englich@intevation.de>
tim@218: 
tim@219: 	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_*.xml:
tim@219: 	  Added the Testdata for the Unittest for HorizontalCrossSectionMeshArtifacts.
tim@219: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalCrossSectionMeshArtifact):
tim@219: 	  Added the UnitTest-Case for HorizontalCrossSectionMeshArtifacts
sascha@330: 
tim@219: 2009-10-30  Tim Englich  <tim.englich@intevation.de>
hans@259: 
sascha@330: 	* doc/conf/queries.properties:
tim@218: 	  Added the Query for selecting the Data for generating Outputs of
tim@218: 	  HorizontalCrossSectionMeshOutputTransition
sascha@330: 	* doc/conf/products/horizontalcrosssection/conf_mesh.xml:
tim@218: 	  Added the configuration for the HorizontalCrossSectionMeshOutputTransition
tim@218: 	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java:
tim@218: 	  Added the OutputTransition for generating /HorizontalCrossSections.
tim@218: 	* src/main/java/de/intevation/gnv/statistics/HorizontalCrossSectionStatistics.java:
tim@218: 	  The Class for generating the Statistics to HorizontalCrossSections
sascha@330: 	* src/main/java/de/intevation/gnv/chart/HorizontalCrossSectionChartFactory.java:
tim@218: 	  The Class Stub for generating HorizontalCrossSections Charts.
tim@218: 
tim@217: 2009-10-29  Tim Englich  <tim.englich@intevation.de>
tim@217: 
hans@259: 	Issue 45: Defining gaps for spatial and temporal gaps
hans@259: 
tim@217: 	* doc/conf/products/timeseries/timegap_definition.xml,
tim@217: 	  doc/conf/products/timeseries/conf_timeseriespoint.xml:
tim@217: 	  Added the Configuration for TimeGaps to the TimeSeries-Configurations. issue45
sascha@330: 
sascha@330: 	* doc/conf/queries.properties:
tim@217: 	  Added TimeGapIp to the Queries for the Resultdata of TimeSeriesArtifacts. issue45
sascha@330: 
tim@217: 	* src/main/java/de/intevation/gnv/timeseries/gap/DefaultTimeGap.java,
sascha@330: 	  src/main/java/de/intevation/gnv/timeseries/gap/TimeGap.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (setup):
sascha@330: 	  src/main/java/de/intevation/gnv/chart/ChartFactory.java (calculateMaxGap):
tim@217: 	  Added configurable TimeGap Support to the TimeSeries-Chart-Generation. issue45
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
sascha@330: 	  src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java (readConfiguration):
tim@217: 	  Moved Method from GNVArtifactBase to make it assesible for more Objects. issue45
tim@217: 
tim@215: 2009-10-28  Tim Englich  <tim.englich@intevation.de>
tim@215: 
hans@259: 	* src/main/java/de/intevation/gnv/profile/horizontalcrosssection/
hans@259: 	HorizontalCrossSectionMeshArtifact.java (HorizontalCrossSectionMeshArtifact),
hans@259: 	doc/conf/queries.properties, doc/conf/conf.xml,
sascha@330: 	doc/conf/products/horizontalcrosssection/conf_mesh.xml,
hans@259: 	src/main/resources/lang/artifactMessages* .properties:
hans@259: 	Added Workflow for determining the Query-Parameters for  Horizontal cross-sections.
sascha@330: 
tim@216: 2009-10-28  Tim Englich  <tim.englich@intevation.de>
hans@259: 
sascha@330: 	* doc/conf/conf.xml:
tim@215: 	  Added Configuration for two new FIS. Current Meter and Ice Station Reports
hans@259: 
sascha@330: 	* src/main/resources/lang/artifactMessages*.properties:
tim@215: 	  Added Ressources for two new FIS. Current Meter and Ice Station Reports
tim@215: 
tim@213: 2009-10-27  Tim Englich  <tim.englich@intevation.de>
tim@213: 
hans@259: 	* doc/conf/conf.xml:
tim@215: 	  Added Configuration for two new FIS. Sea State and SEACAT
hans@259: 
sascha@330: 	* src/main/resources/lang/artifactMessages*.properties:
tim@215: 	  Added Ressources for two new FIS. Sea State and SEACAT
sascha@330: 
tim@214: 2009-10-27  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 61: Vertical profile (Meshes): Selection of minimal and maximal
hans@259: 	depths zones
hans@259: 
sascha@330: 	* src/main/resources/lang/artifactMessages*.properties:
tim@213: 	  Added Ressources for the minimal and maximal Layer to use in VerticalProfiles of Meshes issue61
hans@259: 
sascha@330: 	* doc/conf/products/verticalprofile/conf_mesh.xml:
tim@213: 	  Added two new Transitions for selecting the min and max-Layer to use. issue61
hans@259: 
sascha@330: 	* doc/conf/queries.properties:
tim@213: 	  Added Queries for Selecting the Depth for selecting the minimum and the maximum Layer to use
tim@213: 	  Drawing the Chart. issue61
hans@259: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileMeshArtifact):
sascha@330: 	  Integrated two further Transitions-Steps according to changes in Workflow of
tim@213: 	  VerticalProfiles in Meshes. issue61
hans@259: 
tim@213: 	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_*.xml:
tim@213: 	  New Testdata generated according to changes in Workflow of VerticalProfiles in Meshes. issue61
tim@213: 
tim@211: 2009-10-26  Tim Englich  <tim.englich@intevation.de>
tim@211: 
hans@259: 	Issue 31: TG_0020.018: Input of manual depth zones
hans@259: 
sascha@330: 	* src/main/resources/lang/artifactMessages_de_DE.properties:
tim@212: 	  Added Ressources for the minimal and maximal value of the depth
hans@259: 
tim@211: 	* src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_statistics.xml (renamed),
tim@211: 	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_csv.xml (renamed),
sascha@330: 	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_chart.xml(renamed),
sascha@330: 	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_feed.xml,
sascha@330: 	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_04_advance.xml,
tim@211: 	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_03_advance.xml,
sascha@330: 	  src/test/ressources/verticalprofile/verticalprofile_step_05_out_statistics.xml(renamed),
sascha@330: 	  src/test/ressources/verticalprofile/verticalprofile_step_05_out_csv.xml(renamed),
sascha@330: 	  src/test/ressources/verticalprofile/verticalprofile_step_05_out_chart.xml(renamed),
sascha@330: 	  src/test/ressources/verticalprofile/verticalprofile_step_05_feed.xml,
sascha@330: 	  src/test/ressources/verticalprofile/verticalprofile_step_04_advance.xml,
sascha@330: 	  src/test/ressources/verticalprofile/verticalprofile_step_03_advance.xml,
sascha@330: 	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java:
tim@211: 	  Edited the RestCases for VerticalProfiles according to the requirement that
sascha@330: 	  the user should be able to enter the minimal and maximal Value of the depth that
tim@211: 	  should be show n in the charts. issue31
hans@259: 
sascha@330: 	* doc/conf/queries.properties,
sascha@330: 	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
tim@211: 	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml:
tim@211: 	  Adding required Configuration-Parts to get the possible to enter the minmum
tim@211: 	  and maximum depth value that should be shown in the charts. issue31
tim@211: 
tim@206: 2009-10-23  Tim Englich  <tim.englich@intevation.de>
tim@206: 
tim@210: 	* src/test/ressources/timeseries_mesh/timeseries_step_07_feed.xml:
sascha@330: 	  The Timeperiod of the Modeldata has changed. so it was nessessarry to change
sascha@330: 	  the Unittest to get propper Results
tim@210: 
tim@210: 2009-10-23  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
tim@209: 	* doc/conf/queries.properties:
tim@210: 	  Some Queryimproofments done. Inner-Selects has been removed where it was possible.
sascha@330: 
hans@259: 2009-10-23  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 3: Artifact: Storing the internal state instead of results
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
sascha@330: 	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java (describe),
sascha@330: 	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java (describe),
tim@208: 	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java (describe),
tim@208: 	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java (describe):
sascha@330: 	  Use super.identifier as uuid. issue3
sascha@330: 
hans@259: 2009-10-23  Tim Englich  <tim.englich@intevation.de>
hans@259: 
tim@207: 	* src/test/ressources/verticalprofile/verticalprofile_step_04_feed.xml,
sascha@330: 	  src/test/ressources/verticalprofile/verticalprofile_step_03_advance.xml,
tim@207: 	  src/test/ressources/verticalprofile/verticalprofile_step_04_out_*.xml,
sascha@330: 	  src/test/ressources/timeseries_mesh/timeseries_step_07_out_*.xml,
tim@207: 	  src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_06_out_*.xml:
sascha@330: 	  Changed the uuid because the new Storage shows that there were different ones in one Testcase
sascha@330: 
tim@207: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
sascha@330: 	  Put the UUID into the Resultlookup
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java:
tim@207: 	  Removed the Storage of Results in the Object and put them into the ehcache
hans@259: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/Transition.java:
tim@207: 	  Removed some needless Methods that were not longer Required
sascha@330: 
hans@259: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java
hans@259: 	(advance), src/main/java/de/intevation/gnv/transition/SingleInputTransition.java
hans@259: 	(purifyResult),	src/main/java/de/intevation/gnv/transition/MinMaxTransition.java
hans@259: 	(purifyResult),	src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java
hans@259: 	(extractKVP), src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java
hans@259: 	(describe), src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java
hans@259: 	(describe), src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java
hans@259: 	(describe), src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java
hans@259: 	(describe), src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (uuid):
sascha@330: 	Lookup the Results from ehcache and centralize the Lookup to one methode.
tim@207: 
tim@207: 2009-10-23  Tim Englich  <tim.englich@intevation.de>
hans@259: 
sascha@330: 	* doc/conf/queries.properties:
tim@206: 	  Optimized Query horizontalprofile_instantaneouspoint_cruise because it is not warranted
tim@206: 	  that the name of an cruise is set. issue60
tim@206: 
tim@204: 2009-10-22  Tim Englich  <tim.englich@intevation.de>
tim@204: 
hans@259: 	* src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java
hans@259: 	(extractKVP): Added the possiblility to fetch an further Column with
hans@259: 	the alias Value to display it together with the Coordinatevalues
hans@259: 
sascha@330: 	* doc/conf/queries.properties:
tim@205: 	  Added the Coordinates to an Measuementpoint to display it.
hans@259: 
tim@205: 	* doc/conf/products/verticalprofile/conf_instantaneouspoint.xml:
hans@259: 	  Change TransitionType for displaying Coordinatevalues aditionaly to
sascha@330: 	  the Time of an Measurement
hans@259: 
tim@205: 2009-10-22  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 40: Instantiation of artifacts slow
hans@259: 
hans@259: 	* doc/conf/conf.xml, doc/conf/products/*/conf_*.xml:
tim@204: 	  Split the Configuration of the ArtifactDatabase in several Configurationfiles.
hans@259: 	  For Each Product-Artifact one single File to make it easier to administer the System.
hans@259: 
tim@204: 	* src/main/java/de/intevation/gnv/transition/TransitionFactory.java (createTransition),
tim@204: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (setup),
tim@204: 	  src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java (setup),
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (setup):
sascha@330: 	  Lookup of XML-Attributes was changed from XPath-lookup to direct
hans@259: 	  Access on the fetched Element to speed up the Artifactinstantiation issue40
hans@259: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (getConfigurationFragment):
hans@259: 	  Read Configuration information for the Productartifact from a separat folder if an xlink:href
tim@204: 	  Attribute exists in tne Configurationnode of the Artifact.
tim@204: 	  This was inserted to speed up the Artifactinstantiation and to split the Configuration
tim@204: 	  in several Configurationfiles that where smallaer issue40
sascha@330: 	  Also the lookup of XML-Attributes was changed from XPath-lookup to direct
tim@204: 	  Access on the fetched Element
tim@204: 
tim@201: 2009-10-21  Tim Englich  <tim.englich@intevation.de>
tim@201: 
hans@259: 	Issue 59: Added relative pathnames to central config document
hans@259: 
sascha@330: 	* doc/conf/conf.xml:
sascha@330: 	  Added relative locations for further required configurationfiles . issue59
tim@203: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java (createArtifactContext):
sascha@330: 	 Added the prossibility to configure the location of required configurationfiles not absolute. issue59
sascha@330: 
tim@203: 2009-10-21  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* doc/conf/arcsdeconnectionpool.properties:
tim@203: 	  Added separat ConnectionPoolProperties to this Project.
sascha@330: 	* doc/conf/*:
tim@203: 	  Moved ConfigurationFiles from src/test/ressources to doc/conf
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (configurationDir):
tim@201: 	  Changed Configuration Folder to doc/conf
tim@201: 
tim@198: 2009-10-20  Tim Englich  <tim.englich@intevation.de>
tim@198: 
hans@259: 	* doc/conf:
hans@259: 	Added Folder for the Configuration of the gnv-artifacts.
hans@259: 
tim@197: 2009-10-20  Tim Englich  <tim.englich@intevation.de>
tim@197: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalCrossSectionMeshArtifact):
tim@197: 	  Added Testcase for testing the Workflow for generating VerticalCrossSections.
sascha@330: 	* src/test/ressources/queries.properties:
tim@197: 	  Added the required Queries for providing VerticalCrossSection using Meshes.
sascha@330: 	* src/test/ressources/conf.xml:
tim@197: 	  Added the Configuration for an VerticalCrossSection using Meshes.
sascha@330: 	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_*.xml:
tim@197: 	  Adding Requestdocuments for testing the Workflow of Generating an VerticalCrossSection.
tim@197: 	* src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java :
tim@197: 	  Added an OutputTransition for renedering the Data of VerticalCrossSections.
sascha@330: 	* src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java:
tim@197: 	  Added Class for the Representation of VerticalCrossSection Artifacts into the Project.
tim@197: 	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChartFactory.java (createProfileChart):
tim@197: 	  Put Class-Sub for the Chart generation of VerticalCrossSections into the Project.
tim@197: 
tim@197: 2009-10-20  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 54: Errors in diagramms for time series in IMIS
sascha@330: 
sascha@330: 	* src/test/ressources/queries.properties:
hans@259: 	Bugfix for TIMESERIESPOINT the first and the last value weren't used
hans@259: 	in the Query which was integrated from the Prototyp to the Project
hans@259: 	ussue54
sascha@330: 
tim@190: 2009-10-19  Tim Englich  <tim.englich@intevation.de>
tim@190: 
hans@259: 	Issue 55: Harmoization of coordinate values for input fields
hans@259: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe):
tim@195: 	Added uniform Visualization of Single Input-Elements to MinMax-Elements. issue55
sascha@330: 
tim@195: 2009-10-19  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 56: Error - Behavior of a form without constraint values
hans@259: 
tim@194: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (feed):
sascha@330: 	  Catch Exception that the Calling Program could not put no InputData
sascha@330: 	  into the feed Request.issue56
tim@194: 
tim@194: 2009-10-19  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 19: Validation of date and double values
sascha@330: 
tim@193: 	* src/main/java/de/intevation/gnv/chart/ChartFactory.java (createDataset),
tim@193: 	  src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java (createDataset):
tim@193: 	  Adding empty Series into Chart to prevent NPE issue 19
sascha@330: 
tim@193: 2009-10-19  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 35: Wrong date values force the panel to start from beginning
hans@259: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (putInputData):
tim@192: 	  Correct misspelled Exception-Message as an Result of fixing issue35
sascha@330: 
hans@259: 2009-10-19  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 50: Adding the layer number for depth information
hans@259: 
sascha@330: 	* src/test/ressources/queries.properties:
sascha@330: 	  Changed the Value of Layer and Depth range visualization of Meshes
tim@191: 	  according to issue50
sascha@330: 
tim@191: 2009-10-19  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@260: 	Issue 47: Translation of strings for time series
hans@259: 
sascha@330: 	* src/main/resources/lang/artifactMessages*.properties:
tim@190: 	  Changed the displayed-Values as defined in issue47
sascha@330: 	* src/test/ressources/conf.xml:
sascha@330: 	  Changed the Key for the DataName of MIN-Max-Transitions to put a propper Name
tim@190: 	  into the UI-Describeoutput issue47
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe):
tim@190: 	  Added the X-Forms-Group-Element to surround the MinMaxDescibeObject-output to Give the
tim@190: 	  Group of Objects a propper Name issue47
sascha@330: 	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java (purifyResult):
tim@190: 	  Added the name of the Data to the MinMaxDescibeObject to put it into the UI-output
tim@190: 
tim@189: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
tim@189: 
hans@259: 	Issue 53: Changing of strings in parameter panel
hans@259: 
sascha@330: 	* src/test/ressources/timeseries_mesh/timeseries_step_05_feed.xml:
sascha@330: 	  src/test/ressources/conf.xml:
sascha@330: 	  src/main/resources/lang/artifactMessages*.properties:
tim@189: 	  Conformation to the tanslation of the MeshObjects  issue53
tim@189: 
tim@187: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
tim@187: 
hans@259: 	Issue 49: Integration of FIS to Meshes
hans@259: 
sascha@330: 	* src/test/ressources/queries.properties:
tim@188: 	  There are different FIS in the Relation Median.Mesh so it is
tim@188: 	  nessessary to sepcify which FIS should be selected by using the sourceid
tim@188: 	  issue49
sascha@330: 	* src/test/ressources/conf.xml:
tim@188: 	  Adding two further FIS to the Configuration which are based on Meshes.
tim@188: 	  Added the Sourceid to the ModelData issue49
tim@188: 	* src/main/resources/lang/artifactMessages*.properties:
tim@189: 	  Adding the Names of the two new FIS to the  Propertiesfiles issue49
tim@188: 
tim@188: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java (createXYSeries):
tim@187: 	  Adding 5% bigger Valuearea to the Chart according to GT0030.011
hans@259: 
tim@180: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
tim@180: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (VerticalProfileOutputTransition):
sascha@330: 	  Changed Domainlable for Verticalprofiles according to the Specification GT_0030.005
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/util/DistanceCalculatorTestCase.java (testDistanceCalculator):
tim@185: 	  Added Testcase for the DistanceCalculation
sascha@330: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java (createXYSeries):
sascha@330: 	* src/main/java/de/intevation/gnv/utils/DistanceCalculator.java (calculateDistance):
tim@186: 	  Added Calculation of the Distance in the unit km for Geodetic-Coordinates according to the Specification GT_0030.005
sascha@330: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java (HorizontalProfileOutputTransition):
tim@186: 	  Changed Domainlable for Horizintalprofiles according to the Specification GT_0030.005
sascha@330: 
tim@185: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
tim@184: 	* src/test/ressources/queries.properties:
tim@184: 	  The Levelnumber of Meshes will also be visualized in the choose of depth GT_0020.0020
tim@184: 
tim@184: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/test/ressources/conf.xml:
tim@183: 	  Added Coordinate-Values to Title of the TimeseriesDiagramm for Meshes
sascha@330: 
tim@183: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java (putInputData):
tim@182: 	  Bugfix ChartValues were not Recalculated after feed was called second Time.
sascha@330: 
tim@182: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/test/ressources/conf.xml:
tim@181: 	  Bugfix in MinMaxTransition the Maxvalue was not the correct Value.
sascha@330: 
hans@259: 2009-10-16  Tim Englich  <tim.englich@intevation.de>
hans@259: 
hans@259: 	Issue 38: Horizontal profiles: Visualization of distances in km
tim@182: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java (convert2DisplayCoordinate):
tim@180: 	  Added Transformation from WKT-Coordinate Reperesentation to BSH-Coordinate Representation. issue38
tim@180: 
tim@179: 2009-10-15  Tim Englich  <tim.englich@intevation.de>
tim@179: 
sascha@330: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java,
sascha@330: 	src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java,
sascha@330: 	src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
hans@259: 	src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
hans@259: 	src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java,
sascha@330: 	src/test/ressources/queries.properties, src/test/ressources/conf.xml:
hans@259: 	Added missing Class Description Values to the Horizontal Profile Charts
sascha@330: 
tim@177: 2009-10-15  Tim Englich  <tim.englich@intevation.de>
tim@177: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (getFisName):
tim@178: 	  Added Method for lookup FIS Names
sascha@330: 	* src/main/resources/lang/artifactMessages*.properties:
tim@178: 	  Added further Key-Value-Pairs for FIS
sascha@330: 	* src/test/ressources/conf.xml:
tim@178: 	  Changed Configuratioon to get the ID of an FIS to the Chartgeneration
sascha@330: 
tim@178: 2009-10-15  Tim Englich  <tim.englich@intevation.de>
sascha@330: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileMeshPointArtifact):
tim@177: 	  Activate Tests for CSV and Statistics on HorizontalProfiles
sascha@330: 
hans@260: 	*
hans@260: 	src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java
hans@260: 	(createCSV),
hans@260: 	src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java
hans@260: 	(createCSV):
sascha@330: 	Integrated special CSV-Export for HorizontalProfiles
tim@177: 
tim@176: 2009-10-14  Tim Englich  <tim.englich@intevation.de>
tim@176: 
tim@176: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java (createXYSeries):
tim@176: 	  Load WKT from ResultSet and calculate Distance to last point.
sascha@330: 	* src/test/ressources/queries.properties:
tim@176: 	  Switch Chart-Queries to Spatial-Queries.
tim@176: 
tim@175: 2009-10-13  Tim Englich  <tim.englich@intevation.de>
tim@175: 
hans@259: 	Issue 33: Improved logging for time-interval queries
hans@259: 
tim@175: 	* src/test/ressources/queries.properties,
tim@175: 	  src/test/ressources/conf.xml:
tim@175: 	  Added Parameter-Usage in Time-Interval-Query ISSUE-33
tim@175: 
tim@174: 2009-10-13  Tim Englich  <tim.englich@intevation.de>
tim@174: 
sascha@330: 	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_*_feed.xml,
sascha@330: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_*_feed.xml:
sascha@330: 	  Switched to Szenario where it is possible to select Data using the Coordinate.
tim@174: 	* src/test/ressources/conf.xml,
tim@174: 	  src/test/ressources/queries.properties:
hans@260: 	  Switched to SFS-Conformant-Queries in HorzintalProfile- and VerticalProfile-Mesh
hans@260: 
tim@173: 2009-10-13  Tim Englich  <tim.englich@intevation.de>
tim@173: 
sascha@330: 	* src/main/resources/lang/artifactMessages_*.properties:
hans@259: 	Switched to better Description of an Coordinate-Input-Field
hans@259: 
hans@259: 	* src/test/ressources/timeseries_mesh/timeseries_*_feed.xml:
hans@259: 	Switched to Szenario where it is possible to select Data using the Coordinate.
hans@259: 
sascha@330: 	* src/test/ressources/queries.properties, src/test/ressources/conf.xml:
hans@259: 	Switched to SFS-Conformant-Queries in Timeseries-Mesh
hans@259: 
sascha@330: 	* pom.xml:
hans@259: 	Added dependency to JTS 1.9
hans@259: 
sascha@330: 	* src/main/java/de/intevation/gnv/utils/exception/ValidationException.java
hans@259: 	(ValidationException), src/main/java/de/intevation/gnv/utils/InputValidator.java
hans@259: 	(getPointValue), src/main/java/de/intevation/gnv/transition/TransitionBase.java
hans@259: 	(prepareInputData4RegionDBQuery):
hans@259: 	Added the Support for specialized Handling of InputValues of type Coordinate.
hans@259: 
hans@259: 	* src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java:
hans@259: 	Added Transition for the Support of Coordinateinput handling.
hans@259: 
sascha@172: 2009-10-12	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@172: 
sascha@172: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
sascha@172: 	Closed small file descriptor leak.
sascha@172: 
tim@171: 2009-10-09  Tim Englich  <tim.englich@intevation.de>
tim@171: 
tim@171: 	* src/main/java/de/intevation/gnv/**/*.java Edited:
tim@171: 	Code Formatting and Cleanup.
sascha@330: 
tim@170: 2009-10-09  Tim Englich  <tim.englich@intevation.de>
tim@170: 
tim@170: 	* src/test/ressources/queries.properties Edited:
tim@170: 	  Add Parameters to the Queries to select only the Dates where
sascha@330: 	  the Parameters has been measured.
tim@170: 	* src/test/ressources/conf.xml Edited:
sascha@330: 	  Set that the ParameterIds should be used in the Query of the Dates.
tim@170: 
sascha@126: 2009-10-07	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@126: 
sascha@126: 	RELEASE 0.1
sascha@126: 
sascha@126: 	* Changes, NEWS: Summarized changes.
sascha@126: 
tim@123: 2009-10-06  Tim Englich  <tim.englich@intevation.de>
tim@123: 
tim@125: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java (HorizontalProfileOutputTransition) Edited :
tim@125: 	  Switch Lable-Value for Domain-Axis.
tim@123: 	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java (getRessource) Edited:
sascha@330: 	  Added missing Import
tim@123: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java (advance) Edited:
sascha@330: 	  Added i18n Support
tim@123: 	* src/main/resources/lang/artifactMessages*.properties Edited:
sascha@330: 	  Added some missing RessourceValues
tim@123: 
sascha@122: 2009-10-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@122: 
sascha@122: 	* src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_04_out_csv.xml,
sascha@122: 	  src/test/ressources/conf.xml,
sascha@122: 	  src/test/ressources/timeseries_mesh/timeseries_step_07_out_csv.xml,
sascha@122: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_06_out_csv.xml,
sascha@122: 	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_08_out_csv.xml,
sascha@122: 	  src/test/ressources/verticalprofile/verticalprofile_step_04_out_csv.xml:
sascha@122: 	  s@test/plain@text/plain@g to correct MIME type of CSV export
sascha@122: 
sascha@121: 2009-10-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/ressource/*.properties:
sascha@121: 	Deleted.
sascha@121: 
sascha@121: 	* src/main/resources/lang/*.properties: Re-inserted here. Maven now
sascha@121: 	includes them in the jar package.
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java:
sascha@121: 	Make code more robust. TODO: We need a better implementation here.
sascha@121: 
sascha@121: 	* Changelog -> ChangeLog: To make eclipse happy. Unified changelog style.
sascha@121: 
sascha@121: 	* pom.xml: xmllint-ed and set encoding of filtered resources to UTF-8
sascha@121: 
sascha@121: 2009-10-06  Tim Englich  <tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@121: 	  Bugfix in Query for getting Data for the Output.
sascha@121: 	  Now the Values will be sorted Correcly. Timevalue
sascha@121: 	  has been removed from the Query because it is not a
sascha@121: 	  Parameter which could be choosen from the User.
sascha@330: 	  Also dummies for XCOORD-Value and YCOORD-Value integrated so
sascha@121: 	  that is now Possible to visualize the Profile
sascha@121: 	  gnv/issue21
sascha@121: 
sascha@121: 2009-10-05	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/ressource/artifactMessages*.properties Edited:
sascha@330: 	  Added further Ressourec Values.
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileInstantaneousPointArtifact) Edited:
sascha@330: 	  Changed ArtifactName to real FIS.
sascha@121: 	* src/test/ressources/timeseries_mesh/timeseries_step_01_feed.xml Edited:
sascha@330: 	  Changed Product-Name from timeSeriesMesh to timeSeries to provide a General-Naming-Structure
sascha@121: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (setup) Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java Edited:
sascha@330: 	  Added Configurationsupport for the Labeling Data. Now it is possible do define the
sascha@330: 	  value-names in the Configurationfile.
sascha@330: 	* src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_03_feed.xml Edited,
sascha@330: 	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_02_feed.xml Edited,
sascha@330: 	  src/test/ressources/queries.properties Edited:
sascha@121: 	  Changed the Queries for the VerticalProfileInstantaneusPoint to the FIS-Query Mode.
sascha@121: 	  This Mode was send by Mr. Schulz-Ohlberg.
sascha@330: 	* src/test/ressources/conf.xml:
sascha@121: 	  Changed the Workflow for the VerticalProfileInstantaneusPoint to the FIS-Query Mode.
sascha@121: 	  This Mode was send by Mr. Schulz-Ohlberg.
sascha@121: 	  Also Added the support for value-names to the Configuration of VerticalProfileInstantaneusPoint.
sascha@121: 
sascha@121: 2009-10-05	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/ressource/artifactMessages_en.properties Renamed:
sascha@121: 	  Renamed from artifactMessages_en_EN.properties to artifactMessages_en.properties to get a
sascha@121: 	  propper support for PreferedLocale
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java (getRessource) Edited,
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/ressource/RessourceFactoryTestCase.java (setUp) Edited,
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe) Edited,
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (createSelectBox) Edited:
sascha@121: 	  Changed Method Signature from Locale to PreferedLocale[] to put all Useable Languages to
sascha@121: 	  the RessourceFactory
sascha@330: 
sascha@121: 2009-10-02	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/ressource/RessourceFactoryTestCase.java Added:
sascha@121: 	  TestCase for Testing the RessourceFactory
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/ressource/artifactMessages*.properties Added,
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java Added:
sascha@121: 	  Added Factory and Propertiesfiles for getting the localized Values
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/Transition.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/OutputTransition.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@121: 	  LanguageSupport Integrated
sascha@330: 
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (createCallContext) Edited:
sascha@121: 	  Extracted Method and Put CallMeta with Language German to the CallContext. Otherwise
sascha@330: 	  TestCase will produce NPEs.
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java Edited:
sascha@121: 	  Added Real CallMeta to the Method for usage in Artifacts. Otherwise
sascha@330: 	  TestCase will produce NPEs.
sascha@330: 	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_02_feed.xml Edited,
sascha@330: 	  src/test/ressources/timeseries_mesh/timeseries_step_02_feed.xml Edited,
sascha@330: 	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_02_feed.xml Edited,
sascha@121: 	  src/test/ressources/conf.xml Edited:
sascha@330: 	  Changed som Identifiers for Localisation.
sascha@121: 
sascha@121: 2009-10-02	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Added the Configuration of the Horizontal-Profile.Mesh.
sascha@121: 	  Also Edited the Workflowq for HorizontalProfile-Instantaneouspoint and
sascha@121: 	  Put three n ew FIS into the Configuration which represents HorizontalProfile-Instantaneouspoint.
sascha@330: 	* src/test/ressources/horizontalProfile_instantaneouspoint/*.xml Edited,
sascha@121: 	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileInstantaneousPointArtifact) Edited:
sascha@121: 	  Edited the Workflowlogic given by new Specification of the BSH.
sascha@121: 	* src/test/ressources/horizontalProfile_mesh/*.xml Added:
sascha@121: 	  The Request for do an Workflow for an HorizontalProfile-Mesh
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileMeshPointArtifact) Edited:
sascha@121: 	  Added TestCase for HorizontalProfiles of Type Mesh.
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java (getMeta) Edited:
sascha@330: 	  Added new Method which is defined in the implemented Interface.
sascha@121: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid) Edited:
sascha@121: 	  Added the Validation of InputValues from Type AttributeName which should represent
sascha@121: 	  an QueryValue of Type String which must not put into "'".
sascha@121: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java Added:
sascha@330: 	  Transition to provide the possibility of choosing the axis of an Grid that should be used.
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (dataMultiSelect) Edited:
sascha@330: 	  Changed from private to protected so that this mMeber could be accessed by within extending Classes.
sascha@121: 	* src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileMeshArtifact.java Added:
sascha@121: 	  Class for the Representation of Horizontal Profiles for the Type Mesh.
sascha@121: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java (HorizontalProfileChartFactory) Edited:
sascha@330: 	  Changed PlotOrientation so that the Profile is displayed correctly.
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (advance) Edited:
sascha@330: 	  Added Log-Message for better Workflowanalyzis.
sascha@330: 
sascha@121: 2009-10-01	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java,
sascha@121: 	src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
sascha@121: 	src/main/java/de/intevation/gnv/utils/ArtifactFactoryUtilities.java,
sascha@121: 	src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java,
sascha@121: 	src/main/java/de/intevation/gnv/transition/MinMaxTransition.java,
sascha@121: 	src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
sascha@121: 	src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java:
sascha@121: 	Removed needless imports.
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java:
sascha@121: 	Import org.apache.commons.validator.GenericValidator instead of
sascha@121: 	absolute usage in methods.
sascha@121: 
sascha@121: 2009-09-30	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@121: 	  Added the Queries for HorizontalProfiles of InstantaneousPoints.
sascha@121: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Added the Configuration for HorizontalProfilArtifact for InstantaneousPoints
sascha@121: 	* src/test/ressources/horizontalProfile_instantaneouspoint/*.xml Added:
sascha@121: 	  Added XML-Requests for the TestCase of HorizontalProfiles of InstantaneousPoints.
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileInstantaneousPointArtifact) Edited:
sascha@121: 	  Added TestCase for HorizontalProfiles of InstantaneousPoints.
sascha@330: 
sascha@121: 2009-09-30	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid) Edited:
sascha@330: 	  Added the Validation for Double-Values.
sascha@121: 	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (createChart) Edited:
sascha@330: 	  The Name of the Method for generaing Charts has changed.
sascha@121: 	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java Added:
sascha@330: 	  New outputTransition for HorizontalProfiles
sascha@121: 	* src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java Added:
sascha@330: 	  Class which calculates the Statistics for Horizontal Profiles.
sascha@330: 	* src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileInstantaneousPointArtifact.java Added,
sascha@121: 	* src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java Added:
sascha@330: 	  Classes which represents HorizontalProfileArtifacts
sascha@121: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java (plotOrientation) Edited:
sascha@330: 	  Added Member for the representation of the Plotorientation to overwrite it in
sascha@121: 	  extende Classes
sascha@330: 	  Rename Method for generatim the Charts in a common Name.
sascha@121: 	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java Added:
sascha@121: 	  Class for drawing Horzontal Profiles
sascha@330: 
sascha@121: 2009-09-30	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/conf.xml: s@test/xml@text/xml@g
sascha@121: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (doNextStep) Edited:
sascha@330: 	  Add Responsevalidation for feed-Requests.
sascha@121: 	* pom.xml Edited:
sascha@121: 	  Add required Library ORO to the Dependencies which is required by Commons-Validator
sascha@121: 	  to do matchRegexp Requests.
sascha@121: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid) Edited:
sascha@330: 	  Add a Validator for the type Point
sascha@121: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Changed mesh_coordinate from type Integer to type Point
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java (findValueTitle):
sascha@121: 	   Key of KeyValueDescribeData is a String. So it is not nessessary to parse the
sascha@121: 	   id into an Integer Value.
sascha@121: 	   Also some NP-Access removed.
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited:
sascha@121: 	  Some Coderedundances refactored.
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@330: 	  Bug fixed: Mesh TimeSeries will now Handle Charts with multiple Depth-Values properly.
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/timeseries_mesh/*.xml Added :
sascha@330: 	  TestCaseRequests for Timeseries FIS Mesh
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesMeshArtifact) Edited:
sascha@330: 	  Add Testcase for Timeseries Mesh
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (check4ExceptionReport) edited:
sascha@121: 	  ExceptionTest for Responsdocuments added.
sascha@121: 	  UnitTest will now fail if the Artifact delivers an ExceptionReport using the advance Request.
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileMeshArtifact) Edited:
sascha@330: 	  Added TestCase for Vertical Profiles for Mesh
sascha@121: 	* src/test/ressources/verticalprofile_mesh/*.xml Added:
sascha@330: 	  TestCaseRequests for VerticalProfile FIS Mesh
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid) Edited:
sascha@330: 	  Bugfix: Remove leading- and trailingwhitspaces from Date- and Integervalues
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileArtifact):
sascha@121: 	(testVerticalProfileInstantaneousPointArtifact) Edited:
sascha@330: 	 Added Testcases for VerticalProfile and VerticalProfile Instantaneouspoint
sascha@121: 	* src/test/ressources/verticalprofile_instantaneouspoint/*.xml Added:
sascha@121: 	   TestCaseRequests for VerticalProfile Instantaneouspoint
sascha@121: 	* src/test/ressources/verticalprofile/*.xml Added:
sascha@121: 	  TestCaseRequests for VerticalProfile FIS Marnet
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@330: 	  Remove to_date from TimeSeries-Quueries becaus of Changes in the conf.xml-File
sascha@121: 	* src/test/ressources/conf.xml Edited:
sascha@330: 	  Correct Types for min- and max-Values from Integer to Date
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesArtifact) Edited:
sascha@330: 	  Add CallContext to the Tests.
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java Add:
sascha@121: 	  A CallContext used only in Junit-Tests
sascha@330: 
sascha@121: 2009-09-29	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* pom.xml Edited:
sascha@121: 	  Added the dependency to Apache-Commons-Validator Version 1.3.1 which is
sascha@121: 	  used for the InputValoue-validation.
sascha@330: 	* src/main/java/de/intevation/gnv/utils/InputValidator.java Added :
sascha@121: 	  An InputValidator for Validating InputValues.
sascha@121: 	  At this Moment only Integer, String and Date is supported.
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (putInputData) Edited:
sascha@121: 	  Add the InputValidator to validate the incomming Values from the Clients.
sascha@330: 
sascha@121: 2009-09-28	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/chart/ChartFactory.java (createTimeSeries) Edited:
sascha@121: 	  Performanceimprovement: The Loop will be interrupted if the Pointer is bigger than the
sascha@121: 	  last Pointer of the Value that must be visualised.
sascha@330: 
sascha@121: 2009-09-28	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* pom.xml Edited:
sascha@121: 	  Added the Dependeny to the ehcache-Library
sascha@121: 	* src/test/ressources/ehcache.xml Added:
sascha@330: 	 The ehcache-Configuration.
sascha@121: 	* src/test/ressources/conf.xml Edited:
sascha@330: 	  Added the Link to the ehcache-Configuration.
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java (createArtifactContext) Edited:
sascha@330: 	  Added the Initialisation of the CacheManager.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/cache/CacheFactory.java Added:
sascha@330: 	  An Fractoryimplementation for the central access to the Cache.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java (purifyResult) Edited,
sascha@330: 	* src/main/java/de/intevation/gnv/transition/SingleInputTransition.java (purifyResult) Edited,
sascha@121: 	* src/main/java/de/intevation/gnv/transition/Transition.java Edited,
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@330: 	  Signature of Methods purifyResults, advanced and feed Changed to put the uuid to the Transition
sascha@121: 	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (createChart) Edited:
sascha@121: 	  Methodsignatur of getChartResult change for putting the uuid of an Artifact into it
sascha@330: 	* src/main/java/de/intevation/gnv/transition/OutputTransition.java (out) Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out) Edited:
sascha@330: 	  Method Signature Changed for putting the uuid of an Artifact to the Transition.
sascha@330: 	  stored
sascha@121: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Edited:
sascha@330: 	  removed the persitence of the Chartresults and put them into an Cache instance.
sascha@330: 
sascha@121: 2009-09-28	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (getStatisticsGenerator) Edited:
sascha@121: 	 Extracted the Instantiation of the Statistics-object to an protected Methode
sascha@330: 	 to make it possible that extending Classes could change it.
sascha@121: 	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (getStatisticsGenerator) Edited:
sascha@121: 	Overwrite  getStatisticsGenerator to instantiate the VerticalProfileStatistics-
sascha@121: 	* src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java Added:
sascha@121: 	  Class for Calculating Statistics for VerticalProfiles- The Only thing whisch differs to
sascha@330: 	  TimeSeriesStatists is that the XoordinateValue is an double and not an Date-Value
sascha@121: 	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java (calculateXOrdinateValue) Edited:
sascha@121: 	 Added the Methode calculateXOrdinateValue to this Class to switch is Values in extending Classes.
sascha@121: 	* src/main/java/de/intevation/gnv/statistics/Statistics.java (calculateStatistics) Edited:
sascha@121: 	  Added methodsignature to Interface for usage in different Implementations of Statistics.
sascha@330: 
sascha@121: 2009-09-28	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java (calculateStatistics) Edited:
sascha@121: 	  Bug fixed. Now all Values will be used to calculate the Statistics
sascha@330: 
sascha@121: 2009-09-28	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/conf.xml Edited :
sascha@121: 	  Changed the Output-format of Statistics from text/plain to text/xml.
sascha@330: 
sascha@121: 2009-09-28	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java Edited:
sascha@121: 	  Moved the calculating-Methods from the Conmstructor to an separat Method.
sascha@330: 	  Switched the ResultContainer from Array to Collection
sascha@121: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out) Edited:
sascha@121: 	  Added the Output-Variante for generating Statistics
sascha@121: 
sascha@121: 2009-09-28	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* pom.xml Edited:
sascha@121: 	  Added Link to Apache-Commons-Math to get the required Classes for the calculation
sascha@121: 	  of Statistics.
sascha@121: 	* src/main/java/de/intevation/gnv/statistics/exception/StatisticsException.java Added:
sascha@330: 	  Specified ExceptionClass for the Statistics Part of the gnv-artifacts
sascha@121: 	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java Edited:
sascha@330: 	  Remove compileErrors and switch to new Datastructure
sascha@121: 
sascha@121: 2009-09-28	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/statistics/Statistic.java Added ,
sascha@330: 	  src/main/java/de/intevation/gnv/statistics/Statistics.java Added ,
sascha@121: 	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java Added:
sascha@330: 	  Imported Statistics-Classes from old Project. Revision: 3101 Does not compile
sascha@330: 
sascha@121: 2009-09-25	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Added with and height Inputparameter to each Chart-OutputMode.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out) Edited:
sascha@121: 	 Added the usage of the Parameters revieved from the client for the ChartRendering
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/DefaultInputValue.java (DefaultInputValue) (getDefaultValue) Edited ,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/InputValue.java (getDefaultValue) Edited:
sascha@121: 	  Added the Method getDefaultValue to the Interface for getting the
sascha@121: 	  deafultvalue of an Parameter.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/DefaultOutputMode.java Edited,
sascha@121: 	 src/main/java/de/intevation/gnv/transition/OutputMode.java (getInputParameters) Edited:
sascha@330: 	  Added the Method  getInputParameters to the OutputMode for Handling the required Parameters
sascha@330: 	  of an OutputMode.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/OutputTransition.java (out) Edited:
sascha@330: 	  Put the InputParameter recived from the Client to the Methodsignature so that
sascha@330: 	  they can be used during the outputprocessing.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Edited:
sascha@330: 	  Read rquired Outputparameters from the Configuration
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@330: 	  Added support for Parameters in OutputNode of Describe-Artifact
sascha@330: 
sascha@121: 2009-09-24	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* pom.xml Edited:
sascha@330: 	  Added Library for CSV-Support
sascha@121: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out) Edited:
sascha@330: 	  Add support for CSV-Export
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (out) Edited:
sascha@330: 	  Add Fag on Context for storing the Artifact status after out.
sascha@330: 
sascha@121: 2009-09-24	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java (createSuccessReport) Edited:
sascha@330: 	  Added a centraL Method for creating an Successreoprt.
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited:
sascha@121: 	  Add ResultReporting to the different Metshods of an Artifact
sascha@330: 
sascha@121: 2009-09-24	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java Edited:
sascha@330: 	 Obsolet TODOs removed
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
sascha@330: 	  Create Exception Report added
sascha@121: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java (createExceptionReport) Edited:
sascha@330: 	  Method for creating Exceptionreports added.
sascha@330: 
sascha@121: 2009-09-24	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@121: 	  Queries formatted so that they can be analysed and extended easier.
sascha@330: 	  Some Bugs removed
sascha@330: 
sascha@121: 2009-09-24	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java  Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/chart/ChartLabels.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/chart/ChartFactory.java Edited:
sascha@121: 	  Removed obsolet Parameters an Methods.
sascha@330: 	  Use the ChartLable to put the DomainAxisLable into the Chart.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Edited:
sascha@121: 	  Some more Loggingoutput integrated.
sascha@121: 	  Some Performanceimprovements done. The ResultData will only be refreshed if
sascha@121: 	  the InputValues has changed.
sascha@121: 	  Some Refactoring Work done. Move some Members into from extending Classes
sascha@121: 	  into this implementation.
sascha@330: 	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Edited:
sascha@330: 	 Dummywerte fuer Diagrammgenerierung durch Echtwerte ersetzt.
sascha@330: 	 Obsolete Uebergabeparameter entfernt.
sascha@330: 
sascha@121: 2009-09-23	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@330: 	  Statements for InstantaneousPoint Vertical Profiles added
sascha@121: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Configuration for Vertikal Profiles for InstantaneousPoints added
sascha@121: 	* src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileInstantaneousPointArtifact.java (VerticalProfileInstantaneousPointArtifact) Added:
sascha@330: 	 New Artifact-Class Reperesenting Artifacts for InstantaneousPoints Creating VerticalProfiles added.
sascha@330: 
sascha@121: 2009-09-23	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (prepareInputData4DateDBQuery) Edited:
sascha@121: 	  Bug Fixed, now all Inputvalues of String and Date will be put into the Query
sascha@330: 
sascha@121: 2009-09-23	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java (createXYSeries) Edited:
sascha@330: 	  Bug fixed. Now all Values will be Renderd to the Chart
sascha@121: 	* src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileMeshArtifact.java Added:
sascha@121: 	  Artifact-class for VerticalProfile Mesh added
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
sascha@330: 	  Support for StringQuieries and OracleDateQueries added
sascha@330: 	* src/test/ressources/queries.properties Edited:
sascha@121: 	  Queries for VerticalProfile Mesh integrated
sascha@121: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Artifact for VerticalProfile Mesh integrated
sascha@330: 
sascha@121: 2009-09-22	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@121: 	  Added Queries for the Workfloe of collecting the
sascha@330: 	  required Information to generate a vertical Profile
sascha@330: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Added the Configuration of the VerticalProfileArtifact
sascha@121: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (getCollection) Edited:
sascha@330: 	  Some Codrefactoring done for reuse of Functionality in extended Classes.
sascha@121: 	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java Added:
sascha@330: 	Outputtransition for the Support of VerticalPropfiles
sascha@121: 	* src/main/java/de/intevation/gnv/transition/describedata/KeyValueDescibeData.java (getKey),
sascha@330: 	  src/main/java/de/intevation/gnv/transition/describedata/DefaultKeyValueDescribeData.java (getKey) Edietd,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (purifyResult) Edited:
sascha@330: 	 Change KEY-Attribute of KeyValueDescribeData from Integer to String for the required
sascha@330: 	 Representation of Date-KeyValue-Pairs
sascha@121: 	* src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java Added:
sascha@330: 	 ArtifactClass for the representation of VerticalProfiles
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (createSelectBox) Edited:
sascha@330: 	  Added support for selected Products in static UI.
sascha@121: 	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java Added:
sascha@330: 	  Factory for producing VerticalCharts added.
sascha@121: 	* src/main/java/de/intevation/gnv/chart/ChartFactory.java Edited:
sascha@330: 	  Names of Getter for Columns Changed.
sascha@121: 
sascha@121: 2009-09-21	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@330: 	 Queryie for TimeSeriesMesh added.
sascha@330: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  New Artifact representing the TimeSeries-Mesh added to the Configuration.
sascha@121: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Edited:
sascha@330: 	 Inputdata for the Chartgeneration will now be allocated by name and not by position in Transitionorder.
sascha@330: 	* src/main/java/de/intevation/gnv/transition/describedata/SingleValueDescribeData.java Added,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/describedata/DefaultSingleValueDescribeData.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/SingleInputTransition.java Added:
sascha@330: 	  New Class for Representing a single Input Transition
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
sascha@121: 	  Added support of usage inputValues none or multiple times in Queries.
sascha@121: 	  Added support for SingleInputTransitions in Describe-Output
sascha@330: 	* src/main/java/de/intevation/gnv/transition/InputValue.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/DefaultInputValue.java Edited:
sascha@330: 	  An InputValue now is possible to use none or multiple times in Queries.
sascha@121: 	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesMeshArtifact.java Added:
sascha@330: 	  ArtifactClass for the Representation of an Mesh-Timeseries-Artifact
sascha@121: 
sascha@121: 2009-09-17	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Database Cleanup Interval set to 5 minutes.
sascha@330: 
sascha@121: 2009-09-17	Tim Englich	<tim.englich@intevation.de>
sascha@330: 	* src/test/ressources/conf.xml Edited:
sascha@121: 	  Some structurechanges done.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java Edited:
sascha@330: 	  Fixed Bug supporting UTF-8 Documents properly.
sascha@330: 	* src/main/java/de/intevation/gnv/transition/describedata/DefaultKeyValueDescribeData.java Edited,
sascha@121: 	* src/main/java/de/intevation/gnv/transition/describedata/KeyValueDescibeData.java Edited,
sascha@330: 	 Added Methods for setting and getting the selection-state of this objects.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/describedata/DefaultMinMaxDescribeData.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/describedata/MinMaxDescribeData.java Edited:
sascha@121: 	  Added setter for min an max-Values and getters an setters for minName  and maxName
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/describedata/NamedCollection.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/describedata/NamedArrayList.java Added:
sascha@330: 	  Collection ans an Implementation of this Collection for Storing Name of the Collection and if
sascha@121: 	  the Values in it are multiselectable.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java :
sascha@121: 	 Static UI-Support and valid SelectionStorage added.
sascha@330: 	 I added also an imporvement of the multiselect Methods for Datasets
sascha@121: 	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java Edited:
sascha@121: 	  Storage of changed Values added
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited:
sascha@121: 	  Static UI Support Added
sascha@330: 
sascha@330: 
sascha@121: 2009-09-16	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/conf.xml Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe) Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/InputValue.java (isMultiselect) Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/InputData.java (concartValue) Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/DefaultInputValue.java (isMultiselect) Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/DefaultInputData.java (concartValue)Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (createUserInterface) Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (parseInputData) Edited:
sascha@121: 	   Added Multiselectsupport for InputValues
sascha@330: 
sascha@121: 2009-09-16	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (setup) Edited:
sascha@121: 	  Bug Fixed because of Infrastructure Changes in the Artifact-Module
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
sascha@121: 	  Put only the last DescribeData to the UI-Output bnecause auf Renderingproblems in the Client
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/describedata/DefaultKeyValueDescribeData.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/describedata/DefaultMinMaxDescribeData.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/describedata/KeyValueDescibeData.java Edited:
sascha@330: 	  Made Interface Serializable, add UIDs to the Implementations of the Interface
sascha@330: 
sascha@121: 2009-09-15	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (createUserInterface) Edited:
sascha@330: 	  Integrate UI-Representation for Describe into the FISArtifact.
sascha@121: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java (createXFormElement) Refactoring,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe) Refactoring:
sascha@121: 	  Extract the Element-Creation of XForms Nodes into a Common Class to make them available for
sascha@330: 	  other Classes which have to create XForm-Fragments
sascha@330: 
sascha@121: 2009-09-14	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/Transition.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/InputData.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/OutputMode.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/InputValue.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/describedata/DescribeData.java Edited:
sascha@121: 	  Make the Interfaces Serializable to make them usable in the Artifactdatabase
sascha@330: 
sascha@121: 2009-09-14	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/OutputTransition.java Edited ,
sascha@121: 	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@330: 	  Refactoring Work depending on Infrastructurchanges in the Artifact-Module
sascha@330: 
sascha@121: 2009-09-10	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_01_feed.xml Edited,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_01_advance.xml Edited,
sascha@121: 	  src/test/ressources/conf.xml Edited:
sascha@330: 	  TestCase moced from TimeSeriesArtifact to FISArtifact. Used FIS: Marnet
sascha@330: 
sascha@121: 2009-09-10	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java Added:
sascha@330: 	  Utilities-Class for some XML-Stuff that is only for gnv-artifacts
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/utils/ArtifactFactoryUtilities.java Added:
sascha@330: 	 Factory to Instantiiate an ArtifactFactory (TODO: Should be moved to Artifact-database)
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java Added:
sascha@121: 	  Interfcaedefinition and Defaultimplementation for the Representation of the different
sascha@121: 	  Products in an FIS.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Added:
sascha@330: 	  Artifact to Repersent an FIS. This Artifact is able to switch between different
sascha@330: 	  SubArtifacts for handling the different Products  of an FIS.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@330: 	  Refactoring Work done because of changes in the artifact-modules
sascha@330: 
sascha@121: 2009-09-10	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited:
sascha@121: 	  Refactoringwork done because of changes in the artifact-module
sascha@330: 
sascha@121: 2009-09-10	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited:
sascha@330: 	  src/test/ressources/conf.xml Renamed:
sascha@121: 	  Project Structure changed in artifact-database. So we have to rename
sascha@330: 	  the Testconfigurationfile in conf.xml.
sascha@121: 
sascha@121: 	* src/test/ressources/results Added:
sascha@121: 	  Integrated Folder for temporal storing Resultfiles of the TestCases
sascha@330: 
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@121: 	  Further Queries for Testcases integrated
sascha@330: 	* src/test/ressources/timeseries/timeseries_step_05_out.xml Added,
sascha@121: 	  src/test/ressources/timeseries/timeseries_step_05_feed.xml Added:
sascha@121: 	  Integrated the last step of the TimeSeries-Workflow.
sascha@121: 	  Now the TestCase is able to render Charts.
sascha@330: 
sascha@330: 	* src/test/ressources/timeseries/timeseries_step_04_feed.xml Edited,
sascha@121: 	  src/test/ressources/timeseries/timeseries_step_03_feed.xml Edited:
sascha@121: 	  Names of the feed-Parametes changed to the Syntax of BSH-Spelling
sascha@330: 
sascha@121: 2009-09-09	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
sascha@121: 	  Chart Rendering completed with some Fixes to do
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java:
sascha@121: 	  Integrated usage of KeyValueDescibeData
sascha@330: 	* src/main/java/de/intevation/gnv/transition/OutputTransition.java (getOutputModes):
sascha@121: 	 Errorhandling integrated
sascha@330: 	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited,
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@121: 	Refactored out-Method from Extending Class
sascha@330: 
sascha@121: 2009-09-09	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/chart/exception/TechnicalChartException.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/chart/ChartFactory.java Edited:
sascha@330: 	  Refactoring of the ChartFactory so that it colud be use and it is possible to compile
sascha@121: 	  this class.
sascha@330: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/describedata/KeyValueDescibeData.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/describedata/DefaultKeyValueDescribeData.java Added:
sascha@121: 	  Added an new Representation of Describedata for Key Value Pairs using for the Parameter Lists
sascha@330: 	  of the Transitions an put it into the Chartgeneration
sascha@330: 
sascha@121: 2009-09-09	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* pom.xml Edited:
sascha@121: 	Added JfreeChart Dependency to pom-file
sascha@330: 
sascha@121: 2009-09-09	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/chart/Insets.java Added,
sascha@330: 	  src/main/java/de/intevation/gnv/chart/ChartStyle.java Added,
sascha@330: 	  src/main/java/de/intevation/gnv/chart/ChartLabels.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/chart/ChartFactory.java Added:
sascha@121: 	  Insert Chart-Classes from OLD-Repository Revision: 3101 Does not compile
sascha@121: 
sascha@121: 2009-09-09	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Added:
sascha@330: 	  The specifed OutputTransition for the Product TimeSeries.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@121: 	  Integration of the OutputModes in the DescriberesultDocument.
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/OutputTransition.java Added:
sascha@330: 	  The Interface and the abstract Basicimplementation of an Transition which
sascha@121: 	  can produce different outputs.
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/DefaultOutputMode.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/OutputMode.java Added:
sascha@121: 	  Interfacestructur and Defaultimplementation for the Representation of the
sascha@121: 	  Different OutputModes given in an Artifact.
sascha@330: 
sascha@121: 2009-09-09	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe) Edited:
sascha@330: 	  Changed DateoutputFormat from German- to Anericanstyle
sascha@330: 
sascha@121: 2009-09-09	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/ressources/timeseries/timeseries_step_04_feed.xml Added,
sascha@121: 	* src/test/ressources/timeseries/timeseries_step_04_advance.xml Added:
sascha@330: 	  Two more ArtifactCommands for the next Step in TimeSeriesArtifactTestCase
sascha@121: 	* src/test/ressources/queries.properties Edited:
sascha@121: 	  New Queries for timeseries_timeinterval added.
sascha@330: 	  Also use KEY ,VALUE, MIN and MAX as Identifiers for the different Columns.
sascha@330: 	* src/test/ressources/GNVArtifactsTestCase_Configuration.xml Edited,
sascha@121: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited:
sascha@330: 	   Modified the TimeseriesArtifact and added one further TransitionStep
sascha@121: 
sascha@121: 2009-09-09	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/describedata/DefaultMinMaxDescribeData.java ,
sascha@121: 	* src/main/java/de/intevation/gnv/transition/describedata/MinMaxDescribeData.java,
sascha@121: 	* src/main/java/de/intevation/gnv/transition/describedata/DescribeData.java Added:
sascha@121: 	  Interface Structure and Defaultimplementation for Representing DescribeData of an
sascha@121: 	  Transition added. In this Way we are able to switch between different Renderingmethods
sascha@330: 	  for descibe.
sascha@121: 	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java Added:
sascha@330: 	  Added MinMaxTransition for representing Min-/Max-Value Results in a Tansition
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
sascha@330: 	  Integrated Min- / MAX-Value Support for Describe. Also done some Refactoring Work
sascha@330: 	  for easy creating Extensions of this Class.
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@121: 	  Userinterface Informations were integrated in the wrong Method. Now the
sascha@330: 	  Informations are put into the ui-Node
sascha@121: 
sascha@121: 2009-09-08	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/ressources/timeseries/timeseries_step_01_advance.xml Edited,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_01_feed.xml Edited,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_02_advance.xml Added,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_02_feed.xml Added,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_03_advance.xml Added,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_03_feed.xml Added,
sascha@121: 	  src/test/ressources/GNVArtifactsTestCase_Configuration.xml: Edited,
sascha@330: 	  src/test/ressources/queries.properties Added,
sascha@330: 	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited:
sascha@121: 	  TestCase implemented until Choosing the TimeInetval of an TimeSeries
sascha@330: 
sascha@121: 	  One Entry is Missing
sascha@330: 
sascha@121: 2009-09-08	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/Transition.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited,
sascha@121: 	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited,
sascha@121: 	  src/test/ressources/GNVArtifactsTestCase_Configuration.xml Edited,
sascha@330: 	  src/test/ressources/timeseries/timeseries_step_01_feed.xml Added ,
sascha@121: 	  src/test/ressources/timeseries/timeseries_step_01_advance.xml Added :
sascha@121: 	  Artifact.advance initial implementiert
sascha@330: 
sascha@121: 2009-09-08	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/DefaultInputData.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/InputData.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/exception/TransitionException.java Added,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/Transition.java Edited,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
sascha@330: 	  Funktionalitat Feed initial bereitgestellt.
sascha@330: 
sascha@121: 2009-09-08	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* src/test/ressources/GNVArtifactsTestCase_Configuration.xml,
sascha@330: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/DefaultInputValue.java Edited:
sascha@121: 	  Required Inputelements integrated in BasicArtifact-Descibe-Output
sascha@330: 
sascha@121: 2009-09-08	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/transition/DefaultInputValue.java Added,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/InputValue.java Added,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/Transition.java Edited,
sascha@121: 	  src/test/ressources/GNVArtifactsTestCase_Configuration.xml Edited:
sascha@330: 	  Constructs for the required Inputvalues for an Transition created
sascha@330: 
sascha@121: 2009-09-08	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java,
sascha@121: 	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java:,
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Edited
sascha@121: 	Added Output for Describe to the Artifactimplementation
sascha@330: 
sascha@121: 2009-09-08	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/ressources/GNVArtifactsTestCase_Configuration.xml,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/Transition.java (getDescription),
sascha@330: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (setup), (getDescription):
sascha@121: 	  Added Description to a Transition
sascha@330: 
sascha@121: 2009-09-07	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/test/ressources/GNVArtifactsTestCase_Configuration.xml,
sascha@330: 	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java: ADD
sascha@121: 	  TestClass for GNV-Artifacts an TimeSeriesArtifacs
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/transition/TransitionFactory.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/TransitionBase.java,
sascha@330: 	  src/main/java/de/intevation/gnv/transition/Transition.java,
sascha@121: 	  src/main/java/de/intevation/gnv/transition/DefaultTransition.java: ADD
sascha@121: 	  Transitionimplementation for handling the substeps of an Artifact Livecycle
sascha@330: 
sascha@121: 	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java: ADD
sascha@121: 	  The Artifact for handling the TimeSeries
sascha@121: 	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
sascha@121: 	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java:
sascha@121: 	  The Basic-Classes for providing GNC Artifacts. this Classes should be the Fundament
sascha@121: 	  for the Implementation of Specialized Artifacts e.g. TimeSeries
sascha@121: 	  * pom: Edited Projectreferences to the other GNV-Projects added
sascha@330: 
sascha@121: 2009-09-04	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@330: 	* src/main/java/de/intevation/gnv/artifacts/ArtifactFactoryBase.java:
sascha@330: 	  Implementation of the General ArtifactFactory
sascha@330: 
sascha@121: 2009-09-04	Tim Englich	<tim.englich@intevation.de>
sascha@121: 
sascha@121: 	* pom.xml: Created with maven and put the Moduledependencies into it
sascha@121: 	* target | .settings | .project | .classpath: Add to SVN-Ignore
sascha@121: 	* Changes | Changelog | NEWS | README | TODO: Added
sascha@121: 	* src/**: Added to the Project