view gnv-artifacts/ChangeLog @ 727:22dc921cd8b1

Added generic Export for all Columns which are in an ResultValue. gnv-artifacts/trunk@763 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Fri, 12 Mar 2010 11:28:36 +0000
parents 8d475151b2c1
children f6630d0203da
line wrap: on
line source
2010-03-12  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java (writeDataToFile): 
	  Added generic Export for all Columns which are in an ResultValue.
	  The first Column must be the Geometryvalue. all other Columns will be added
	  to the Shapefile using the defined Attribute-Class.

2010-03-10  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue201

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Use a better key - hash served by getHash() from StateBase - to put
	  chart results into cache.

2010-03-10  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/timeseries/conf_timeseriespoint.xml: Use MinMaxDateState
	  to handle date input instead of MinMaxState.

	* src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java: Added
	  EXCEPTION_NO_INPUT key used for a lookup in resource bundles.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java
	  src/main/java/de/intevation/gnv/state/OutputStateBase.java
	  src/main/java/de/intevation/gnv/state/StateBase.java,
	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
	  src/main/java/de/intevation/gnv/state/State.java: Return localized
	  error messages as xml documents if something failed while feeding the 
	  current artifact/state. These error messages are used to be displayed in
	  the user interface. There are two different error messages at the moment -
	  for general error messages related to server errors and a message invalid
	  user input. The difference between these messages is their location in the
	  xml document. Each message type is created with a separate method in
	  ArtifactXMLUtilities (createExceptionReport() and createInputException()).
	  The intention to separate these message types is to display them on
	  different places in the user interface.

	* src/main/java/de/intevation/gnv/state/MinMaxDateState.java: New state to
	  handle date input.

	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java: Converted
	  some class methods into static methods and added a new method to create an
	  xml document which contains an error message for invalid user input.

	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Added text for 
	  error messages.

2010-03-09  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties: 
	  Modified the Query for the lookup of the Tablename and the Whereclaus to
	  a choosen Layer. Now also the Templateid containing the Mapservice-ID and 
	  the Layer-Id was added to the Query.
	
	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java (templateExists): 
	  Add a method which will return if a given Template exists.
	  this could be used for determining if a specialized Template for a Layer 
	  is given or the Default one should be used.
	
	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (getWMS): 
	  Integrate lookup for MapFileTemplate for the different Layer.
	  If a special Template should be used it must be storde according to the 
	  following Syntax in the Folder which contain all other Mapfile-Templates.
	  
	  layer_{ID_MAPSERVICE}_${ID_LAYER}  e.g. layer_BSH_IMS_CONTIS_Resources_2
	  
	  If there is no Template matching the given Name the Defaulttemplates
	  layer_point,
	  layer_polygon or
	  layer_linestring 
	  will be used.

2010-03-09  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (out): 
	  Integrated ExceptionHandling if no Data was found for the given Layer.
	  If no data couuld be retrieved from the Database an XMl-Exceptionreport 
	  will be generated which must be analized by the Clients.

2010-03-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue186

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Adjusted
	  signature of method to store min/max ranges in x and y direction in
	  charts.

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Adjusted
	  method call to signature which has been changed in AbstractXYLineChart.

	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
	  some empty methods which overrides methods from parent which should not be
	  called on this class.

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java: Added
	  methods to store vertical min/max ranges in charts. After adding a new
	  series to this chart, we call prepareRangeAxis() to add an offset (5
	  percent) between values and chart border.

2010-03-08  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/maptemplates/layer*.vm: 
	  Added some basetemplates for Lines, Points and Polygons that will be used 
	  if an WMS-layer of the Product Layer will be created.
	
	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java (writeDataToFile): 
	  Changed Method in taht way that it now will return the geometrytype of 
	  this Layer instead of an boolean-value.
	  Null will determine that an Exception occured during the 
	  Shapefilegeneration.
	
	* src/main/java/de/intevation/gnv/utils/MetaWriter.java (writeLayerMeta): 
	  Added a new Method for writing the Metadatafile for WMS published by 
	  the Product Layer.
	  Done som Refactoring work for reusing som Code-Snippets.
	
	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (getWMS): 
	  Added the Basic-Support for publishing an WMS-Layer.
	  The Lookup of the Attributes which has to be put into the Shapefile and 
	  the lookup of the Template which schould be used to symbolize the Layer 
	  has to be implemented. 

2010-03-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue195

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Use InputData stored at the current state to create chart titles.

2010-03-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue189

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Changed insufficient key to store results for chart generation in cache.
	  Use 'getHash()' method for this now, which have been implemented while
	  refactoring the cache mechanism.

2010-03-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/state/StateBase.java,
	  src/main/java/de/intevation/gnv/state/MeasurementState.java,
	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Cleaned up imports.

2010-03-05  Ingo Weinzierl <ingo.weinzierl@intevation.de>
	
	* doc/conf/conf.xml: Set ttl to a better value. It has been set to 2min by
	  mistaken while working on mapfile generation.

2010-03-05  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue185

	* src/main/java/de/intevation/gnv/state/MeasurementState.java: Added missing
	  parameter name in describe document.

2010-03-05  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties: 
	  Added some more Queries which are required to serve the Requests of the 
	  Product Layer.
	
	* doc/conf/conf.xml: 
	  Changed the Sourceid of the FIS Contis because of Changes in the Database.
	
	* doc/conf/products/layer/conf.xml: 
	  Completed the Configuration for the Product Layer.
	  Added more Configurationdetails to the OutputStates.
	* src/main/resources/lang/artifactMessages*.properties:
	  Added the required ressources for the Product Layer and the FIS Contis and 
	  Nauthis into the Propertiesfiles.
	
	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java (writeDataToFile): 
	  Added an Method for writing g an Shapefile using an Collection of Results.
	  this Method must be extended that it could use the Result-object in an 
	  generic Way.
	  At this Moment it is only be Possible to write the Geometry into the 
	  Shapefile if it is given at the first Position of an Result.
	  All other Attributevalues will be ignored and not written into the Shapefile.
	
	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java: 
	  Added Support for writing Shapefiles and Export them as an Zipfile.

2010-03-05  Tim Englich  <tim.englich@intevation.de>
	* doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: 
	  ISSUE 191: Pdf, svg and png are now available.

2010-03-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/conf.xml: Added a section to configure MapServer relevant stuff.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Store mapserver path in CallContext object to have access everywhere we
	  have a CallContext object (avoids reading config.xml all the time we want
	  to write mapfile).

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java:
	  Added key to store MapServer information into CallContext and fetch it
	  from it.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Removed code to write meta information files (sourced out to MetaWriter).
	  This has been done with the intend to write meta information of CONTIS and
	  NAUTHIS using that class as well.

	* src/main/java/de/intevation/gnv/utils/MetaWriter.java: Helper class to
	  write meta information files used for mapfile generation. Write general
	  information about our wms service (MapServer) into meta information file.
	  This is used to give the user information about the place where he can
	  find the wms service and his generated wms layer.

2010-03-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/maptemplates/flow-velocity_polygons.class.vm,
	  doc/conf/maptemplates/water-levels_polygons.class.vm,
	  doc/conf/maptemplates/water-temperature_polygons.class.vm,
	  doc/conf/maptemplates/horizontalcrosssection_flow-velocity.vm,
	  doc/conf/maptemplates/flow-velocity_isolines.class.vm,
	  doc/conf/maptemplates/horizontalcrosssection_flow-velocity_isolines.vm,
	  doc/conf/maptemplates/horizontalcrosssection_water-levels.vm,
	  doc/conf/maptemplates/water-levels_isolines.class.vm,
	  doc/conf/maptemplates/horizontalcrosssection_water-temperature.vm,
	  doc/conf/maptemplates/water-temperature_isolines.class.vm,
	  doc/conf/maptemplates/horizontalcrosssection_water-levels_isolines.vm,
	  doc/conf/maptemplates/horizontalcrosssection_water-temperature_isolines.vm:
	  Added template files for water-levels, water-temperature and
	  flow-velocity.

2010-03-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue171

	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Changed
	  the way to calculate the current distance from startpoint. We do not
	  calculate the distance between the current point and the last point and
	  add this value to a variable storing the total distance anymore, but
	  we take the distance between the current point and the start point. On
	  this way, we do not need a variable to store the total distance, because
	  current point - first point == total distance. And there is no
	  impreciseness in gaps of different layers (see issue171 for this).

2010-03-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java: Added
	  some more debug information for gap detection on grids.

	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
	  some more debug information for gap detection on grids.

2010-03-03  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Log important
	  values used for gap detection if debug level is enabled.

2010-03-03  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue146

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Removed workaround to send a fake document if statistic is requested,
	  which is not available for this product type.

2010-03-03  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Trigger pdf creation for histograms when an 'out' call arrives with output
	  mode 'histogram' and export mode 'pdf'.

	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java:
	  Implemented a method to export histograms as multipage pdf file.

	* doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added pdf
	  support for histogram charts.

2010-03-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/OutputStateBase.java: Added an xpath
	  expression for export modes.
	
	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Refactoring of 'out' to be able to add pdf and svg exports to histogram. 
	  Now, there are just four output modes left (chart, histogram, csv, odv). 
	  Export modes (pdf, svg, img) are part of these output modes.
	  Implemented svg export for histogram charts.
	
	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java: Helper
	  method to export histograms as svg via output stream.

	* doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added svg
	  as export mode to histogram output in configuration files.

2010-03-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue180

	* src/main/java/de/intevation/gnv/state/profile/horizontal/NorthSouthEastWestState.java:
	  Removed CallMeta object from state which should not be serialized.
	  Implemented a little workarround to save localized strings on this state.

2010-03-01  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue182

	* src/main/java/de/intevation/gnv/state/StateBase.java: Display the selected
	  value if there is no description available. WKT-strings will be displayed
	  in the static ui part again.

2010-03-01  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue179

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Removed
	  code former used to append product select box.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Just use all parent
	  states to render the static part of the user interfact - not the current
	  state itself!

2010-03-01  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Removed
	  methods which aren't used anymore (used before changing the caching
	  mechanism).

2010-02-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/timeseries/conf_timeseriespoint.xml: Changed the
	  configured state class from DefaultState to MeasurementState.

	* doc/conf/queries.properties: Select parameterid from db as well, when
	  fetching all measurement ids.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Improved the way of
	  searching for descriptions in selected values (used in describe document).

	* src/main/java/de/intevation/gnv/state/MeasurementState.java: New state
	  object to create a describe document which can be used to render a 
	  measurement-parameter-matrix.

	* src/main/java/de/intevation/gnv/state/InputData.java,
	  src/main/java/de/intevation/gnv/state/DefaultInputData.java: Added a new
	  method to fetch a description by key.
	
	* src/main/java/de/intevation/gnv/state/describedata/ExtendedKeyValueData.java:
	  This class extends DefaultKeyValueDescibeData. It is used by
	  MeasurementState to create a mapping between measurements and parameters. 
	  Each key/value-pair has an extra attribute storing its parameter value.

2010-02-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Adapted
	  configuration. Pdf, svg, image exports got an own section in the
	  outputmodes node. Exports belong to an output mode, now. There are no
	  outputmodes 'pdf', 'svg', 'png' existing anymore.

2010-02-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Changed the way of using cache to store verticalcrosssection chart data.
	  Now, this type of chart is working without cache, as well.

2010-02-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/OutputStateBase.java: Changed the
	  way of using the cache to store chart / histogram data. Now, output modes
	  'chart' and 'histogram' are working without cache.

2010-02-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Better exception handling while cache configuration. The cache is not
	  initialized, if no cache is configured in conf.xml. There would have been
	  an exception without having a cache section in conf.xml. Now, it's
	  possible to use GNV without using a cache.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Changed logger name
	  from irritating 'GNVArtifactBase' to 'StateBase'.

2010-02-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Store request parameter in a map and put that map into other
	  classes/methods instead of putting each request parameter into an own
	  variable.

	* src/main/java/de/intevation/gnv/chart/DefaultHistogram.java: Implemented
	  logic to adjust number of bins in histogram charts. The user is able to
	  choose between the number of bins or the size of a single bin.

2010-02-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* contrib/palette2polygonVM.xsl: New. XSLT transformation to transform a
	  palette file into a style definition template used for mapfile creation.
	  Usage:

	  $ xsltproc contrib/palette2polygonVM.xsl  \
	    doc/conf/palette/water-temperature.xml  \
		> water-temperature.vm

2010-02-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Removed a bug in pdf and svg creation. No data were drawn into chart.

2010-02-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/timeseries/conf_mesh.xml: Added an export mode section
	  in output modes and added an export mode 'pdf' for showcase. This work is
	  necessary to split up output modes (chart, histogram, ...) from export 
	  modes (pdf, svg, png, ...). GUI components are now able to distinguish
	  between these modes and render each mode in an own section.

	* src/main/java/de/intevation/gnv/state/OutputStateBase.java: Read export
	  modes from configuration node.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Write
	  export modes into describe document.

	* src/main/java/de/intevation/gnv/state/DefaultOutputMode.java,
	  src/main/java/de/intevation/gnv/state/OutputMode.java: Added export modes
	  as java.util.List. 'getExportModes()' will deliver this list.

	* src/main/java/de/intevation/gnv/state/DefaultExportMode.java,
	  src/main/java/de/intevation/gnv/state/ExportMode.java: Object storing
	  necessary information for export mode.

2010-02-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/conf.xml: Restructured configuration of shapfile and template
	  directories. Moved map-generator part into gnv section.
	  Moved shapefile-directory configuration to an own section and removed
	  duplicated shapefile-directory config from map-generator.

	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Adjusted
	  xpath expressions regarding the changes in conf.xml. MapfileGenerator got
	  some instance variables to store information about mapfile location,
	  velocity log file and shapefile and template directories. This avoids
	  reading conf.xml every single time while updating the mapfile.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Adjusted xpath expression regaring the changes of shapefile-directory in
	  conf.xml.

2010-02-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	*  doc/conf/conf.xml: Added path for velocity logfile.

	* doc/conf/maptemplates/horizontalcrosssection_salinity.vm,
	  doc/conf/maptemplates/horizontalcrosssection_salinity_isolines.vm: Removed
	  absolute path in style includes.

	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Improved
	  velocity configuration regarding absolute pathes and logfile. 

2010-02-21	Sascha L. Teichmann <sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Fixed file handle leak when writing meta data.

	* src/main/java/de/intevation/gnv/state/StateBase.java,
	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
	  src/main/java/de/intevation/gnv/utils/MapfileGenerator.java,
	  src/main/java/de/intevation/gnv/chart/DefaultHistogram.java,
	  src/main/java/de/intevation/gnv/chart/AbstractHistogram.java,
	  src/main/java/de/intevation/gnv/exports/ChartExportHelper.java:
	  Clean up imports.

2010-02-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Write a meta information file after shapefile writing is finished. These 
	  meta information are used to map the type of shapefiles to a specific 
	  template and fill these layer-templates with data.

	* src/main/java/de/intevation/gnv/wms/LayerInfo.java: Class for storing meta
	  information for mapfile creation.
	
	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Implemented
	  method stubs. The MapfileGenerator starts searching for meta information 
	  in filesystem after update() is called. These information are used to to 
	  fill templates for the supported layers and a mapfile will be created out
	  of this.

	  TODO: Configure Velocity.

	* pom.xml: Added Apache Velocity 1.6.1 for templating mapfiles.

	* doc/conf/conf.xml: Adapted a section to configure necessary directories
	  and filenames for mapfile generation.
	
	* doc/conf/maptemplates/mapfile.vm: Base template for mapfile. All required
	  layers will be included into this template.

	* doc/conf/maptemplates/horizontalcrosssection_salinity_isolines.vm,
	  doc/conf/maptemplates/horizontalcrosssection_salinity.vm,
	  doc/conf/maptemplates/salinity_isolines.class.vm,
	  doc/conf/maptemplates/salinity_polygons.class.vm: Template support for 
	  salinity in horizontal crosssection wms.

2010-02-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/conf.xml: Added configuration section for writing mapfiles.

	* src/main/java/de/intevation/gnv/utils/MapfileGenerator.java: Singleton 
	  generator for writing mapfiles. It runs in an own thread and has an 
	  'update' method which triggers the generator to search the filesystem for 
	  shapefiles and meta information and update mapfiles out of these 
	  information. A 'main' method can be invoked to update the mapfile without
	  an running artifact server.

	  TODO: Implement method stubs.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Call MapfileGenerator when writing or removing shapefiles (endOfLife).

2010-02-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added
	  histogram as output mode.
	
	* doc/conf/charttemplate.xml: Added color of bars in histograms.

2010-02-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Added code path to create and return histograms.

	* src/main/java/de/intevation/gnv/chart/AbstractHistogram.java,
	  src/main/java/de/intevation/gnv/chart/DefaultHistogram.java: New. Classes
	  for creating histograms. Each histogram contains exactly one parameter.

	* src/main/java/de/intevation/gnv/chart/XMLChartTheme.java: Added parsing
	  of histogram bar color.

	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java: Added a
	  new funcion to copy all histograms into a single image and send it to
	  output stream.

	* src/main/java/de/intevation/gnv/histogram/HistogramHelper.java: New. Added
	  helper function to split the result collections for each parameter and for 
	  each measurement into pieces.

2010-02-12  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties: 
	  Integrated Queries for the Product Layer.

	* doc/conf/conf.xml: 
	  Integrated the new FIS Nauthis and Contis and the required Link to the
	  Configuration for the new Product Layer.

	* doc/conf/products/layer/conf.xml: 
	  Added Configuration for the new Product Layer.
	* src/main/java/de/intevation/gnv/state/OutputStateBase.java (getData): 
	  Changed Methodsignature from private to protected ro make it available
	  for extended Classes.

	* src/main/java/de/intevation/gnv/state/layer/LayerOutputState.java (LayerOutputState): 
	  Added new State for generating the Output for the Product Layer.
	  This Class is not jet completly implemented and will not return any
	  result at this Moment.

	* src/main/java/de/intevation/gnv/layer/LayerArtifact.java: 
	  Added new Artifactclass for the Product Layer.

2010-02-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/InputData.java,
	  src/main/java/de/intevation/gnv/state/DefaultInputData.java: Descriptions
	  of values are stored in an array, because one InputData object can contain
	  many data.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Get a description
	  for each input parameter and use an array to store all descriptions in an
	  InputData object. Result of this is, that all user selected parameters are
	  displayed and charts are well drawn again.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Split up data values stored in InputData objects in search mechanism for
	  specific parameters and put them all as KeyValueDescibeData objects into a
	  collection.

2010-02-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Removed
	  useless method calls which removed elements from cache, because each state
	  puts its own elements into cache - not in one big piece.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Adapted 'reset'
	  method. It removes the former user selection for this state, only.

2010-02-12  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/products/timeseries/conf_mesh.xml: 
	  Added new Transitions so that the State for entering a CoordinateValue will 
	  only be shown if no Point was inserted during the Instantiation of an Artifact.
	  (MapViewer-Interface)
	  The could be used in the FIS Modeldata using the Product TimeSeries. You also have
	  to use a Region in the RegionFilter.

2010-02-12  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/state/PreSettingsTransferState.java: 
	  This new State ist Implemented for the Case that Values of the PreSettings 
	  has to be used instead of InputValues. This States will look into the 
	  Presettings and put Values identified by the configurable Names into the 
	  InputData-Collection.
	  For the Configuration you can insert the following XML-Element into the 
	  Configuration of a State.
	  <presettings-transfer presetting="geometry" inputvalue="mesh_coordinate"/>
	
	* src/main/java/de/intevation/gnv/state/StateBase.java (getPreSettings),
	  src/main/java/de/intevation/gnv/state/State.java (getPreSettings): 
	  Added a getter-method for the PreSettings that are set at the State.
	  Using this way e.g the PresettingsValueCompareTransition can reach the 
	  Settings an can evaluate them.
	  
	* src/main/java/de/intevation/gnv/transition/PresettingsValueCompareTransition.java (operator): 
	  This transition will have a look at the Values which where ste during the 
	  instantiation of an Artifact. If a defined Value is given an the Value is 
	  Equal to the configured Value using the configured Operator the Transition 
	  to the configured State could be used. Otherwise the Transition could not
	  be used.

2010-02-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Replaced method call which removes non selected parameters from parameter
	  list. At this time, there are only selected parameters in the list, so
	  there is no need to clean it. The result: Charts are drawn.

2010-02-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/StateBase.java: Declared method as
	  'protected' to be allowed to use it in derived classes.

	* src/main/java/de/intevation/gnv/state/OutputStateBase.java: Changed the
	  key to store into cache and restore data from it. Added a workarround to
	  find min and max value fields in InputData.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Adapted the search mechanism for specific parameter collections. This is
	  required, because the the former mechanism searched in the big cache blob
	  - which doesn't exist anymore.

	  TODO: Repair chart generation. Although there are results existing for
	  chart generation, no chart in drawn.

2010-02-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/StateBase.java: Improved hash
	  creation of each state. The hash is created using the uuid, state-id and
	  the hash code of the input data required for the sql statement.

2010-02-10  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/StateBase.java: Append description
	  to InputData objects and use it while creating the describe document. The
	  description is displayed in the static GUI part. A nice side effect of
	  this is, that the subarea selection re-appears in the static GUI part.
	  Even if no subarea has been selected. Furthermore, removed some methods 
	  which became useless after refactoring the caching and rendering
	  mechanism.

	* src/main/java/de/intevation/gnv/state/MinMaxState.java: Adapted method
	  signature regarding changes in upper class.

2010-02-10  Ingo Weinzierl <ingo.weinzierl@intevation.de>
	
	* src/main/java/de/intevation/gnv/state/State.java: New method 'feed' in
	  this interface. It should be used to feed this state with new data 
	  selected by the user.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Use new
	  method 'feed' instead of 'putInputData' to feed the state with new data.

	* src/main/java/de/intevation/gnv/state/profile/horizontal/NorthSouthEastWestState.java,
	  src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java,
	  src/main/java/de/intevation/gnv/state/SingleInputState.java: Method
	  'purifyResult' just cleans values from database and returns it. DO NOT
	  put these results into cache at this place!
	
	* src/main/java/de/intevation/gnv/state/InputData.java,
	  src/main/java/de/intevation/gnv/state/DefaultInputData.java: Some new
	  methods to store objects in such an InputData object. Objects are used to
	  store MinMaxDescribeData objects for example. And further new methods to
	  store a description for each InputData object. This is used to render the
	  static GUI part. Until now, this object stored the id's of the
	  selected parameter, only - which are useless to show in GUI. The
	  description should be the string shown in the GUI, later.

	* src/main/java/de/intevation/gnv/state/MinMaxState.java: This type of state
	  overrides 'feed' and 'appendToStaticNode'. 'feed' takes user input and
	  parses min and max values from it (used for time periods for example).
	  'appendToStaticNode' will append these fields to the static GUI part.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Removed the big
	  cache blob and parted it into pieces. Each state will now put its
	  database data into cache. In this way, we are able to reuse these data
	  when the user steps back in history. Data, inserted by the user, will be
	  stored via 'feed'. Special input fields like multi selection or ranges
	  need to override this method to parse the input data and store them in
	  special objects.

	  TODOs:
		- The output modes are based on this big cache blob and search for
		  parameterid, measurementid and dateid in it.
		  TimeSeriesOutputState.getCollection() needs to be adapted!

2010-02-09  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultFIS.java (addParameter),
	  src/main/java/de/intevation/gnv/artifacts/services/requestobjects/FIS.java (addParameter): 
	  Added the possibility to add Parameters to an existing FIS.
	  
	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java (getFIS): 
	  Added the support of the usecase that one FIS can be identified by different
	  MapServices. In that case the parameters will be merged into the existing 
	  FIS.

2010-02-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/StateBase.java: Do not query the
	  cache / database for rendering the static part of the describe document -
	  just take the input data stored at each state.

	  TODOs:
		- Store 'description' of each chosen value. At the moment we are able to
		  render an id of value, only.
		- Take care of input elements with multi selection.
		- The subarea node disappears if we don't select any.

2010-02-09  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/conf.xml: 
	  Switched the usage of DummyMetaDataService to MetaDataService because
	  the Service is now able to work properly.
	* doc/conf/queries.properties: 
	  Added the required SQL-Statements for fetching the Metadata from the 
	  Database.
	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java:
	  Added the Database-Lookup of FIS and Parameters.
	  Now the Metadata will be looked up using the specified Databaseschema as
	  defined in doc/schema/externalinterface_schema.sql
	* src/main/java/de/intevation/gnv/artifacts/services/DummyMetaDataService.java 
	  Removed Dummyservice because it is not required any more.

2010-02-05  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue170
	
	* pom.xml: Changed log4j version to 1.2.14 (later version
	  causes errors and breaks maven build process).

2010-02-05  Tim Englich  <tim.englich@intevation.de>

	* pom.xml: 
	  Changed from ArcSDE version 9.2.5 to Version 9.3
	  You have to Install the required Libraries as described in
	  https://bsh-intern.intevation.de/Mavenbuildprozess
	  
2010-02-05  Tim Englich  <tim.englich@intevation.de>
	* doc/schema/externalinterface_testdata.sql: 
	  Changed the Testdata for layerhasparameter according to the the changes of 
	  the Tablestructure.
	* doc/schema/externalinterface_schema.sql: 
	  Changed id_layer Column in Table layerhasparameter from literal to number.
	  And added Column Layername to this Table.
	  This is nessessary because the Identifcation of an Layer is not the name 
	  but the ID.

2010-02-05  Tim Englich  <tim.englich@intevation.de>
	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: 
	  ISSUE167
	  Fixed Bug in Konfiguration. Now Regionfilters can be used without running 
	  in an Exception.

2010-02-02  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml: 
	  Added the possibility to use the Informations (PreSettings) which are
	  send using the MapViewer-Interface in all States which are responsible to
	  manage the choice of Parameters during the Workflows of GNV-Artifacts.

2010-02-02  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/state/DefaultInputData.java (splitValue),
	  src/main/java/de/intevation/gnv/state/InputData.java (splitValue): 
	  Added Method which spilts the Values using the same Separator which is
	  used to concart the Values.

	* src/main/java/de/intevation/gnv/state/StateBase.java: 
	  Added the usage of the Presettings during the Loading of the Data
	  which is nessesary to describe the current State.
	  If Values are given in the Presettings which are identified by the 
	  name wwhich is specified in the Configurationelement presettings-name
	  only the Intersection of the fetched Objects and the PresettingsObjects 
	  are used.

	* src/main/java/de/intevation/gnv/state/State.java (setPreSettings): 
	  Added new Method setPreSettings to be Able to put the Presettings from the 
	  current Artifact to the different States.

	* src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java (setup): 
	  The Method Setup now extracts the given PreSettingsparameter from the 
	  XML-Document and put them to the ProductArtifacts which are instantiated in 
	  the advance()-Method using the Methods of the PreSettingArtifact-Interface.

	* src/main/java/de/intevation/gnv/artifacts/PreSettingArtifact.java (setPreSettings): 
	  New interfacedefinition. Artifacts which are implementing this Interface 
	  are able to exchange the given Presettings using the given getter and 
	  setter methods of this Interface.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: 
	  The GNVArtifactBase now implements the Interface PreSettingsArtifacts.
	  So it is able to manage Data which is set during the construction of an 
	  new ArtifactInstance.
	  It also put the PreSettings-data to the different States. So that they are 
	  able to use it during their livecycle.

2010-02-01  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/conf.xml: 
	  Added the Configuration-node for the MetaDataService into the Configuration
	  of the GNV-Artifact-Restserver.
	  At tis Moment it is only useful to use the DummyMetaDataService.

	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultLayer.java: 
	  Defaultimplementation of the Interface Layer.
	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/Layer.java: 
	  Interfacedefinition for Objects that represents Layer and GroupLayer that 
	  where parsed from the XML-Document which was sent to the MetaDataService

	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultMapService.java: 
	  Defaultimplementation of the Interface MapService.
	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/MapService.java: 
	  Interfacedefinition for Objects that represents Mapservices that where 
	  parsed from the XML-Document which was sent to the MetaDataService.
	
	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultParameter.java: 
	  Defaultimplementation of the Interface Parameter.
	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/Parameter.java:
	  Interfacedefinition for representing an Parameter which belongs to an FIS.

	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/DefaultFIS.java: 
	  Defaultimplementation of the Interface FIS.
	* src/main/java/de/intevation/gnv/artifacts/services/requestobjects/FIS.java: 
	  Interfacedefinition for representing an FIS which will be used as an 
	  ResultValue of the MetaDataService-Processing.

	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataServiceException.java: 
	  Exceptionclass for classifiing Exception which occurs during the processing
	  of an MetaDataService-Call.

	* src/main/java/de/intevation/gnv/artifacts/services/DummyMetaDataService.java: 
	  DummyClass of an MetaDataService. This Class can be use to simulate an 
	  MetaDataService-Call until the required Metadata for the prossessing are
	  available in the Database-Backend.
	  This Class only returns the given Mapservices as an FIS and the Layer 
	  as an Parameter to a given FIS.

	* src/main/java/de/intevation/gnv/artifacts/services/MetaDataService.java: 
	  This Class is an Implementation of the de.intevation.artifacts.Service 
	  Interface. This Service should provide Informations which FIS are available 
	  for given Mapservices an which FIS are intersecting a given Region
	  These Informations are required according to definition of the MapViewer
	  Interface.
	  
2010-02-01  Tim Englich  <tim.englich@intevation.de>
	
	* src/test/java/de/intevation/gnv/artifacts/TestArtifactDatabase.java (createArtifactWithFactory): 
	  Fixed Compilance-Errors triggered by Interface-Modifications in the 
	  Artifact-Module.

	* src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointVerticalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointTimeSeriesTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshTimeSeriesTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointVerticalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointHorizontalProfileTestCase.java (testArtifact):
	  Refactored Artifact-Instantiation using the new createArtifact()-Method of the super-Class.

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java (createArtifact)
	  Added Method for instantiating an new Artifact using the given Artifactfactory.
	  Also fixed the Compilance-Errors triggered by Interface-Modifications in the 
	  Artifact-Module.

2010-02-01  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java (setup),
	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java (setup), 
	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java (setup),
	  src/main/java/de/intevation/gnv/profile/horizontalcrosssection/HorizontalCrossSectionMeshArtifact.java (setup), 
	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java (setup),
	  src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java (setup),
	  src/main/java/de/intevation/gnv/artifacts/GNVProductArtifactFactory.java (createArtifact),
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (setup): 
	  Changed Method signatures because of Interfacemodifications in the 
	  Artifact-Module. Now it is possible to retrieve the XML-Document which was
	  send by an Client during the create-Call. So it is possible to get further
	  Informations which could be used during the livecycle of an Artifact.
	

2010-01-31  Sascha L. Teichmann <sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java,
	  doc/conf/conf.xml: Added configuration for extrapolation in "Horizontalschnitte".

	  Use gnv/horizontal-cross-section/extrapolation/@rounds with 
	  integer rounds > 0 to turn extrapolation on (default: 0).
	  Rounds is a number of successive point extrapolations which means that 
	  the grid is successively filled with missing points based on prior rounds. 
	  The larger 'rounds' get more gaps are filled synthetic generated points.

	  Set this to 2 to get good results for the model data FIS.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Foward configuration to area interpolation.

	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java: 
	  Foward configuration to GridCell.

	* src/main/java/de/intevation/gnv/math/Point2d.java: Added method to extrapolate
	  point along a line spanned by two points.
	  Calculate Inverse Distance Weighting (IDW) for a given set of points on
	  z components. Added method to check if set of points are near a given
	  point.

	* src/main/java/de/intevation/gnv/math/GridCell.java: Before building the
	  i/j cells the grid is filled with synthetic generated points. The 
	  position is estimated from the neighboring points. The parameter values
	  are calculated by IDW. Some care is taken to avoid invalid grid topologies.

	  TODO: Implement this for the "Profillschnitt" too to keep the inner
	  symmetry.

2010-01-29  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/MeshVerticalProfileTestCase.java (testArtifact),
	* src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java (testArtifact),
	* src/test/java/de/intevation/gnv/artifacts/MeshHorizontalProfileTestCase.java (testArtifact),
	* src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java (testArtifact):
	  Increases the number of steps that has to be done for the different products plus one.
	  
	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_out_statistics.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_out_odv.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_out_csv.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_out_chart.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_feed.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_11_advance.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_feed.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_advance.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_09_advance.xml:
	  Added Advance and Feed-Document for the State Year.
	  Changed the Advance to the State Year.
	  Moves the Last state to *11*.xml Documents.
	
	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_out_odv.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_out_csv.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_out_chart.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_feed.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_07_advance.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_06_feed.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_06_advance.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_05_advance.xml:
	  Added Advance and Feed-Document for the State Year.
	  Changed the Advance to the State Year.
	  Moves the Last state to *07*.xml Documents.
	
	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_out_statistics.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_out_odv.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_out_csv.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_out_chart.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_11_advance.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_feed.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_advance.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_09_advance.xml:
	  Added Advance and Feed-Document for the State Year.
	  Changed the Advance to the State Year.
	  Moves the Last state to *11*.xml Documents.
	
	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_08_out_zip.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_08_out_wms.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_08_feed.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_08_advance.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_feed.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_advance.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_advance.xml: 
	  Added Advance and Feed-Document for the State Year.
	  Changed the Advance to the State Year.
	  Moves the Last state to *08*.xml Documents.

2010-01-27  Hans Plum <hans@intevation.de>

	RELEASE 0.4

	* Changes, NEWS, ChangeLog: Summarized activities

2010-01-27  Sascha L. Teichmann <sascha.teichmann@intevation.de>

	* Changes: Reordered items a bit

2010-01-27  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue164

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Applied patch of SLT to remove shape files and directories of out-dated
	  artifacts. Therefor we need to store the artifact after an 'out' operation 
	  - which is actually a read only operation - explicitly into the artifact
	  database to keep the directory path.

2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Calculate results after reaching the final state and store them in cache.
	  This avoids long latencies for chart creation or exports.

2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue158

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Replaced old way to create ChartLabel objects with a method call
	  'createChartLabels()'.

2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
	  Set white border (border arround drawing area) as default for 
	  'Profilschnitte'.

2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Calculate results after reaching the final state and store them in cache.
	  This avoids long latencies for chart creation or exports.

2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue162

	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
	  doc/conf/queries.properties: Adapted transition model. Splitted date
	  selection of 'Horizontalschnitte' into two steps.

2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/verticalcrosssection/conf_mesh.xml: Removed csv export
	  from product 'Profilschnitt'.

2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java: Fixed an
	  ArrayIndexOutOfBounds-exception which occured if there are less than two
	  data points.

2010-01-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue161

	* doc/conf/products/verticalprofile/conf_mesh.xml: Adapted transition model.
	  Splitted date selection into two steps.

2010-01-25	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	Fix/Workaround for gnv/issue159

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Deactivated the index buffer by default because applying it gives to
	  less data points in some circumstances. When processing the 
	  "horizontalen Schnittprofile", the "Profilschnitte" and the
	  "Horizontalschnitte" the whole set of mesh cells for
	  the given parameters are retrieved. This results in much
	  more traffic from database (~ 10x) but seems not to be much slower.
	  The memory consumption increases accordingly.

	  To turn the index buffer on again use the boolean system properties:

		  "gnv.horizontal.profile.mesh.cross.index.buffer"
		  "gnv.vertical.cross.section.index.buffer"
		  "gnv.horizontal.profile.mesh.cross.index.buffer"

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Because much
	  more data is processed a more sophisticated point culling strategy is
	  implemented now. 
	  
	  If the number of points are higher than a given threshold (system property 
	  "gnv.interpolation2d.cull.point.threshold", default: 1000) a culling is 
	  performed. Two cases:

	  a) given a path P ("horizontales Schnittprofil", "Profilschnitt")
	     Calculates a bounding box B for P and continues with (b).

	  b) a bounding box B ("Horizontalschnitt", and above after (a))
	     Calculates a bounding box C for the input points. If the
		 area of B is greater than 80% of the area of C no culling is
		 performed. Else B is extended by 10% in each direction.
		 If the new area of B is smaller than 10% of the area of C
		 B is adjusted to have at least 10% the size of C.

	  All input points that are not inside B are culled. Afterwards the
	  i/j grid cell units are created and pushed into a spatial index
	  as described below.

2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue157

	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
	  Added method to adjust background color of this chart.

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Set white background as all other charts have.
	  
2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue160

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Copied a
	  method from JFreeChart and adapted date formats.

2010-01-25	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/arcsdeconnectionpool.properties: Set serverRoundtripInterval
	  to 5 seconds and serverInactiveInterval to 5 minutes.

2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/queries.properties: Splitted date selection into two steps - year
	  and concreate date in this year. Removed useless option to 
	  disable/enable data points of chart and export output, because points 
	  make no sense in such products.

2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml: Added new state for
	  splitting the date selection into two parts - selection of year and
	  selection of a concrete date of this year.

	* doc/conf/queries.properties: Added new sql statement for querying years
	  and adapted statement to query concrete dates.

2010-01-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue156

	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added some
	  parameter (width, height, and shapes) to output modes svg and pdf. Now,
	  these parameter will have an effect on svg and pdf exports.

2010-01-24	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Added attribute "fill-color" to
	  /artifact-database/gnv/vertical-cross-section/ground/ configure
	  the color of the seabed polygon.

	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
	  Adjusted column depth to the deepest interpolated position to
	  prevent gaps.

	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
	  Add ground polygon to the chart.

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/OutputHelper.java:
	  New. Contains code to create the ground polygon.

	* src/main/java/de/intevation/gnv/raster/PolygonDatasetProducer.java,
	  src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
	  Handle temporary vertices more efficiently.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Added configuration to set the color of the seabed polygon.

	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
	  Handle the seabad polygon color.

2010-01-24	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* contrib/palette2qgis.xsl: Cosmetic cleanups.

2010-01-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Fixed bug when accessing i and j columns of SQL dataset. This
	  prevented gap detection in "horizontale Schnittprofile" from working.

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java:
	  "horizontale Schnittprofile" are now using the grid cell mechanism
	  too. This should fix all remaining problems to solve gnv/issue153.
	  The culling of too much points is controlled with the system property
	  "gnv.interpolation2d.cull.point.threshold" with the same semantics 
	  as in 'Profilschnitt' and 'Horizontalschnitt'.
	  The spatial buffer size estimation code is removed because it is 
	  not needed any longer.

	* src/main/java/de/intevation/gnv/math/Interpolation3D.java: Moved some
	  code to Interpolation2D.

	* src/main/java/de/intevation/gnv/math/GridCell.java: Added some
	  debug information about the number of found cells.

	* src/main/java/de/intevation/gnv/utils/WKTUtils.java:
	  Cleanup imports.

2010-01-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
	  Apply same logic about the number of points to "Profilschnitte"
	  too. If there are more "gnv.interpolation3d.cull.point.threshold"
	  points they are culled against a 5% extended bounding box around
	  the path. Default threshold: 1000.

2010-01-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
	  - The lastest refactoring removed the evaluation of the
	    depth. Now its back in again. 

	  - If the number of incoming points is greater than
	    a given threshold (default: 1000) than the bounding box
		of the interpolation is extend about 5% for a test
		if the points are in this area. Points outside this
	    area are culled because its unlikely that they have
		any influence on the result. Use the system property
		"gnv.areainterpolation.cull.point.threshold" to modify
		the threshold value.

	* src/main/java/de/intevation/gnv/math/GridCell.java: When
	  build the interpolation areas the points are culled against
	  extented bounding box.

2010-01-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* contrib/palette2qgis.xsl: New. XSLT transformation to turn a
	  palette XML file into a style definition suitable to be used
	  in QGIS. Tested with QGIS 1.4.0-Enceladus. Usage:

	  $ xsltproc contrib/palette2qgis.xsl       \
	    doc/conf/palette/water-temperature.xml  \
		> water-temperature.qml

	  Do similar to process salinity.xml et al.

	  When you've loaded the "Horizontalschnitt" polygon layer 
	  in QGIS, class it via the "CLASS" attribute, load the
	  according style and apply it. Voila!
	  
2010-01-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
	  Make "Profilschnitte" work the same way like "Horzontalschnitte"
	  again.

2010-01-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/GridCell.java: New.
	  A 4-tupel of neighbored points in the mesh. It is valid
	  to interpolate in this area.

	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
	  The algorithm how neighbored points in the mesh are determined
	  has changed. Now all incoming points are tiled into GridCells.
	  If there are gaps in i,j the corresponding tile is omited.
	  These tiles are stored in an R tree. To lookup a point in
	  world coordinates the spatial index is queried. If no result
	  is found the point is ignore as a gap. If a fitting grid cell
	  is found the interpolation in done between the four points
	  of that cell is performed. Special gap checking is not needed any 
	  longer. This fixes gnv/issue153 because there are no assumptions
	  about axis aligned points any more.

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Used
	  euclid distance to estimate spatial buffer size. TODO: Remove
	  this code when adjusting the "Profilschnitte" to the same logic
	  as used in "Horzontalschnitte" now.

	* src/main/java/de/intevation/gnv/math/LinearFunction.java: Added
	  author's email.

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java: 
	  Cleanup imports.

2010-01-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Removed
	  debug output which has been checked in by mistake.

2010-01-22  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/meshwidth.xml: 
	  Added Description of the sense of the different Attributes.
	  
2010-01-22  Tim Englich  <tim.englich@intevation.de>

	  Issue93

	* doc/conf/meshwidth.xml: 
	  Added file for the global Configuration of MeshWidths to the Project.
	  This file has to be edited if the mean Distance between two MeshPoints has
	  changed or a new Mesh will be introduced.
	  
	* doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml, 
	  doc/conf/products/horizontalprofile/conf_mesh.xml:
	  Added Elemet with Link to the MeshWidth-Document to Configurations 
	  for CoordinateSelectionStates.
	  
	* src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java : 
	  Added the possibility to configure the different width of the Meshes.

2010-01-22  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/TestArtifactDatabase.java (serviceNamesAndDescriptions),(process):
	  Fixed Compiler-Error after adding further Methods to the Interface ArtifactDatabase.

2010-01-22  Tim Englich  <tim.englich@intevation.de>
	* src/test/java/de/intevation/gnv/artifacts/util/ShapeFileWriterTestCase.java (testMultiLineStringWriter): 
	  Fixed Compiler-Error after changes in the Method-Signature.

2010-01-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java:
	  Repaired  revision. Removed try-catch of a never thrown exception.

2010-01-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue136 & Issue137

	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Added templates
	  to format coordinates to a human readable output.

	* src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java,
	  src/main/java/de/intevation/gnv/utils/WKTUtils.java: Moved function to
	  format coordinates from wkt string to human readalbe output to WKTUtils.
	  Modified the method: Read template out of the i18n files and use a Java
	  MessageFormatter to fill this template with string objects. A result of 
	  this is a proper encoding (issue137).

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java:
	  Use the method described above to format coordinate output and display
	  this as chart subtitle (issue136). 

2010-01-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue100

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: If there
	  are more than one axis, each dataset is mapped to its own dataset after
	  adding it to the plot (one dataset for each parameter). In this way, we
	  get a well scaled axis for each parameter which is independent from other
	  axes (see range of salinity and air-pressure for example).

2010-01-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>
	
	  Issue152

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Removed date
	  formatting from timeseries charts. Set locale of DateAxis instead to
	  localize chart axis. Advantage: JFreeChart defines intervals of axis
	  labels automatically.

2010-01-20	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Trigger the calculation when the state is initialized.

2010-01-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue129

	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Renamed I-axis to
	  'West-East-axis' and J-axis to 'North-South-axis'.

2010-01-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue105 The option to enable/disable data points in charts is now 
	  available in gui.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Parse optional chart parameter 'points' to adjust rendering of shapes.

	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added an
	  option to enable/disable data points in charts.

2010-01-20	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Set number of per axis samples to 1024
	  because generation of "Horizontalschnitte" is much faster
	  now (60x).

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java:
	  Added some kind of outlier test when guessing the buffer size
	  of the spatial index. The speed problem arose from the fact
	  that to much points are assumed to be neighbors of a given
	  point. Long distances which differ more than 40% from the 
	  standard derivation are assumed to be outliers.

	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java: Uses
	  the outlier aware buffer size guessing now.

	* src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java,
	  src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java:
	  Removed needless imports.

2010-01-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue148

	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Removed
	  mistakes in description and mimetype of svg export nodes.

2010-01-20	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java,
	  src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java:
	  Clip against given polygon. BTW: Geotools has problems with
	  writing clipped polygons in packed 2-tuple form, too. Therefore
	  polygons are also stores in the packed 3-tuple form. :-/

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Forward clipping polygon to isoline and polygon generator.

2010-01-19	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* trunk/pom.xml: Upgraded Geotools to 2.5.8

	* trunk/src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java:
	  Ported to Geotools 2.5.8 API. Write parameter id, date and layer
	  to shape files, too.

	* trunk/src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
	  Flip upside down again because its not necessary.

	* trunk/src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java:
	  XXX: There is a Geotools bug when writing multi lines strings
	  to shape files when the internal data representation are 
	  packed 2-tuples. 2-tuples are enough in our use case but we
	  use 3-tuples for multi line line strings. multi polygons work
	  fine with 2-tuples.
	  Removed needless bug output.
	
	* src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java:
	  Use packed 3-tuples as the internal representation.

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java,
	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Removed needless imports.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java: Write polygons and lines strings to shape files.
	  
2010-01-19	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
	  Removed import to make it compilable again.

2010-01-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue142

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Fixed an issue
	  in timeseries chart caused by parameters with no value. Paid attention on
	  array length.

2010-01-19	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/RasterToPPM.java: New.
	  Class to write rasters with palettes to portable pixmaps.
	  Handy to debug raster outputs.

	* src/main/java/de/intevation/gnv/raster/Raster.java: Added
	  getValues() to access the backing data.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Read parameter from input data correctly.

	* src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java: Walk
	  rings of polygons in reversed order to produce correct JTS polygons.
	  Its not entierly clear why this is necessary.

	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java: Clipp the
	  input points against an buffered version of the bounding box of
	  the given polygon to reduce the number of data. TODO: figure out why
	  upside down rendering in necessary.

2010-01-19  Tim Englich  <tim.englich@intevation.de>

	* doc/schema/externalinterface_testdata.sql,
	  doc/schema/externalinterface_schema.sql: 
	  Do some Bugfixes after testing the Schema and Testdata against an Oracle 10.2 DBMS.

2010-01-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/State.java,
	  src/main/java/de/intevation/gnv/state/StateBase.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/NorthSouthEastWestState.java,
	  src/main/java/de/intevation/gnv/state/OutputStateBase.java: Changed some
	  method signatures. Use CallContext objects in some methods of the State 
	  interface instead of CallMeta objects, which are a subset of CallContext.
	
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Adapted
	  method calls on State objects to the changes in the interface.

2010-01-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Sourced creation of a ChartLabel object out to an own method which can be
	  overwritten in subclasses to adjust the labels in each chart type.
	
	* src/main/java/de/intevation/gnv/chart/ChartLabels.java: Added string for
	  labeling y axis and a parameter used in 'Profilschnitten'.

	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java: Read
	  labels from ChartLabel object and set chart and axes titles according to
	  these labels.
	
	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Added labels for
	  x and y axes of 'Profilschnitt' charts.

2010-01-18  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java: Add an
	  attribute 'fis' to the fis select node. If this attribute is found in
	  XSLT, a link to step back and select a new fis will be created.

2010-01-18  Tim Englich  <tim.englich@intevation.de>

	* doc/schema/externalinterface_schema.sql: 
	  Added Comments and further Informations.
	
2010-01-18  Tim Englich  <tim.englich@intevation.de>

	* doc/schema/externalinterface_testdata.sql: 
	  Added Testdata to demonstrate how the different Tables has to be filled.

	* doc/schema/externalinterface_schema.sql: 
	  Added Schema for the DB-Schemaextention for providing the Data that is 
	  required for the external Interface to the Mapviewer
	

2010-01-18  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java:
	  Implements a single method to append the selected fis to ui's static part.

	* src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Inherit
	  from GNVDefaultArtifact to append the selected fis to static part of the
	  describe document.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Do not create static
	  and dynamic nodes of the user interface any longer - fetch these nodes via
	  xpath expression. The creation of these nodes takes place in the artifact
	  itself.

	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.propertie: Added label for
	  fis.

2010-01-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* ChangeLog: Fixed indention.

2010-01-18  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_chart.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_odv.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_csv.xml: 
	  Removed Files, because they are not required any more.
	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_zip.xml: 
	  Added new RequestFile for calling for retrieving a Zip-File from the Server.
	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_07_out_wms.xml: 
	  Added new RequestFile for calling for an WMS-Result.
	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_04_feed.xml: 
	   Added Polygon as WKT into the feed-Request.

2010-01-18  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/TestArtifactDatabase.java (TestArtifactDatabase): 
	  New: Added an Testimplementation of the ArtifactDatabase to the Tests to use it inside the
	  TestCallcontext to prevent NPEs during the Testzenarios.
	  
	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java (TestCallContext): 
	  Added Artifactfactory to the Methodsignature of the Context to use it inside the Context.
	  Added the Method getDatabase to resolve Compilationerrors.
	  
	* src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointVerticalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointTimeSeriesTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshTimeSeriesTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointVerticalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointHorizontalProfileTestCase.java (testArtifact),
	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java (createCallContext): 
	  Changed Methodsignature of createCallContext. Add the Artifactfactory to use it for creating
	  the CallContext.
	  
2010-01-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/ExternalIndexConverter.java:
	  New. Helper to convert the internal palette indices
	  to the explicit configured external ones.

	* src/main/java/de/intevation/gnv/math/AttributedPoint2ds.java:
	  Store the JTS geometries too.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Generate JTS multi polygons for parameter regions and multi line strings
	  for iso lines. TODO: Clip against incoming polygon.

2010-01-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/Palette.java:
	  load <range> attribute "index" as external index. This
	  is useful to match color classes with external sources.
	  If no explicit index is given the order of ranges is
	  used as external index.

	* doc/conf/palette/flow-velocity.xml,
	  doc/conf/palette/water-levels.xml,
	  doc/conf/palette/salinity.xml,
	  doc/conf/palette/water-temperature.xml: Set explicit
	  external color class indices.

	* doc/conf/conf.xml: Set ground interpolation of "Horizontalschnitte" 
	  to bilinear.

2010-01-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Reduced number of "Horizontalschnitt"
	  samples to 256 because its much too slow with higher resolutions.
	  This has to be improved.

	* doc/conf/queries.properties: Use point data to generate
	  "Horizontalschnitte". Added parameter id and date to results.

	* src/main/java/de/intevation/gnv/utils/WKTUtils.java: Made
	  reading to points more fault tolerant.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Call the area interpolation.

	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
	  Fixed bug with calculating points inside bounding box of polygon.

2010-01-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/State.java: Added
	  support for end of life.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Implemented
	  end of life trivial.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java:
	  call end of life when leaving state.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Used XMLUtils.toStream() instead of own tranformer code. Removed
	  dead code.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Implemented end of life. Remove shapefile directory from
	  file system belonging to concrete artifact.
	  Implemented download as ZIP file. Offer some link for
	  WMS integration. TODO: implement the real WMS publishing here.

2010-01-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/products/horizontalcrosssection/conf_mesh.xml:
	  Only offer WMS layers and download ZIPs in output state.

	* src/main/java/de/intevation/gnv/utils/FileUtils.java:
	  New. Helper class to recursively delete files and directories
	  and create ZIP archives from files and directories.

	* src/main/java/de/intevation/gnv/utils/WKTUtils.java: Simpilied
	  signature of worldEnvelopeCoordinatesToIndex().

	* src/main/java/de/intevation/gnv/state/OutputState.java: Cleanup
	  imports. Made source more readable.

	* src/main/java/de/intevation/gnv/state/OutputStateBase.java:
	  Cleanup imports. Made source more readable. Moved some
	  XPath stuff from TimeSeriesOutputState up into this base class.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Move some XPath stuff into base class. Made source more readable.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Directly inherit from OutputStateBase now to break the implicit
	  constraints (chart styles, statisctics, etc.) of the 
	  TimeSeriesOutputStates which not hold for this kind of state.
	  XXX: Added Workaround to circumvent gnv-intern/issue146

	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java: Added
	  e-mail addresses for authors. Made querying for attributes more
	  robust.

	* src/main/java/de/intevation/gnv/math/AttributedPoint2ds.java:
	  New. Data carrier for the "Horizontalschnitte". Used for generation
	  of results and caching

2010-01-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java,
	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java,
	  src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java,
	  src/main/java/de/intevation/gnv/artifacts/GNVProductArtifactFactory.java,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/math/AreaInterpolation.java:
	  Cleaned up imports.

2010-01-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Added support to step back to the point where the user is able to choose
	  the product of a FIS.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactFactory.java,
	  src/main/java/de/intevation/gnv/artifacts/GNVProductArtifactFactory.java:
	  Cleaned up factories regarding their tasks. GNVArtifactFactory creates
	  concrete products. GNVProductArtifactFactory handles all FIS and knows 
	  the products of a FIS.

	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java: Removed,
	  because it is not used anymore.

	* src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java,
	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java:
	  A Product does no longer save its factory but the name of its factory as
	  string.

	* src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java:
	  This artifact will no longer read the config file to get information about
	  the products of a fis.  The products are set via setter method out of the
	  ArtifactFactory where this artifact is build.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Added the
	  possibility to step back to the point where the user can choose a product.
	  If the target of advance is 'product' we fetch the
	  GNVProductArtifactFactory from ArtifactDatabase and create a new
	  SelectProductArtifact, put it into the ProxyArtifact and clean up the ugly
	  cache.

	* doc/conf/conf.xml: Create top level FIS artifacts with
	  GNVProductArtifactFactory instead of GNVArtifactFactory.

2010-01-15  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/arcsdeconnectionpool.properties: 
	  Added the Property serverRoundtripInterval to the Configuration an 
	  set its Value to 15 Minutes.

2010-01-15  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointVerticalProfileTestCase.java (testArtifact): 
	  Added new Step for querying the Years where measurements has been done into the 
	  Testcase.
	
	* src/test/ressources/verticalprofile/verticalprofile_step_07_out_statistics.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_07_out_odv.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_07_out_csv.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_07_out_chart.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_07_feed.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_07_advance.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_06_feed.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_06_advance.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_05_feed.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_04_advance.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_05_advance.xml: 
	  Added State-Ressource for the new step Year and modified the other Ressource-Files
	  so that the new Step is queued in the right direction.

2010-01-13  Ingo Weinzierl <ingo_weinzierl@web.de>

	* src/main/java/de/intevation/gnv/artifacts/fis/FISSelectArtifact.java,
	  src/main/java/de/intevation/gnv/artifacts/fis/SelectProductArtifact.java:
	  Renamed FISSelectArtifact to SelectProductArtifact which fits better,
	  because the intent of this artifact is to choose a product - not a FIS.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactFactory.java:
	  Replaced FISSelectArtifact with SelectProductArtifact.

2010-01-13	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/util/ShapeFileWriterTestCase.java,
	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Removed needless imports.

	* src/main/java/de/intevation/gnv/math/AreaInterpolation.java: New. Interpolates
	  area for a given bounding box, taking gaps and DEM into account.
	  Not very fast. Use bilinear interpolation to match the "Profilschnitt".
	  Possible TODOs: 
	  - speed up by assuming the grid is not sparse.
	  - use higher interpolation methods.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Added configuration for ground interpolation.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Add helper functions to access configuration.

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Simplified Code.

	* src/main/java/de/intevation/gnv/math/L1Comparator.java: add setReference()
	  method.

2010-01-13  Ingo Weinzierl <ingo_weinzierl@web.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: 'advance'
	  method will now consider old states. We reset input data of target state
	  and clean cache from 'future data' before steping back to previous
	  states.

	  TODO: Refactor caching mechanism which should take care of different 
	  states' hash values to be able to use the cache more efficiently.

	* src/main/java/de/intevation/gnv/state/State.java: Added method to return
	  map which stores input data of the current state.

	* src/main/java/de/intevation/gnv/state/describedata/MinMaxDescribeData.java,
	  src/main/java/de/intevation/gnv/state/describedata/SingleValueDescribeData.java,
	  src/main/java/de/intevation/gnv/state/describedata/KeyValueDescibeData.java
	  src/main/java/de/intevation/gnv/state/describedata/DefaultSingleValueDescribeData.java,
	  src/main/java/de/intevation/gnv/state/describedata/DefaultMinMaxDescribeData.java,
	  src/main/java/de/intevation/gnv/state/describedata/DefaultKeyValueDescribeData.java:
	  Add current state's name when initializing new objects of these classes.
	  The name of a state is added as attribute to a node when creating the 
	  describe-document. The xsl transformer will read this attribute and create
	  a link which allows the user to step back to previous states.
	
	* src/main/java/de/intevation/gnv/state/SingleInputState.java,
	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
	  src/main/java/de/intevation/gnv/state/StateBase.java:
	  - Add state name when creating objects to store input data.
	  - Use XMLUtils.ElementCreator to write namespace aware xml elements.
	  - Add state names as attributes to xform elements.
	  - Append old states to list of reachable targets in describe-document.
	  - Remove data from cache which belong to future states after stepping
	    back to a previous state.
	  - Remove input data of current state after stepping back.

2010-01-12	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml,
	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Added configuration od file system directory of generate "Horizontalschnitt"
	  shape files.

2010-01-12	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/utils/WKTUtils.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Code cleanup

2010-01-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/SingleInputState.java,
	  src/main/java/de/intevation/gnv/state/MinMaxState.java,
	  src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java:
	  Data, describing the user interface, is stored in a list instead of a
	  collection, now. This makes it easier to remove the last element if we
	  advance back.

	* src/main/java/de/intevation/gnv/state/State.java,
	  src/main/java/de/intevation/gnv/state/StateBase.java: Added a 'reset'
	  method to clear data which has been inserted before returning to an old
	  state. This is called when we try to advance into the past.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Now, it's
	  possible to advance to an earlier state. The 'advance' method first
	  searches for a given target name in the list of reachable targets. If no
	  future target has been found, the method looks for an old state with this
	  target name. The last option is to return to the initial step for choosing
	  the FIS, if the target name is 'start'.

2010-01-12  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties: 
	  Added Query for Years in VerticalProfiles in TimeSeriesPoints.
	  Modified the Query for Dates in VerticalProfiles in TimeSeriesPoints.
	
	* doc/conf/products/verticalprofile/conf_timeseriespoint.xml: 
	  Added State for choosing the year and than it will only display
	  the Dates which are within the coosen year.
	  
	* src/main/resources/lang/artifactMessages*.properties:
	  Added Ressource for diaplaying year. 

2010-01-12  Tim Englich  <tim.englich@intevation.de>
	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java (configureHorizontalCrossSection): 
	  Added the Method to load the Configurationsettings for horizontal-cross-sections
	  from the global Configuartion and put it into the Context.
	  
	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java: 
	  Added static variables to define the Keys used for horizontal-cross-sections

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java (getChartResult): 
	  Integrated the Possibility to determin the required Snipped of an Mesh
	  using the ij-Index determined by the given Polygon.
	  Added the process-method which must still be implemented.

	* src/main/java/de/intevation/gnv/utils/WKTUtils.java (worldEnvelopeCoordinatesToIndex): 
	  Added worldEnvelopeCoordinatesToIndex-Method for determining the ij-Coodinates
	  for a given Envelope.
	  Some refactoring-Work done for reuse some existing Code of this Class.

	* doc/conf/conf.xml: 
	  Added the Configuration-Node for horizontal-cross-sections in this
	  File.

	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: 
	  Added ij-Query Node  to OutputState to make the Querystring
	  available to this Product.

2010-01-12  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Use XMLUtils to read evaluate xpath expressions. Adapted xpath
	  expressions regarding namespace and prefix.

2010-01-11  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java (readDocument): 
	  Set NameSpaceAware to true to get the Unittests work again.
	  The Out-Calls doesn't work yet!!!
	

2010-01-11	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* pom.xml: Introduced dependency to GeoTools 2.4.5 (maybe a bit too old)
	  Needed to write traced polygons and line strings to shape files.

	* src/main/java/de/intevation/gnv/utils/Pair.java: New
	  simple pair tuple for type safety.

	* src/main/java/de/intevation/gnv/utils/ShapeFileWriter.java:
	  New. Writes multi polygons and multi line strings to
	  shapefiles. Writing the multi polygons works. 

	  !! Writing the multi line strings fails!
	  !! Its not clear by now if its a geotool bug or a
	  !! misunderstanding of the API. The polygon and
	  !! the line string export are coded symmetrically
	  !! but the line string export complains about invalid 
	  !! FIDs states.

	* src/main/java/de/intevation/gnv/raster/AbstractProducer.java:
	  New. Abstract base class for multi line string/polygons producers
	  as backends of the vectorizer.

	* src/main/java/de/intevation/gnv/raster/PolygonDatasetProducer.java:
	  Inherits from AbstractProducer now.

	* src/main/java/de/intevation/gnv/raster/IsoProducer.java:
	  New. Common base class for the iso line producers, inherits
	  from AbstractProducer.

	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
	  Moved some code to new base class IsoProducer.

	* src/main/java/de/intevation/gnv/raster/DemuxRingsHandler.java:
	  New. Little helper class to demultiplex many ring handlers on
	  one single vectorizer.

	* src/main/java/de/intevation/gnv/raster/IsoAttributeGenerator.java:
	  The implemented AttributeGenerator interface is defined in IsoProducer
	  now.

	* src/main/java/de/intevation/gnv/raster/JTSMultiPolygonProducer.java:
	  New. Traces regions directly to JTS multi polygons.

	* src/main/java/de/intevation/gnv/raster/JTSMultiLineStringProducer.java:
	  New. Traces iso lines directly to JTS multi line strings.

	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java,
	  src/main/java/de/intevation/gnv/statistics/AbstractStatistics.java: 
	  Removed needless imports.

2010-01-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/fis/FISSelectArtifact.java:
	  Artifact used for the initial steps when no product is chosen.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactFactory.java: Factory
	  to create artifacts. It is used to put a new FISSelectArtifact into the 
	  ProxyArtifact for the initial steps when no product is  chosen.

	* doc/conf/conf.xml: Use the ProxyArtifact instead of FISArtifact and
	  GNVArtifactFactory to create it.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java:
	  - Defined XPath expressions at the top of the class instead of directly in
	    code.
	  - Use XMLUtils.ElementCreator to create new namespace aware nodes and
	    attributes.
	  - Defined 'describe' method to create user interface for initial steps.

	* src/main/java/de/intevation/gnv/profile/horizontalcrosssection/HorizontalCrossSectionMeshArtifact.java,
	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java,
	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java,
	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java,
	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java:
	  Moved 'describe' methods which had no special code to super class.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Use
	  XMLUtils.ElementCreator to create new elements in xml documents.

2010-01-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Added configuration for vertical cross 
	  section ground interpolation.

	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java: Uses configured
	  interpolation method now.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Read configuration for vertical cross section ground interpolation.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java:
	  Added key and default for vertical cross section ground interpolation.

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Forwards vertical cross section ground interpolation to QueriedXYDepth.

2010-01-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Prevent NPE if no results are produced by vertical cross sections.

	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java: Replaced
	  envelope checking by direct coordinate checking in tile cache.
	  Store the last used tile explicitly to save it from being collected
	  by the garbage collector.

2010-01-08  Tim Englich  <tim.englich@intevation.de>

	Issue 137

	* src/main/java/de/intevation/gnv/utils/InputValidator.java (getPointValue),
	  src/main/java/de/intevation/gnv/timeseries/gap/DefaultTimeGap.java (key),
	  src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java (getStatisticsGenerator), 
	  src/main/java/de/intevation/gnv/state/StateBase.java (extractKVP),
	  src/main/java/de/intevation/gnv/state/CoordinateSelectionState.java (prepareInputData4RegionDBQuery),
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (advance):
	  Removed Encodingerrors from listed Files. All Files are now UTF-8 compliant.
	
2010-01-08  Tim Englich  <tim.englich@intevation.de>
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestSuite.java (suite): 
	  Added a Testsuit for executing all Testcases at once.
	
	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_feed.xml,
	  src/test/ressources/timeseries_mesh/timeseries_step_08_feed.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_feed.xml: 
	  Changed the feeded Datevalues because the Values in the Database
	  have changed. TODO: Does it have an effect on the IDs?
	
	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_03_advance.xml,
	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java (testArtifact): 
	  Switched Testcase to the new Condition that an LineString has to be entered.
	
	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_*.xml, 
	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java (testArtifact):
	  Switched Testcase to the new Condition that an Polygon has to be entered. 

2010-01-08  Tim Englich  <tim.englich@intevation.de>
	
	* src/main/resources/lang/artifactMessages.properties: 
	  Added Ressources for the GUI for visualizing the Inputstate for
	  Polygons.
	
	* doc/conf/products/horizontalcrosssection/conf_mesh.xml: 
	  Added State for the possibility to enter a Polygon which should clip
	  the data that will be visualized.
	
	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java (getChart): 
	  Integrated the access to the Polygon which should be used to trim the Data which 
	  should be visualized.

2010-01-05	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java:
	  - Simplified code
	  - Search tile cache in reversed order because its more likely
	    that last loaded tile is used more than once.
	  - Stores cached tiles under soft references to prevent the
	    possible case to flood the memory with hires tiles.

2010-01-05  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java (depth): 
	  Added the usage of the new RasterObject integrated in the geo-backend.
	  Now the Performance is much better accessing the depth to an coordinate.

2010-01-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java: Declared
	  method to create a new xforms element as static to be able to use it
	  without instantiating an object of this class.

	* src/main/java/de/intevation/gnv/state/StateBase.java: Splitted code pathes
	  of static and dynamic nodes. Static nodes contain the selected value
	  only instead of transfering the complete stack of possible values again.

2010-01-04  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java (process): 
	  Changed the XYDepth-Interface-Implementation to QueriedXYDepth

	* doc/conf/queries.properties: 
	  Added the Query for Rasterdataaccess.

	* src/main/java/de/intevation/gnv/math/QueriedXYDepth.java (QueriedXYDepth): 
	  Added Implementation of the XYDepth-Interface for Querying the height
	  of an Position using the geo-backend interface.
	  It is only nessesary to add a Query with the id rasterQuery to the query-Properties.

2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/statistics/Statistics.java:
	  Changed interface to allow general object results as
	  input for statistic calculation. This is needed because
	  the vertical cross section produces no SQL like resultsets.

	* src/main/java/de/intevation/gnv/statistics/AbstractStatistics.java:
	  New. Added common base class for different kind of statistics.
	  TODO: Move more common code into this class.

	* src/main/java/de/intevation/gnv/statistics/VerticalCrossSectionStatistics.java:
	  New. Statistics for vertical cross sections. Does nothing
	  by now.

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Creates a VerticalCrossSectionStatistics object as statistics
	  generator now.

	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java:
	  Inherits from AbstractStatistics now. Some code moved to new
	  base class.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Cleaned up the usage of statistics.

2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
	  Fixed problem with running to max depth on every column.

2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Fix class cast exception to enable PDF export of
	  vertical cross section charts.

	* ChangeLog: Typo fixes.

2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
	  Uses ValueAxis.valueToJava2D() to transform data values into chart
	  space. This is slower than doing it via the Java2D matrix stack
	  but its more the JFreeChart way and prevents transforming of
	  graphical attributes too. TODO: Speed this up again!

	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java:
	  Forward plot to polygon renderer to make domain and range
	  axis accessible.

	* src/main/java/de/intevation/gnv/math/XYColumn.java: Moved code a bit.

2010-01-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/jfreechart/PolygonSeriesLabelGenerator.java:
	  New. Interface to generate labels for polygon series.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
	  Added logic to generate and render labels of polygons.
	  The implemented layout algorithm is greedy. For all
	  polygons with labels the label is placed on the center of
	  the ring, which center in terms of the indices of the vertices.
	  If the bounding box of the label intersects the bounding box
	  of a an already placed one alternative places are tried. 
	  In level order positions at 1/4, 3/4, 1/8, 3/8, 5/8, 7/8 and 
	  so on are evaluated for non intersections with former placed labels.
	  This terminates if a free place is found or all index positions
	  are exhausted. If no free position is found the label is omitted.

	  The visual result is okay but could be improved by a more clever
	  algorithm e.g. tension reduction in the graph of labels.

	  TODO: Improve clipping against chart borders.

	* src/main/java/de/intevation/gnv/jfreechart/LevelOrderIndices.java:
	  New. Little helper class to generate the level order index
	  traversal used in the label layout. Placed in the jfreechart
	  package to keep it clean from gnv dependencies.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java:
	  Added some methods to access the domain and range axis and
	  there edge position. Mainly C&P from JFreeCahrts XYPlot
	  to ease the coordinate transformation between Java2D and
	  the value spaces of the chart. Call the label generation
	  of the polygon renderer.

	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
	  Added an implementation of PolygonSeriesLabelGenerator to
	  generate localized labels for the iso lines.
	  
2010-01-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
	  Only add colors to scale which are in the chart.

	* src/main/java/de/intevation/gnv/raster/Palette.java: Added
	  getter for 'color' field of palette entry.

2010-01-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Generate iso line classes according gnv-issues/issue108:

	  - If there are more than nine colors used in the chart
	    only the borders of the regions are traced.
	  - If there are less than ten colors each color region
	    is devided into two sub regions.
	  - If there are less than five colors each color region
	    is devided into five sub regions.

	  Generate attribute per iso line class with the parameter value
	  of the iso line.

	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
	  Renamed inner interface from LabelGenerator to AttributeGenerator to
	  reflect the fact that the concrete label generation is a matter
	  of i18n too. The concrete label generation should be done when 
	  the final chart is going to be created. TODO: Add
	  a JFreeChart style label generator to PolygonRenderer

	* src/main/java/de/intevation/gnv/raster/IsoAttributeGenerator.java:
	  New. Implements the AttributeGenerator interface. It takes
	  the indices of the neighboring regions, uses these values
	  to look into the iso palette and averages the parameter values
	  at the touching borders. This should help in cases where 
	  two regions are neighbored in the chart which are not neighbored
	  in the palette which may happen by quantification artifacts.

	* src/main/java/de/intevation/gnv/raster/Palette.java: Added
	  getters to 'from' and 'to' fields.

	* src/main/java/de/intevation/gnv/math/XYColumn.java: Fixed
	  another silly bug with adding values at surface and ground.

	* ChangeLog: Typo fixes

2010-01-01	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Generate iso lines by dividing palette ranges in two
	  parts each and trace them. This shows that the ideas described
	  by K. Jancke in gnv-issues/issue108 are probably not the
	  right way to go. Applying this strategy there would be
	  locally too many isolines if there is a steep gradient. 
	  On the other hand large areas are splitted in too less sections
	  by too less iso lines. A better way may be a splitting with
	  a look at the areas and shapes of the regions. Large, round 
	  regions need more splits. Long, thin regions need less.

	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
	  Stabilized iso line hashing a bit. Added line width to
	  give iso lines a more appealing presentation in the chart.
	  The according value is stored in "line.width".

	* src/main/java/de/intevation/gnv/raster/Vectorizer.java: Fixed silly
	  bug when simplifying lines. This prevented iso lines 
	  from rendering.

	* src/main/java/de/intevation/gnv/raster/Palette.java: Fixed index issue
	  when generating a divided palette.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonSeries.java:
	  Do not crash with NPE any more when not having any series.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonDataset.java:
	  Added method to add a whole collection of series. Useful to add
	  iso lines to dataset.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
	  Set the "line.width" attribute when rendering lines.

2010-01-01	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Deactivated gauss filter because
	  it blurs no data areas too.  Moreover gauss filtering does not 
	  seem to be necessary at all. Possible TODO: Mask the no data
	  areas while filtering.

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Added generation of polygon data suitable for PolygonPlot.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Some hacks to display the new Chart. XXX: This class is
	  a real mess ... but I've said that before.

	* src/main/java/de/intevation/gnv/chart/Chart.java: Made it
	  serializable.

	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java:
	  New. Chart for vertical cross sections. Mainly a copy of
	  Ingo's prototype implementation. TODO: parameter based i18n.

	* src/main/java/de/intevation/gnv/math/Interpolation3D.java: Code
	  simplification. Made it Serializable to be cachable persistently.
	
	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java:
	  Added fields for the interpolation and the generated PolygonDataset.
	  Its used as the data carrying object in cache now.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java:
	  Removed println debug code.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
	  Added a little hack to draw the polygons of the interpolation.
	  The values are in y-direction all below zero (depth is given
	  by negative values) so the drawing is mirrored along y axis.
	  This special behavior is determined by the position of data 
	  bounding box. At first I suspected a ccw issue here but some
	  initial tests falsified this hypothesis. We need to have a
	  deeper look at this but till than it works.

	* ChangeLog: Fixed some typos.

2009-12-30	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Fixed defect XML

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Use configuration to generate JFreeChart compatible polygons.

	* src/main/java/de/intevation/gnv/raster/PaletteManager.java:
	  Add method to access base palette.

	* src/main/java/de/intevation/gnv/raster/Vectorizer.java:
	  Added logging and new constructor.

	* src/main/java/de/intevation/gnv/math/ConstantXYDepth.java:
	  "Simulates" DEM with a constant depth.

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java:
	  Fixed bug with construction of buffer size.

	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
	  Some clean ups. New method to calculate max depth.

	* src/main/java/de/intevation/gnv/math/XYColumn.java:
	  Fixed bug with extrapolation.

2009-12-30	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Added section gnv/vertical-cross-section
	  to configure the "Profilschnitte".
	  <samples width="..." height="..."/> configures the size of
	  the sample area. Defaults to 1024x768.
	  <filters><filter>...</filter></filters> configures the
	  list of post processing filters applied to the sample area 
	  after the interpolation is done. Defaults to empty list.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java:
	  Added keys for vertical cross section samples and filters.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Parse the configuration for the new parameters.

2009-12-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Added a gnv/horizontal-cross-section-profile
	  section to configure the "horizontalen Schnittprofile".
	  <samples number=".."/> gives the number of samples the
	  interpolation track is divided into. Defaults to 250

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java:
	  The names of the keys for fetching informations from the 
	  configuration context are stored here now instead of the factory.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Removed the lookup keys. Configure the "horizontalen Schnittprofile".

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Fetch number of samples from config now instead of no longer supported
	  system property.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  The key from chart template config is now in GNVArtifactContext, too.

2009-12-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Moved chart template and palette config
	  into new section 'gnv'.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Adjusted to new 'gnv' section in config.
	  Stores chat template under 'gnv.chart.template' and palettes
	  under 'gnv.color.palettes'.
	  Added authors.

	* src/main/java/de/intevation/gnv/utils/StringUtils.java: Fixed
	  index out of bounds issue.

2009-12-29	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/Filter.java: New.
	  General filter mechanism raster in -> raster out. Useful
	  to chain processing. The Filter.Factory takes an 
	  DOM element to configure itself.

	* src/main/java/de/intevation/gnv/raster/KernelFilter.java:
	  New. Implements raster filters based on kernel folding. Has
	  an inner class GaussFactory which acts as a factory to create 
	  Gauss filters. The attributes "sigma" and "radius" are read
	  from the configuring DOM element to set up the parameters
	  of the kernel.

2009-12-28	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
	  src/main/java/de/intevation/gnv/utils/WKTUtils.java: Refactored most 
	  silly code like inefficent access to input data and redundant 
	  WKT line string parsing.

	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java,
	  src/main/java/de/intevation/gnv/math/XYColumn.java:
	  Removed needless imports.

2009-12-28	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/OutputStateBase.java,
	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java:
	  Bring CallContext down to the chart generation. This is necessary to
	  access the configuration. BTW: this a much cleaner way than
	  the omnipresent singletons all around in the code!

	  Observation: All the stuff derived from OutputStateBase is coded very messy 
	  ... even if your demands are not high about aesthetic :-/

	* src/main/java/de/intevation/gnv/utils/StringUtils.java: New.
	  Some functions to ease working with strings.

2009-12-28	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/PaletteManager.java: New.
	  Used to manage several levels of palette subdivsions derived from
	  base palette. Contains name and description of palette, too.
	  
	* src/main/java/de/intevation/gnv/raster/Palette.java: Removed
	  palette description because it is hold by the PaletteManager now.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  The palettes are not stored under the name of the palette any longer.
	  Instead the new attribute 'parameter-id' is splitted (comma separated)
	  into integers which are use as keys now. The values are PaletteManagers.
	  This should ease the access to an adequate PaletteManager when
	  generating a chart for a certain parameter.

	* doc/conf/conf.xml: Added the 'parameter-ids' for the four palettes.
	  The values are extracted from the gdiintern wiki.

	  !!! This have to be in sync with the database parameter ids !!!

2009-12-27	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/IsoPolygonSeriesProducer.java:
	  New. Vectorizer rings callback which produces iso lines in
	  form of PolygonSeries. These series can be added to PolygonDatasets.
	  If a IsoPolygonSeriesProducer.LabelGenerator is given
	  each of the series has an attribute "label" which could be used
	  to label text on the plot. TODO: Add label rendering to plot.

	  Iso line generation is a bit more sophisticated than pure
	  region tracing. Along a border of a region there could
	  be more than one type of neighborhood. This is due to quantification
	  errors introduced by the fact that steep value gradients
	  are sampled to less points. The only ways out would be an
	  increase of the sample resolution or an other algorithm
	  working directly on the interpolated floating point samples.

	* src/main/java/de/intevation/gnv/raster/Vectorizer.java: Made
	  line simplification work with open polygons, too.

	* src/main/java/de/intevation/gnv/math/IJKey.java: Added method
	  to sort (i, j) in place.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java:
	  Do not close line shapes because iso lines are not closed shapes
	  in general.

	* src/main/java/de/intevation/gnv/raster/PolygonDatasetProducer.java:
	  Added author. Some reformatting.

2009-12-26	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/PolygonDatasetProducer.java:
	  New. Vectorizer rings callback which produces PolygonDatasets suitable
	  to be fed into PolygonPlot.

	* src/main/java/de/intevation/gnv/raster/Vectorizer.java: 
	  Forward height to rings callback.
	  Made simplification of chains an option (default: true).
	  This should be turn off if generating iso lines.
	  Made edges hashable (handy to find neighbored edges in
	  iso line scanning).

	* src/main/java/de/intevation/gnv/jfreechart/PolygonSeries.java:
	  Added default constructor. Generate unique comparable long id
	  in thos constructor.
	  Added method to add a single ring.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonDataset.java:
	  Added constructor to construct with a collection of polygon
	  series.

2009-12-25	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/Palette.java: Added
	  method subdive(N) to Palette class which creates a new
	  palette in which each interval is splitted into N
	  equal sized intervals. Infinity sized intervals are not
	  splitted. This is useful to fulfill the conditions of
	  gnv/issue108.

2009-12-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: 
	  Use local variable debug instead of asking log.isDebugEnabled() 
	  more than once.

	* src/main/java/de/intevation/gnv/math/XYColumn.java: extrapolate
	  with boundary values.

	* src/main/java/de/intevation/gnv/math/Interpolation3D.java:
	  Implements a 3D interpolation called 'Profilschnitt' along a 
	  track similiar to the 'Horizontaler Schnittprofil' which takes 
	  all k layers into account. 

	  At the interpolated (x, y) points columns of parameter values 
	  from surface to ground are interpolated. To do so the four 
	  next neighbor of that columns are figured out. Four
	  cubic splines are fitted through these parameter values 
	  of these neighbors. Now its possible to continuous eval
	  the parameter on each. Every entry in the interpolated column
	  is interpolated bilinear from the four cubic spline interpolated
	  neighbor values at the respective depth.

	  The result is stored into a double valued raster. NaN values
	  indicate interpolation gaps.

2009-12-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/XYColumn.java: Added a method
	  prepare() which generates an continues interpolator for the
	  given z values. if only one value is given a constant function
	  is assumed. If the larger z-value is below zero the
	  next lower value is supplemented at zero. Symmetrically 
	  if the lowest z-value is above the depth at the given point
	  the lowest value is repeated at depth. This should guarantee
	  that the gradient is vansihing towards the surface and the
	  bottom of the ocean.

	  If after the supplementation there are less than three points
	  a linear interpolation is performed. If there are more than three
	  points a higher degree interpolation is used instead. This defaults
	  to a cubic spline interpolation. Overwrite the getInterpolator()
	  function to replace this behavior.
	  
	* src/main/java/de/intevation/gnv/math/ConstantFunction.java: New.
	  Constant function used in interpolation.

	* src/main/java/de/intevation/gnv/math/LinearFunction.java: Added
	  an inner class Univariate which fits into the interpolation
	  framework.

	* src/main/java/de/intevation/gnv/math/HeightValue.java: Sort
	  z-Values in descending order because we are below zero.

	* src/main/java/de/intevation/gnv/math/XYDepth.java: New. Interface
	  to figure out the depth (negative values below surface) for
	  a given coordinate. TODO: Implement this by query the DEM grid
	  of the ocean.

	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java: Added
	  authors.

2009-12-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  When preprocessing database data only dissemble WKT points if we
	  have to.
	  Read z values as double value now.
	  Commented out CSV export because it takes the database data
	  as data which is not correct here. TODO: We need to implement some output 
	  based on the interpolated data.
	  Added some type safety to better match the 2D code.

	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java: Stores
	  XYColumns in ArrayList for better reused of the 2D code.

	* src/main/java/de/intevation/gnv/math/XYColumn.java: Removed toArray()
	  method because its not needed any longer.

2009-12-23	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/XYColumn.java: Extends from
	  Point2d now to make some of the code (x/y sorting, envelope, etc.)
	  reusable in 3D from 2D code.

	* src/main/java/de/intevation/gnv/math/IJKey.java: New: The (i, j) hashing
	  is now moved to this class because of the new inheritance of XYColumn.

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java: 
	  Adjusted the (i, j) hashing. 

	* src/main/java/de/intevation/gnv/math/Point2d.java: Added a new constructor
	  to make it easier to extend from it.

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Made the buffer
	  extend calculation a static method to be reusable in 3D case.

2009-12-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Load salinity palette correctly.

2009-12-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Preprocessing of data used for interpolation.

	* src/main/java/de/intevation/gnv/math/AttributedXYColumns.java: Data
	  wrapper. Contains preprocessed data used for interpolation and some
	  metadata used for chart creation.

	* src/main/java/de/intevation/gnv/math/XYColumn.java,
	  src/main/java/de/intevation/gnv/math/HeightValue.java: Made them
	  serializable and added hashCode() and equals() to XYColumn to use it as
	  key in HashMaps.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java,
	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java,
	  src/main/java/de/intevation/gnv/state/OutputStateBase.java: Changed some 
	  method signatures.

	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java:
	  Improved error handling. Return empty statistic set if there are no input
	  data.

2009-12-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/verticalcrosssection/conf_mesh.xml: Adjusted
	  configuration for verticalcrosssection ('Profilschnitt') products.

	* doc/conf/queries.properties: Adjusted sql query for chart generation of 
	  verticalcrosssection products.

	* src/main/java/de/intevation/gnv/state/StateBase.java,
	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java: Code
	  refactoring and better error handling.

2009-12-22  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/math/HeightValue.java,
	  src/main/java/de/intevation/gnv/math/XYColumn.java: Added model classes to
	  store information for interpolation.

2009-12-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Added config section for palettes.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  load palettes at start up.
	  They are stored in a hash map under the key 'color.palettes'. The keys of
	  the map are the names from the configuration, the values are 
	  de.intevation.gnv.raster.Palette objects.
	  Put configuration of chart template into own method.

	* src/main/java/de/intevation/gnv/raster/Palette.java: Added a palette
	  description.

2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Ignore invalid interpolations correctly.

2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/raster/Raster.java: New. Models 2D double 
	  rasters. Has some support for filtering with gauss kernels, building
	  iso classes, etc.

	* src/main/java/de/intevation/gnv/raster/Palette.java: New. Maps double
	  values to integer indices and colors.

	* src/main/java/de/intevation/gnv/raster/Vectorizer.java: New. Simple
	  vectorizer which traces regions in integer rasters.

	* pom.xml: Added dependency to GNU Trove 2.1.1 which is needed by the
	  vectorizer.

2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/utils/WKTUtils.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Moved some methods back to old place.

2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	Added Ingo Weinzierl's special JFreeChart classes.

	* src/main/java/de/intevation/gnv/jfreechart: New package.
	  Should contain general JFreeChart stuff.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonPlot.java: New.
	  New type of plot to display multi-polygons with holes.

	* src/main/java/de/intevation/gnv/jfreechart/CompactXYItems.java: New.
	  Basic vertex data model: a ring of a polygon. ccw = shell, cw = hole.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonSeries.java: New.
	  Attributes a set of rings with key/value pairs.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonDataset.java: New
	  List of PolygonSeries which makes it a multi-polygon.

	* src/main/java/de/intevation/gnv/jfreechart/PolygonRenderer.java: New
	  A renderer to draw PolygonDatasets into a PolygonPlot.
	
2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/verticalcrosssection/conf_mesh.xml: Prepared states and
	  transitions of verticalcrosssection (german 'Profilschnitt').

2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>
a
	* src/main/java/de/intevation/gnv/utils/WKTUtils.java
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Outsourcing of some methods to prepare results for chart creation.

2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/palette/flow-velocity.xml:
	  color palette for flow velocity "Fliessgeschwindigkeit".
	* doc/conf/palette/water-levels.xml:
	  color palette for water levels "Wasserstaende".
	* doc/conf/palette/salinity.xml:
	  color palette for salinity "Salzgehalt".
	* doc/conf/palette/water-temperature.xml:
	  color palette for water temperature "Wassertemperatur".

2009-12-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Added some code to prevent needless null inserts if interpolating 
	  over large gaps.

2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/HorizontalCrossProfileChart.java:
	  Removed warning, which told the user that gap detection is not implemented
	  yet.

2009-12-21  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java,
	  src/main/java/de/intevation/gnv/math/Interpolation2D.java: Add 'null'
	  values for gap detection to result collection instead of omitting them.
	  
	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.jav:
	  Handle null values - don't throw an exception.

2009-12-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	RELEASE 0.3

	* Changes, NEWS, ChangeLog: Summarized activities

2009-12-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Bind REST server to localhost.

2009-12-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/test/ressources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_de.properties:
	  s/Modeldaten/Modelldaten

2009-12-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Removed
	  wkt line strings.

2009-12-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/queries.properties: Added K-position to sql statement for
	  verticalprofile charts on meshes.

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Changed
	  the depending axis for gap detection on meshes for verticalprofile charts.

2009-12-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	Issue 106

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Fixed a file-leak bug while reading chart template. Sourced parsing of xml
	  file out to XMLUtils of de.intevation.artifactdatabase.XMLUtils.

009-12-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java,
	  src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Added column labels for csv export.

2009-12-17  Hans Plum <hans@intevation.de>

	Issue 129: Release 0.2: Verbesserung der �bersetzungen

	* src/main/resources/lang/artifactMessages_de_DE.properties,
	src/main/resources/lang/artifactMessages_de.properties:
	Fixed i18n strings for german language

2009-12-16	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java:
	  Fixed index error in i-gab detection between neighbors.

2009-12-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Override method to create chart. Fixed some bugs for interpolation.

	* src/main/java/de/intevation/gnv/chart/HorizontalCrossProfileChart.java:
	  Chart class for generating horizontal crossprofile charts. Horizontal
	  crossprofile charts are a subclass of horizontal profile charts.

	* src/main/java/de/intevation/gnv/math/Point2d.java: Changed epsilon value.

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: Fixed some bugs
	  regarding buffer size to limit data for interpolation.

	  TODO: At the moment, there is no gap detection for horizontal crossprofile
	  charts.

2009-12-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue100

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java:
	  Workarround: Store information about max range of data for each parameter
	  while iterating over all data values. Set the max range at the end of 
	  chart generation.

	  NOTE: NumberAxis.setAutoRange(true) doesn't seem to work properly.

2009-12-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java:
	  Removed useless import of VerticalCrossSectionChartFactory.

	* src/main/java/de/intevation/gnv/chart/HorizontalCrossSectionChartFactory.java,
	  src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java,
	  src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChartFactory.java,
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java,
	  src/main/java/de/intevation/gnv/chart/ChartFactory.java: Removed useless
	  chart factory classes.

2009-12-16	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/utils/DistanceCalculator.java:
	  Added method to calculate distance of path.
	  TODO: Move this class into math package and and add
	  an slerp interpolator so it can be used as a metric inside
	  the interpolation code.

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Added code to disassemble the incoming result set, interpolate
	  along a given path and returns an adjusted result set.
	  The (i, j) got lost on this track because we don't travel along
	  the main axis of the grid any more. The test for gaps has to be
	  adjusted because, because the dx/dy on the path depends on how
	  many steps are made on the way [*]. This is controlled by the system
	  property 'interpolation.step.width'. It is set in meters
	  and defaults to 100m. TODO: This should be configurable
	  in the conf.xml file.

	  [*] I opt strongly for integration of the outlier test based gap
	  detection to overcome this problem.

2009-12-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/LinearToMap.java:
	  Uses JTS Coordinate as geometry model now.

	* src/main/java/de/intevation/gnv/math/Metrics.java,
	  src/main/java/de/intevation/gnv/math/Interpolator.java: New.
	  Moved from inner class of LinearToMap to top level class
	  to be more reusable. Uses JTS Coordinate as geometry model now.

	* src/main/java/de/intevation/gnv/math/Point2d.java: New.
	  Extends JTS Coordinate to have an additional (i, j)
	  to model the topological neighborhood within the mesh, too.

	* src/main/java/de/intevation/gnv/math/Interpolation2D.java: New.
	  Has a method interpolate() which takes a path line string in form
	  of a list of JTS Coordinates, a list of grid points (Point2d
	  to carry the topology, too), a linear range in diagram coordinate
	  space, a metric to cope with the projection. It reports
	  interpolated points to an implementor of the new inner interface
	  Consumer as a JTS Coordinate. (x, y) of this coordinate is the
	  postion on the map, the z value is the interpolated attribute.

	  To speed up the search for the neighbors the input points are
	  sorted into a quadtree and are queried first level with a buffer of
	  size (max(abs(p[i].x - p[i+1].x)), max(abs(p[i].y - p[i+1].y)))
	  around the point to be interpolated. The second level filter 
	  is performed by an inverse L1-ordering with region coding, so 
	  that only the nearest four neighbors are taken into acount. 
	  Only if all four neighbors are present and no
	  i- or j-gaps exist the interpolation is performed. TODO: Create
	  a better extrapolation strategy in these cases were these conditions
	  are not fulfilled.

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  Added a process() method to perform the interpolation. It does
	  nothing by now. TODO: bring it to life.
	  
2009-12-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/math/LinearToMap.java: Map linear
	  coordinates (from, to) to world coordinates (x, y) along a line string
	  given by a set of java.awt.geom.Point2D points.

	* src/main/java/de/intevation/gnv/math/LinearMetrics.java: Implements
	  Euclidean metric used by LinearToMap.	TODO: Do same for WGS84 to
	  be more precise.

2009-12-15  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java (calculateStatistics): 
	  Issue96 Resloved big that one entry is missiing in the Statitic.
	  The last row of the ResultSet was never used.

2009-12-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue106

	* doc/conf/conf.xml: Added charttemplate to global configuration.

	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java: Made
	  method static to call it without initiating an object of its class.

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	  Create ChartTheme at startup of artifact server and put it into global
	  context. The theme is created one time on this way.

	* src/main/java/de/intevation/gnv/state/OutputState.jav,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Changed
	  signature of 'out'-method. Call 'out' with CallContext instead of
	  CallMeta, which is contained in CallContext. CallContext is needed to
	  fetch the ChartTheme out of it.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java:
	  Changed signature of 'getChart'-method which now gets the CallContext
	  containing the ChartTheme.

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Get ChartTheme from CallContext instead of reading the XML file here.

2009-12-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java:
	  If a few (i, j) values are not available (gaps in the grid) try
	  to fill the holes with guessing the values by the ones which could
	  be fetched. We are using a componentwise linear function here.
	  This is surely slightly wrong because world coordinates are
	  in WGS84 which is ellipsoid in nature. TODO: Look at the errors
	  and if needed compensate them by using cubic polynonial or ellipsoid 
	  function terms.

	* src/main/java/de/intevation/gnv/math/LinearFunction.java: New.
	  Linear function to be used in curve fitting process.

2009-12-15  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties: 
	  Added the Unit of the Parameter to the Query for Parameters in 
	  all Parameterqueries where it was still missing. Now the Unit will 
	  be displaied in the Combobox and in the Diagramm-Axis-Description. 

2009-12-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* pom.xml: Upgraded to Apache Commons Math 2.0. Needed for
	  curve fitting (splines e.g)

	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java:
	  Use 'new DescriptiveStatistics()' instead of 
	  'DescriptiveStatistics().newInstance()' to be compatible with new
	  math api.

2009-12-15  Tim Englich  <tim.englich@intevation.de>

	Added the Unit of the Parameter to the Query for Parameters in 
	TimeSeries. Now teh Unit will be displaied in the Combobox and
	in the Diagramm-Axis-Description.

	* src/main/resources/lang/artifactMessages*.properties: 
	  Added the name Productname for "horizontale Schnittprofile". to the
	  Resources so that it could be displaied properly in the GUI

2009-12-15  Tim Englich  <tim.englich@intevation.de>

	* src/main/resources/lang/artifactMessages*.properties:
	  Added the required Resources for the Outputelements of "horizontale Schnittprofile".
	* doc/conf/queries.properties: 
	  Added the specialized Queries for getting the Data and the depths for 
	  generating "horizontale Schnittprofile".
	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java (log): 
	  Added an new OutputTransition to handle the special Way to d detremine the required
	  Data for generating "horizontale Schnittprofile".
	* doc/conf/conf.xml,
	  doc/conf/products/horizontalprofile/conf_mesh_cross.xml,
	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileMeshCrossArtifact.java: 
	  Added Support for "Horizontales Schnittprofil"-Artifacts to the Project
	  
2009-12-15  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue102
	
	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java:
	  Reset 'nextColor' at the beginning of chart creation. Now, color of lines
	  in charts are stable, which means, that an export will look like the chart
	  in the gui itself.

2009-12-14  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Issue101

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Changed date
	  representation in timeseries charts. Date format is sourced out to
	  ressource files. German date representation is now 'dd-MMM-yyyy' (eg
	  31-12-2009) and the english date representation is 'yyyy-MMM-dd' (eg
	  2009-12-31). 

	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Added date format
	  strings for timeseries charts.

2009-12-14	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/utils/IndexBuffer.java:
	Creates SQL-WHERE clauses for buffers around a list of 
	line segments in index (i, j) space.

2009-12-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java:
	  Exception handling while creating subtitle of horizontalprofile charts.
	  Included the case, that there is no start and no end date.

2009-12-11	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointTimeSeriesTestCase.java,
	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java:
	  Removed needless imports.

2009-12-11  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties: 
	  Added Z-Value to verticalcrosssection_mesh_chart_data.

2009-12-11  Tim Englich  <tim.englich@intevation.de>	
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCaseBase.java,
	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointHorizontalProfileTestCase.java, 
	  src/test/java/de/intevation/gnv/artifacts/InstantaneousPointVerticalProfileTestCase.java, 
	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalCrossSectionTestCase.java, 
	  src/test/java/de/intevation/gnv/artifacts/MeshHorizontalProfileTestCase.java, 
	  src/test/java/de/intevation/gnv/artifacts/MeshTimeSeriesTestCase.java, 
	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalCrossSectionTestCase.java, 
	  src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointTimeSeriesTestCase.java, 
	  src/test/java/de/intevation/gnv/artifacts/TimeSeriesPointVerticalProfileTestCase.java,
	  src/test/java/de/intevation/gnv/artifacts/MeshVerticalProfileTestCase.java:
	  Split all Unittestcases in separat Classes. Now it is easier to uses the UnitTests with Maven.
	  
2009-12-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Fade out
	  gridlines of range axis in charts if there are more than one axis.

2009-12-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Added axis labels
	  for horizontalprofile, verticalprofile, horizontalcrosssection and
	  verticalcrosssection charts.

	* src/main/java/de/intevation/gnv/state/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/verticalcrosssection/VerticalCrossSectionOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileOutputState.java,
	  src/main/java/de/intevation/gnv/state/profile/vertical/VerticalProfileOutputState.java:
	  Read axis labels from ressources instead of hard coded strings in code.

2009-12-11  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	  Cleared Issue104.

	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Added axis label
	  for timeseries charts.	

	* src/main/java/de/intevation/gnv/state/timeseries/TimeSeriesOutputState.java:
	  Removed hard coded axis label of timeseries charts. Read label from 
	  ressources.

2009-12-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
	  gap detection for horizontal and vertical profile charts.

2009-12-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/conf/conf.xml: Expanded the time to live of inactive artifacts
	  to 3600000ms (= 1h). Dead artifacts are removed from databasse
	  only every 15mins now. Improved the description on the artifact
	  factories.

2009-12-08  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties: 
	  Added the Unit of the Parameter to the Query for Parameters in 
	  TimeSeries. Now teh Unit will be displaied in the Combobox and
	  in the Diagramm-Axis-Description.
	  
2009-12-08  Tim Englich  <tim.englich@intevation.de>	
	* src/main/java/de/intevation/gnv/transition/profile:
	  Removed empty needless package.
	* src/main/java/de/intevation/gnv/transition/TransitionFactory.java:
	  src/main/java/de/intevation/gnv/transition/ValueCompareTransition.java, 
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java, 
	  src/main/java/de/intevation/gnv/transition/Transition.java,
	  src/main/java/de/intevation/gnv/transition/DefaultTransition.java:
	  The new Transitions which has the only job to provide the connectios between
	  the different States and look if it is Possible to go the different Ways.
	* src/main/java/de/intevation/gnv/state/StateBase.java,
	  src/main/java/de/intevation/gnv/state/State.java: 
	  Removed the Logic to descide which State is be reacable as next.
	  Now the Transition configured in the Artifacts will do that according
	  to the modified TransitionModel.
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (transitions): 
	  Added the Transitions to the Artifact and changed the Logic.
	  Now the Transition is able to decide if it could be uses or not.
	* doc/conf/products/verticalprofile/*.xml:
	  Modified the Configuration. Splitted States and Transitions into 
	  different XML-Fragments according to the modified Transitionmodel.

2009-12-08  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/queries.properties: Added marker ('DATAID') for different data
	  sources.

2009-12-08  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/products/*.xml: 
	  Switched all Package and Classnames to the new Names.
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: 
	  Switched Imports from de.intevation.gnv.transition to de.intevation.gnv.state
	  and renamed all Mebers and local Variables from *transition* to *state*
	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java: 
	  Changed the Class for the loggeer from TimeseriesoutputTransition
	  to ArtifactXMLUtilities because it was wrong.
	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java, 
	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java,
	  src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java, 
	  src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java, 
	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java, 
	  src/main/java/de/intevation/gnv/statistics/Statistics.java, 
	  src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java, 
	  src/main/java/de/intevation/gnv/exports/SimpleOdvDataCollector.java, 
	  src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java, 
	  src/main/java/de/intevation/gnv/exports/Export.java, 
	  src/main/java/de/intevation/gnv/exports/DefaultExport.java, 
	  src/main/java/de/intevation/gnv/exports/DefaultDataCollector.java, 
	  src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java, 
	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java, 
	  src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChartFactory.java, 
	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java, 
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java, 
	  src/main/java/de/intevation/gnv/chart/HorizontalCrossSectionChartFactory.java, 
	  src/main/java/de/intevation/gnv/chart/ChartFactory.java, 
	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: 
	  Changed import from de.intevation.gnv.transition.* to de.intevation.gnv.state.*
	  according to refactoring Work in the Transitionsmodel.
	* de.intevation.gnv.transition.* 
	  Moved to de.intevation.gnv.state.* 
	  and renamed all Mebers,  local Variables, and Methodsignatures from *transition* to *state*

2009-12-07  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Remove unselected parameters from parameters list before initiating
	  charts. Parameter names are used as axis labels.

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Changed
	  the way of adding data to charts: same parameters are stored in the same 
	  dataset. Now, each parameter has only one axis. Axes and renderer are 
	  adjusted one time after collecting data - not after creating every 
	  single series.

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Added some
	  more colors to distinguish between different parameters/attributes.
	  Changed method to adjust rendering options regarding the changes of 
	  datasets described above.

2009-12-07  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Changed method
	  generateChart to initChart, which just created a new timeseries chart.
	  General chart stuff is done in AbstractXYLineChart.

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Sourced
	  ChartFactory call out to a new initChart method. This has been done,
	  because TimeSeriesCharts needs to initiate another type of chart than
	  horizontal or vertical charts.

2009-12-04  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java:
	  Added method to fetch a string from ressource bundle with a specified
	  locale. Before, there just have been existing a method to fetch string 
	  from ressource bundle on basis of the first locale in a list of locales.

	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java:
	  Added method to fetch strings from ressource bundle from RessourceFactory
	  with a specified locale, a key and a default value, if there is no string
	  matching key in bundle.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Added methods for creating title and subtitle of charts. FIS name is
	  fetched from ressource bundle with best locale (regarding supported server 
	  and client locales) instead of first locale in list of supported locales 
	  of the server.

	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java:
	  Changed title of charts. The main title contains FIS and station name. The
	  subtitle contains the time period, the cruise, the depth and the position 
	  of a chart.

	* src/main/java/de/intevation/gnv/chart/ChartLabels.java: Added subtitle as
	  parameter in class and constructor.

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Added a
	  subtitle to charts. Titles and subtitles are stored in a ChartLabels
	  object.

	* src/main/resources/lang/artifactMessages.properties,
	  src/main/resources/lang/artifactMessages_de_DE.properties,
	  src/main/resources/lang/artifactMessages_en.properties,
	  src/main/resources/lang/artifactMessages_de.properties: Added strings for
	  chart title.

2009-12-04	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* ChangeLog: Cleaned up a bit.

2009-12-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Added time gap
	  detection. If a time gap is detected, a null value will be inserted to
	  break the current line.

2009-12-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* pom.xml: Added JBoss repository for JFreeChart 1.0.13 and removed explicit
	  JCommon dependency which is now needless. Now, it is no more necessary to
	  install JFreeChart into the local maven repository on your own.

2009-12-02  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/charttemplate.xml: Added lines to configure rendering of lines
	  and points in charts (visibility of lines/points and size of points).

	* src/main/java/de/intevation/gnv/chart/XMLChartTheme.java: Added method
	  parsing the rendering options for lines and points in charts.

	* src/main/java/de/intevation/gnv/chart/AbstractChart.java: Added boolean
	  member attributes which are used to control the visibility of lines and
	  points in charts.

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java:
	  Constructor needs two further boolean parameter to control the visibility
	  of lines and points in charts.

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: The
	  renderer controlling the style of a series is adjusted after adding a
	  new series to the chart.

	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.jav,
	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Adjusted method calls regarding the constructor changes in *Chart classes.

	  TODO: Lines and points in charts will both always be rendered at the
	  moment. This needs to be changed as soon as a new gui option is
	  implemented to control the visibility of lines/points.

2009-12-01  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java:
	  Added one more Transitionstep to each Testcase according to the refactored Transitionmodel.
	* src/test/ressources/verticalprofile/verticalprofile_step_*_advance.xml,
	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_*_advance.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_*_advance.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_*_advance.xml,
	  src/test/ressources/timeseries_mesh/timeseries_step_*_advance.xml,
	  src/test/ressources/timeseries/timeseries_step_*_advance.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_*_advance.xml,
	  src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_*_advance.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_*_advance.xml:
	  Moved each Adancedocument plus one according to the refactored Transitionmodel.
	  Added the first advanced Call for the Product-Artifact

2009-12-01  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java:
	  All Data which is required to generate the Charts is now fetched using the
	  Method getChartResult. The Method advance and initialize now have nothing to do.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out):
	  Removed the advance call because all Data which is required to generate the Charts is
	  fetched using the Method getChartResult.
	* src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java (initialize):
	  Use Method instantiate instead of Advance to add the required Data for describe
	  and feed this Transition.

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (initialize),
	  src/main/java/de/intevation/gnv/transition/Transition.java (initialize):
	  Added new Method Initaialize which will be callcall to Initailize the current
	  Transition. In this step all Data will be fetched which is required  to Ddescribe and
	  feed each Transition.
	  Also the AlternativeTransition was removed  because it is not longer required.

	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (advance):
	  Switched to the usage of the Method initialize instead of Advance while instantiating
	  a new Productartifact, according to the Refactoring work wich is done in the
	  TransitionModel.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (initialize):
	  Added new Function Initialize so that it is possible to Initialize an Artifact
	  without doing this in the Constructor. That is nessessary because some Artifacts need
	  some Metadata (e.g. SourceID) befor it can be initialized.

	* doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/horizontalcrosssection/conf_mesh.xml:
	  Some Refactoring work done according to the Refactoring Work wich
	  was done in the Transitionmodel.

2009-11-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java,
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java,
	  src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java:
	  Removed needless imports.

2009-11-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* pom.xml: Updated batik dependencies to 1.7

	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java: Use
	  java native DOMImplementation instead of Batik's SVGDOMImplementation,
	  which is not present in batik 1.7 libs.

2009-11-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added svg
	  to output modes (MimeType image/svg+xml).

	* pom.xml: Added batik 1.6.1 dependencies which are used to create svg
	  exports.

	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java:
	  Implemented chart export to svg.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Output mode 'svg' will call svg export of ChartExportHelper.

2009-11-30  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* pom.xm: Added iText 2.1.7 dependency (to create pdf's).

	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java:
	  Implemented chart export to pdf using iText library. The chart fills the
	  complete page. A boolean system property "export.pdf.landscape" can be
	  used to adjust the page orientation (portrait or landscape, default is
	  landscape).

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Added method for exporting chart to pdf. Calls the new method of
	  ChartExportHelper.

2009-11-27  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java
	  (testHorizontalProfileInstantaneousPointArtifact),
	  src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_*.xml:
	  Added new stapes using the RegionFilter into the Tescase of HorizontalProfiles Instantaneous Point.
	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_feed.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_feed.xml:
	  Bugfix: Removed second dateid. horizontalcrosssection and verticalcrosssection  only provide the usage of one dateid.
	* doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml:
	  Added the RegionFilters into the configuration of the Products for
	  Horizontalprofiles IntantaneousPoints.
	* doc/conf/queries.properties:
	  Query to select only Ships, Cruises, Tracks  which are within an Region.
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (extractKVP):
	  Added Row-Number lookup for ColumnNames for Performanceimprofements.

2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/exports/ChartExportHelper.java: Helper
	  class to export charts. Dependencies on JFreeChart and iText are capsuled
	  here, no further dependencies in OutputTransitions. Export methods for
	  images and pdf already implemented.

	* src/main/java/de/intevation/gnv/chart/Chart.java,
	  src/main/java/de/intevation/gnv/chart/AbstractChart.java: Outsourcing of
	  export methods to ChartExportHelper.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Adapted current export of charts.

2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added pdf
	  as export format.

2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* TODO: Added point in TODO regarding tick units and distance between tick
	  units in timeseries charts.

2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Localized
	  chart axis. Two method have been added - method to localize y-axis of
	  charts, abstract method to localize x-axis of charts.

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Override
	  abstract method to localize x-axis.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Call algorithm to determine the best locale regarding intersection of
	  supported server and browser locales. This locale is used to create
	  localized charts.

2009-11-26  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java:
	  New method getLocales() which returns an array of locales which are
	  supported by the server.

	* src/main/resources/lang/lang.conf: Config-file for supported languages.
	  The resource bundles for localized text should be configured here. It is
	  used to determine the best locale regarding the supported locales by
	  server and browser.

2009-11-25  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java: Override
	  method generateChart to instantiate TimeSeries charts instead of XY
	  charts. Before these changes, timeseries charts did not have a valid date
	  axis.

2009-11-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/AbstractChart.java,
	  src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java: Added
	  timegap definitions, adapted constructors.

	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Adapted creation of charts regarding changes of constructors.

2009-11-24  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_feed.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_feed.xml,
	  src/test/ressources/timeseries_mesh/timeseries_step_08_feed.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_feed.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_feed.xml,
	  src/test/ressources/timeseries/timeseries_step_06_out_chart.xml:
	  Added new Timevalues because the Data in the DWH has changed.

2009-11-24  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* pom.xml: Added dependencies for esri and ibm libraries required for unit
	  tests.

2009-11-24  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/timeseries/timeseries_step_06_out_chart.xml:
	  Added mime-type to get a propper output-result and not an NPE
	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java (findValueTitle):
	  Added null-value check to prevent NPEs.
	* src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java (getChart),
	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (getChart),
	  src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java (getChart),
	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java (getChart):
	  Changed Method-Signature to this one which the base method provide.
	  Now the Methods will be used again.

2009-11-24  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java (TestCallContext):
	  Removed Compilationerrors that were triggert by API-Changes in
	  Module Artifact-Database.

	* doc/conf/queries.properties,
	  doc/conf/products/timeseries/conf_mesh.xml:
	  Removed Meshpoint from SQL-Query because the same value will be
	  insert by using the depthid.
	  depthid on layer 1 = featureid
	  In the old configuration only Charts on Layer 1 were drawn.
	  issue91

2009-11-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java:
	  Remove chart from cache when data which is displayed has changed.

2009-11-23  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/charttemplate.xml: Added configuration file for chart themes.

	* src/main/java/de/intevation/gnv/chart/XMLChartTheme.java: Theme class for
	  reading xml files which describe chart styles. It extends the
	  StandardChartTheme class of JFreeChart which defines default values for
	  chart parameters. It is possible to apply different xml configurations for
	  different charts.

	* src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Before creating a new chart, an instance of XMLChartTheme is initialized
	  which is responsible for the chart style.

	  NOTE: 'charttemplate.xml' is used by artifact server and has to be placed
	  in the config directory.

2009-11-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Export format of charts (png, jpeg, gif) depends on mime-type.

	* src/main/java/de/intevation/gnv/chart/Chart.java,
	  src/main/java/de/intevation/gnv/chart/AbstractChart.java: Renamed export
	  method, because it doesn't export just png anymore, but jpeg or gif as
	  well.

2009-11-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_06_out_chart.xml,
	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_chart.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_out_chart.xml,
	  src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_out_chart.xml,
	  src/test/ressources/timeseries_mesh/timeseries_step_08_out_chart.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_out_chart.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_out_chart.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_06_out_chart.xml:
	  Removed mistake in xml structure of artifact protocol. Mime-type node was
	  called 'out' instead of 'mime-type'.

2009-11-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java,
	  src/main/java/de/intevation/gnv/chart/AbstractChart.java,
	  src/main/java/de/intevation/gnv/exports/Export.java,
	  src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java,
	  src/main/java/de/intevation/gnv/exports/SimpleOdvDataCollector.java,
	  src/main/java/de/intevation/gnv/exports/DefaultProfile.java,
	  src/main/java/de/intevation/gnv/exports/DefaultExport.java,
	  src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Removed duplicated and needless imports.

2009-11-20  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java:
	  Added methods for caching charts.

	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Changed chart generation. Charts will now be generated in a central place
	  in TimeSeriesOutputTransition which is the parent class of other
	  OutputTransitions. Each OutputTransition got a new method to serve its own
	  special chart class.

	* TODO: Added hint for caching charts. Verticalcrosssection and
	  orizontalcrosssection charts aren't implemented yet.

	  NOTE: Charts can be cached. This could be useful if the user exports
	  charts as svg, png or pdf. The caching of charts is configured via system
	  property 'cache.chart' at the moment.

2009-11-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/transition/OutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Changed parameter of 'out'-method of OutputTransition. Now, the
	  OutputTransition gets the complete xml document of the request (before
	  just the target name). The mime type of this xml ist used to distinguish
	  between different output formats of charts (png, jpeg).

2009-11-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/TimeSeriesChart.java,
	  src/main/java/de/intevation/gnv/chart/VerticalProfileChart.java,
	  src/main/java/de/intevation/gnv/chart/HorizontalProfileChart.java:
	  Classes for creating charts of different output transitions, inherit from
	  AbstractXYLineChart. The subclasses should only implement special code.
	  General configurations should be done in AbstractChart or
	  AbstractXYLineChart.

	  TODO: Take care of gaps between two values.

2009-11-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/chart/Chart.java: Interface, which
	  declares basic method to create charts and export it in different formats.

	* src/main/java/de/intevation/gnv/chart/AbstractChart.java,
	  src/main/java/de/intevation/gnv/chart/AbstractXYLineChart.java: Abstract
	  chart classes which declare basic methods for chart creation and implement
	  general methods used by subclasses.

2009-11-19  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/utils/DistanceCalculator.java: Declared a
	  method as static, which can be used without instantiating an object of its
	  class.

2009-11-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* pom.xml: Changed version of JFreeChart from 1.0.12 to 1.0.13 and added
	  dependency of JCommon 1.0.15, which is used by JFreeChart.

	  NOTE: The JFreeChart 1.0.13 jar has to be installed on your own for the
	  time the central maven repository is broken.

2009-11-17  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* pom.xml: Changed version of JFreeChart from 1.0.7 to 1.0.12, which
	  includes the template mechanism to configure the style of charts.

	  NOTE: JFreeChart 1.0.13 is the newest release, but the maven repository
	  does not contain a pom.xml file. Created an issue on
	  (http://jira.codehaus.org/browse/MEV-647).

2009-11-16  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* bin/run.sh: Added start-script to version control.

2009-11-13  Hans Plum <hans@intevation.de>

	* RELEASE 0.2:
	Summarized activities in NEWS, Changes

2009-11-13  Hans Plum <hans@intevation.de>

	* ChangeLog:
	Unified style of ChangeLog descriptions refering to issues.

2009-11-13  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/products/timeseries/conf_timeseriespoint.xml:
	  Moved Comment according to Instantiationerrors loading Artifact.

2009-11-13  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/log4j.properties,,
	  doc/conf/conf.xml,
	  doc/conf/arcsdeconnectionpool.properties,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml:
	  Added Documentation of Configuration-Files.

2009-11-13  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/horizontalcrosssection/conf_mesh.xml:
	  Removed statistics as possible out-Variant from Configuration
	  according to TG_0030.061

	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_out_statistics.xml,
	  src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_out_statistics.xml,
	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalCrossSectionMeshArtifact),
	  (testVerticalCrossSectionMeshArtifact):
	  Removed Statistics-Test on This Artifact-Test because no Statistic is required
	  for this Producttyp.

	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/
	HorizontalCrossSectionMeshOutputTransition.java (createCSV):
	  No Statistics for this Output is required.

	* src/main/java/de/intevation/gnv/statistics/HorizontalCrossSectionStatistics.java:
	  Removed becaus the Statistics for ths product is not required.

2009-11-12  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/statistics/HorizontalCrossSectionStatistics.java (calculateXOrdinateValue),
	  src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java (calculateXOrdinateValue),
	  src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java (calculateXOrdinateValue),
	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java :
	  Added the previous Row to the Method for calculating the GAP between
	  those Rows. Also added Calculation of the Distance between two Points in
	  HorizontalProfileStatistic and returning the Depth in VerticalProfileStatistics.
	  Also added the Metjod clearStatistics to restet the Object if an new Calculation
	  will started.

2009-11-12  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (extractKVP):
	  Translated "Keine Auswahl" to "No Selection" according to the Specification that
	  the primary Language is english. Please note that the Values  that are currently
	  displaied are almost in german.

2009-11-12  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (writeStatistics2XML):
	  Changed XML-Syntaxt according to the new Structure of StatisticValues.
	  (out):
	  Changed Call of calculateStatistics according to the new Methodsignature.

	* src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java,
	  src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java.
	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java,
	  src/main/java/de/intevation/gnv/statistics/Statistics.java:
	  Extended Methods calculateStatistics to put Lable-Values into the
	  Calculation. Now for each Group of Statistics is it possible
	  to calclulate a separat name which is simmilar to the name of
	  the Diagramm-Series-Name.
	  Also the Representation of the Statistics has changed so each Group
	  will be stored in one StatisticSet

	* src/main/java/de/intevation/gnv/statistics/StatisticSet.java:
	  Bean for Storing the Statistic to one Group and also storing the
	  Name of the Statistic.

2009-11-11  Tim Englich  <tim.englich@intevation.de>

	Issue 19: Validation of max. min value order

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (putInputData):
	  Added Validation if a given maxvalue is greater than a given minvalue issue19
	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid):
	  Added new Method for validating if a maxvalue is greater than a minvalue. issue19

2009-11-11  Tim Englich  <tim.englich@intevation.de>

	Issue 81: Keeping input values in coordinate input fields

	* src/main/java/de/intevation/gnv/transition/describedata/DefaultSingleValueDescribeData.java
	  (setValue), src/main/java/de/intevation/gnv/transition/describedata/SingleValueDescribeData.java:
	  Added setValue-Method
	  for setting the Value which was sent back to the Server using the feed-request. issue81

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (getDescribeData):
	  Added SingleValueDescribeData to the method for storing InputValues for
	  Describeoutput issue81

2009-11-11  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/describedata/MinMaxDescribeData.java,
	  src/main/java/de/intevation/gnv/transition/describedata/DefaultMinMaxDescribeData.java:
	  Added getName and added Constants for minValue and maxValue Id to
	  enable the storage of this Values which would be put using the
	  feed command.

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe):
	  Changed the usage of the Name of the MinMaxTransition from getMinName to getName.

	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java (purifyResult):
	  Changed the Constructor of MinMaxTransition according to API-Changes of
	  DefaultMinMaxDescribeData

2009-11-11  Tim Englich  <tim.englich@intevation.de>

	Issue 76: Improving XML config documents

	* doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalcrosssection/conf_mesh.xml:
	  Removed unnecessary characters 'v' from the Documents. issue76

2009-11-10  Tim Englich  <tim.englich@intevation.de>

	* src/main/resources/lang/artifactMessages_*.properties:
	  Added Ressources for the AreaFilter Ids areaid and subareid

2009-11-10  Tim Englich  <tim.englich@intevation.de>

	Issue 68: Improving ODV Export

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (TIMESERIES_ODV_PROFILE_NAMES):
	  Sort Columns to the given order of the ODV-Specification
	  and added the Columns DATAVALUE and PARAMETER to the output
	  according to issue68

	* doc/conf/queries.properties:
	  Changed Column-alias in Query for HorizontalProfile ODV-Exports in Meshes
	  from PARAMETERID to PARAMETER to be able to use in only on ODV-Export-Profile

2009-11-10  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalCrossSectionMeshArtifact):
	  Added the ODV-Export to the Unit-Testcase for VerticalCrossSection-Mesh.
	  Some Refactoring Work done.
	* doc/conf/products/verticalcrosssection/conf_mesh.xml:
	  Added QueryID for ODV-Exports to the Configuration of an
	  Mesh-VerticalCrossSection-Artifacts
	* doc/conf/queries.properties:
	  Added Query for VerticalCrossSection ODV-Exports in Meshes.
	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_feed.xml:
	  Changed Datevalue, because the old value was out of range to the Data.
	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_08_out_odv.xml:
	  Added Out-Request for ODV-Export to the JUnitTest Configuration for
	  VerticalCrossSection Mesh.

2009-11-10  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalCrossSectionMeshArtifact):
	  Added the ODV-Export to the Unit-Testcase for HorizontalCrossSection-Mesh.
	  Some Refactoring Work done.
	* doc/conf/queries.properties:
	  Added Query for HorizontalCrossSection ODV-Exports in Meshes.
	* doc/conf/products/horizontalcrosssection/conf_mesh.xml:
	  Added QueryID for ODV-Exports to the Configuration of an
	  Mesh-HorizontalCrossSection-Artifacts
	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_feed.xml:
	  Changed Datevalue, because the old value was out of range to the Data.
	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_06_out_odv.xml:
	  Added Out-Request for ODV-Export to the JUnitTest Configuration for
	  HorizontalCrossSection Mesh.

2009-11-10  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileInstantaneousPointArtifact):
	  Added the ODV-Export to the Unit-Testcase for HorizontalProfile-InstantaneousPoint.
	  Some Refactoring Work done.
	* src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_06_out_odv.xml:
	  Added Out-Request for ODV-Export to the JUnitTest Configuration for
	  HorizontalProfiles InstantaneousPoint.
	* doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml:
	  Added QueryID for ODV-Exports to the Configuration of an
	  InstantaneousPoint-HorizontalProfile-Artifacts
	* doc/conf/queries.properties:
	  Added Query for HorizontalProfile ODV-Exports in InstantaneousPoint

2009-11-10  Tim Englich  <tim.englich@intevation.de>
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileInstantaneousPointArtifact):
	  Added the ODV-Export to the Unit-Testcase for VerticalProfile-InstantaneousPoint.
	  Some Refactoring Work done.
	* doc/conf/products/verticalprofile/conf_instantaneouspoint.xml:
	  Added QueryID for ODV-Exports to the Configuration of an
	  InstantaneousPoint-VerticalProfile-Artifacts
	* doc/conf/queries.properties:
	  Added Query for VerticalProfile ODV-Exports in InstantaneousPoint
	* src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_odv.xml:
	  Added Out-Request for ODV-Export to the JUnitTest Configuration for VerticalProfiles InstantaneousPoint.

2009-11-10  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileMeshPointArtifact):
	  Added the ODV-Export to the Unit-Testcase for HorizontalProfile-Mesh.
	  Some Refactoring Work done.
	* doc/conf/products/horizontalprofile/conf_mesh.xml:
	  Added QueryID for ODV-Exports to the Configuration of an
	  Mesh-HorizontalProfile-Artifacts
	* doc/conf/queries.properties:
	  Added Query for HorizontalProfile ODV-Exports in Meshes
	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_10_out_odv.xml:
	  Added Out-Request for ODV-Export to the JUnitTest Configuration for HorizontalProfiles Mesh.
	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_02_feed.xml:
	  BugFix: Changed missspelled Input-Name

2009-11-09  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (TIMESERIES_ODV_PROFILE_NAMES):
	  Changed the Order of Columnlookup for ODV-Exports and added column "Depth" to the Export
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesMeshArtifact):
	  Added the ODV-Export to the Unit-Testcase for TimeSeries-Mesh.
	  Some Refactoring Work done.
	* doc/conf/queries.properties:
	  Added Query for VerticalProfile ODV-Exports in Meshes
	* doc/conf/products/verticalprofile/conf_mesh.xml:
	  Added QueryID for ODV-Exports to the Configuration of an
	  Mesh-VerticalProfile-Artifacts
	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_10_out_odv.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_06_out_odv.xml:
	  Added Out-Request for ODV-Export to the JUnitTest Configuration for VerticalProfiles.

2009-11-09  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesMeshArtifact):
	Added the ODV-Export to the Unit-Testcase for TimeSeries-Mesh.
	Some Refactoring Work done.

	* src/test/ressources/timeseries_mesh/timeseries_step_08_out_odv.xml:
	Added Out-request for ODV-Export to the JUnitTest Configuration for TimeSeries Mesh.

	* doc/conf/products/timeseries/conf_mesh.xml:
	Added QueryID for ODV-Exports to the Configuration of an Mesh-TimeSeries-Artifacts

	* doc/conf/queries.properties: Added Query for TimeSeries ODV-Exports in Meshes

2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/exports/Export.java
	  src/main/java/de/intevation/gnv/exports/DefaultProfile.java
	  src/main/java/de/intevation/gnv/exports/DefaultExport.java: Added the
	  possibility to print column labels in the first line of an export.

	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Adjusted instantiation of the DefaultExport object and added column labels
	  for odv export.

2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/exports/SimpleOdvDataCollector.java:
	  Implemented a DataCollector for Odv exports.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  OEV-export uses a SimpleOdvDataCollector to collect export data.

2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java,
	  src/main/java/de/intevation/gnv/exports/HorizontalProfileDataCollector.java:
	  Renamed HorizontalProfileDataCollector into ShapeDataCollector, because it
	  will be used by other transitions as well.

	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java:
	  Adjusted class name of DataCollector after renaming.

2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/exports/HorizontalProfileDataCollector.java:
	  Special DataCollector for fetching data used for horizontal profile
	  exports.

	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java:
	  Uses the an exporter for csv export.

2009-11-09  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/exports/Export.java,
	  src/main/java/de/intevation/gnv/exports/DefaultDataCollector.java:
	  Implemented a DataCollector to collect all data used to create exports.
	  DefaultCollector fetches data with help of its headers. For special
	  exports, where a header returns more than one value, special
	  DataCollectors needs to be implemented (overwritung the 'getData' method).

	* src/main/java/de/intevation/gnv/exports/DefaultProfile.java,
	  src/main/java/de/intevation/gnv/exports/DefaultExport.java: Export now
	  uses a DataCollector to get the data.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Adjusted exports of csv export.

2009-11-09  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties:
	  Added SQLStatemenet for ODV-Data for VerticalProfiles
	  on TimeSeriesPoints.
	* doc/conf/products/verticalprofile/conf_timeseriespoint.xml:
	  Added QueryID for ODV-Data-Query

2009-11-09  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/timeseries/timeseries_step_06_out_*.xml:
	  Added the missing out-Modes to the Testcase and rename it to
	  the common used way in this TestCases.
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesArtifact):
	  Added the ODV-Export to the Unit-Testcase.
	  Some Refactoring Work done.
	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out):
	  The Method for generating ODV-Export now reads its Data from
	  the special Method which delivers the adapted Data.
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (generateFilterValuesFromInputData):
	  Extracted the Generation of the FilterValues for the geo-backend
	  to use it in several methods.
	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java (getODVResult):
	  Added Method for getting the rquired Data for ODV-Exports
	* doc/conf/products/timeseries/conf_timeseriespoint.xml:
	  Added separat QueryID Lookup for ODV-Data-Queryies
	* doc/conf/queries.properties:
	  DB-Queries for ODV-Support TimeSeries on TimeSeriesPoints added.

2009-11-06  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* src/main/java/de/intevation/gnv/exports,
	  src/main/java/de/intevation/gnv/exports/Export.java,
	  src/main/java/de/intevation/gnv/exports/DefaultProfile.java,
	  src/main/java/de/intevation/gnv/exports/DefaultExport.java: Implemented an
	  Exporter for odv and csv exports. Each exports just needs a Profile, which
	  describes the output.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Added an exemplary export for CSV and ODV formats of
	  TimeSeriesOutputTransition.

	  TODO: ODV exporter exports the same data as CSV exporter does. This needs
	  to be adapted.

2009-11-06  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java:
	  Added and moved Workflowsteps because of changes in the Workflow of these Artifacts.
	  Now the Region-Filter is added to the Workflow an can be tested using
	  this UnitTestCases.

	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_*.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_*.xml,
	  src/test/ressources/timeseries/timeseries_step_*.xml,
	  src/test/ressources/timeseries_mesh/timeseries_step_*.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_*.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_*.xml:
	  Added and moved Files because of changes in the Workflow of these Artifacts.
	  Now the Region-Filter is added to the Workflow an can be tested using
	  the UnitTestCases.

2009-11-06  Ingo Weinzierl <ingo.weinzierl@intevation.de>

	* doc/conf/products/horizontalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_instantaneouspoint.xml,
	  doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml: Added odv
	  as output format.

2009-11-06  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/ChartFactory.java (calculateMaxGap):
	  Bugfix Gap-Calculation moved maxGap into negative Valies because of
	  overflow of Long-Variable.

2009-11-05  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties:
	  Query to select only those TimeSeriesPoints
	  which are within an Region

	* doc/conf/products/timeseries/conf_timeseriespoint.xml,
	doc/conf/products/verticalprofile/conf_timeseriespoint.xml:
	Added the RegionFilters into the configuration of the Products
	for TimeSeriesPoints.

2009-11-05  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties:
	  Added new Queries to fill the Lists for the
	  Regionfilters and one Query to select only those Meshes
	  which are within an Region.

	* doc/conf/products/verticalprofile/conf_mesh.xml,
	  doc/conf/products/verticalcrosssection/conf_mesh.xml,
	  doc/conf/products/timeseries/conf_mesh.xml,
	  doc/conf/products/horizontalprofile/conf_mesh.xml,
	  doc/conf/products/horizontalcrosssection/conf_mesh.xml:
	  Added the RegionFilters into the configuration of the Products
	  for Meshes.

2009-11-05  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/*_describe.xml:
	  Added the DescribeRequestBodies to each TestCaseData.
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java:
	  Added the DescribeRequestBody to Describe-Calls in the Test
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java:
	  Added the possibility to switch to an alternative Transition if no value was choosen.

	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid):
	  Added that the Inputvalue is valid if it fullfills the confitions of "no value choosen" (n/n)

	* src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java (calculateXOrdinateValue):
	   Added Dummyvalue for X-OrdinateValue
	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java (describe),
	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java (describe),
	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java (describe),
	  src/main/java/de/intevation/gnv/profile/horizontalcrosssection/HorizontalCrossSectionMeshArtifact.java (describe),
	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java (describe),
	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (describe),
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (createDescibeOutput):
	  Added the possibility to exclude the UI from the DescribeRequest.

2009-11-03  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/ChartFactory.java (getTimeGapValue):
	  Integrated special case for TimeGaps in Meshes. There is no Gap defined in
	  Meshes so we have to use Long.MAXVALE to define a Gap for a Mesh which value
	  canno be reached.

2009-11-02  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java
	  (createCSV): Code Cleanup: Removed obsoled TODO Flag

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (setSelection):
	  Changed the Value of the min and maxvalue of the Request to the Value which is unsed to name
	  the Inputfields in the DescribeOutput.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java,
	  src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java,
	  src/main/java/de/intevation/gnv/transition/Transition.java,
	  src/main/java/de/intevation/gnv/transition/SingleInputTransition.java,
	  src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java,
	  src/main/java/de/intevation/gnv/transition/MinMaxTransition.java,
	  src/main/java/de/intevation/gnv/transition/DefaultTransition.java,
	  src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (advance),
	  CodeCleanup: Removed needless Method validate from Transition,
	  because it had always returned true

2009-10-30  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/horizontalcrosssection_mesh/horizontalcrosssection_step_*.xml:
	  Added the Testdata for the Unittest for HorizontalCrossSectionMeshArtifacts.
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalCrossSectionMeshArtifact):
	  Added the UnitTest-Case for HorizontalCrossSectionMeshArtifacts

2009-10-30  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties:
	  Added the Query for selecting the Data for generating Outputs of
	  HorizontalCrossSectionMeshOutputTransition
	* doc/conf/products/horizontalcrosssection/conf_mesh.xml:
	  Added the configuration for the HorizontalCrossSectionMeshOutputTransition
	* src/main/java/de/intevation/gnv/transition/profile/horizontalcrosssection/HorizontalCrossSectionMeshOutputTransition.java:
	  Added the OutputTransition for generating /HorizontalCrossSections.
	* src/main/java/de/intevation/gnv/statistics/HorizontalCrossSectionStatistics.java:
	  The Class for generating the Statistics to HorizontalCrossSections
	* src/main/java/de/intevation/gnv/chart/HorizontalCrossSectionChartFactory.java:
	  The Class Stub for generating HorizontalCrossSections Charts.

2009-10-29  Tim Englich  <tim.englich@intevation.de>

	Issue 45: Defining gaps for spatial and temporal gaps

	* doc/conf/products/timeseries/timegap_definition.xml,
	  doc/conf/products/timeseries/conf_timeseriespoint.xml:
	  Added the Configuration for TimeGaps to the TimeSeries-Configurations. issue45

	* doc/conf/queries.properties:
	  Added TimeGapIp to the Queries for the Resultdata of TimeSeriesArtifacts. issue45

	* src/main/java/de/intevation/gnv/timeseries/gap/DefaultTimeGap.java,
	  src/main/java/de/intevation/gnv/timeseries/gap/TimeGap.java,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (setup):
	  src/main/java/de/intevation/gnv/chart/ChartFactory.java (calculateMaxGap):
	  Added configurable TimeGap Support to the TimeSeries-Chart-Generation. issue45

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java (readConfiguration):
	  Moved Method from GNVArtifactBase to make it assesible for more Objects. issue45

2009-10-28  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/profile/horizontalcrosssection/
	HorizontalCrossSectionMeshArtifact.java (HorizontalCrossSectionMeshArtifact),
	doc/conf/queries.properties, doc/conf/conf.xml,
	doc/conf/products/horizontalcrosssection/conf_mesh.xml,
	src/main/resources/lang/artifactMessages* .properties:
	Added Workflow for determining the Query-Parameters for  Horizontal cross-sections.

2009-10-28  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/conf.xml:
	  Added Configuration for two new FIS. Current Meter and Ice Station Reports

	* src/main/resources/lang/artifactMessages*.properties:
	  Added Ressources for two new FIS. Current Meter and Ice Station Reports

2009-10-27  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/conf.xml:
	  Added Configuration for two new FIS. Sea State and SEACAT

	* src/main/resources/lang/artifactMessages*.properties:
	  Added Ressources for two new FIS. Sea State and SEACAT

2009-10-27  Tim Englich  <tim.englich@intevation.de>

	Issue 61: Vertical profile (Meshes): Selection of minimal and maximal
	depths zones

	* src/main/resources/lang/artifactMessages*.properties:
	  Added Ressources for the minimal and maximal Layer to use in VerticalProfiles of Meshes issue61

	* doc/conf/products/verticalprofile/conf_mesh.xml:
	  Added two new Transitions for selecting the min and max-Layer to use. issue61

	* doc/conf/queries.properties:
	  Added Queries for Selecting the Depth for selecting the minimum and the maximum Layer to use
	  Drawing the Chart. issue61

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileMeshArtifact):
	  Integrated two further Transitions-Steps according to changes in Workflow of
	  VerticalProfiles in Meshes. issue61

	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_*.xml:
	  New Testdata generated according to changes in Workflow of VerticalProfiles in Meshes. issue61

2009-10-26  Tim Englich  <tim.englich@intevation.de>

	Issue 31: TG_0020.018: Input of manual depth zones

	* src/main/resources/lang/artifactMessages_de_DE.properties:
	  Added Ressources for the minimal and maximal value of the depth

	* src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_statistics.xml (renamed),
	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_csv.xml (renamed),
	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_out_chart.xml(renamed),
	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_05_feed.xml,
	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_04_advance.xml,
	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_03_advance.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_05_out_statistics.xml(renamed),
	  src/test/ressources/verticalprofile/verticalprofile_step_05_out_csv.xml(renamed),
	  src/test/ressources/verticalprofile/verticalprofile_step_05_out_chart.xml(renamed),
	  src/test/ressources/verticalprofile/verticalprofile_step_05_feed.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_04_advance.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_03_advance.xml,
	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java:
	  Edited the RestCases for VerticalProfiles according to the requirement that
	  the user should be able to enter the minimal and maximal Value of the depth that
	  should be show n in the charts. issue31

	* doc/conf/queries.properties,
	  doc/conf/products/verticalprofile/conf_timeseriespoint.xml,
	  doc/conf/products/verticalprofile/conf_instantaneouspoint.xml:
	  Adding required Configuration-Parts to get the possible to enter the minmum
	  and maximum depth value that should be shown in the charts. issue31

2009-10-23  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/timeseries_mesh/timeseries_step_07_feed.xml:
	  The Timeperiod of the Modeldata has changed. so it was nessessarry to change
	  the Unittest to get propper Results

2009-10-23  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties:
	  Some Queryimproofments done. Inner-Selects has been removed where it was possible.

2009-10-23  Tim Englich  <tim.englich@intevation.de>

	Issue 3: Artifact: Storing the internal state instead of results

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java (describe),
	  src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java (describe),
	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java (describe),
	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java (describe):
	  Use super.identifier as uuid. issue3

2009-10-23  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/verticalprofile/verticalprofile_step_04_feed.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_03_advance.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_04_out_*.xml,
	  src/test/ressources/timeseries_mesh/timeseries_step_07_out_*.xml,
	  src/test/ressources/horizontalProfile_instantaneouspoint/horizontalprofile_step_06_out_*.xml:
	  Changed the uuid because the new Storage shows that there were different ones in one Testcase

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Put the UUID into the Resultlookup

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java:
	  Removed the Storage of Results in the Object and put them into the ehcache

	* src/main/java/de/intevation/gnv/transition/Transition.java:
	  Removed some needless Methods that were not longer Required

	* src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java
	(advance), src/main/java/de/intevation/gnv/transition/SingleInputTransition.java
	(purifyResult),	src/main/java/de/intevation/gnv/transition/MinMaxTransition.java
	(purifyResult),	src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java
	(extractKVP), src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java
	(describe), src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java
	(describe), src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java
	(describe), src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java
	(describe), src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (uuid):
	Lookup the Results from ehcache and centralize the Lookup to one methode.

2009-10-23  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/queries.properties:
	  Optimized Query horizontalprofile_instantaneouspoint_cruise because it is not warranted
	  that the name of an cruise is set. issue60

2009-10-22  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java
	(extractKVP): Added the possiblility to fetch an further Column with
	the alias Value to display it together with the Coordinatevalues

	* doc/conf/queries.properties:
	  Added the Coordinates to an Measuementpoint to display it.

	* doc/conf/products/verticalprofile/conf_instantaneouspoint.xml:
	  Change TransitionType for displaying Coordinatevalues aditionaly to
	  the Time of an Measurement

2009-10-22  Tim Englich  <tim.englich@intevation.de>

	Issue 40: Instantiation of artifacts slow

	* doc/conf/conf.xml, doc/conf/products/*/conf_*.xml:
	  Split the Configuration of the ArtifactDatabase in several Configurationfiles.
	  For Each Product-Artifact one single File to make it easier to administer the System.

	* src/main/java/de/intevation/gnv/transition/TransitionFactory.java (createTransition),
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (setup),
	  src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java (setup),
	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (setup):
	  Lookup of XML-Attributes was changed from XPath-lookup to direct
	  Access on the fetched Element to speed up the Artifactinstantiation issue40

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (getConfigurationFragment):
	  Read Configuration information for the Productartifact from a separat folder if an xlink:href
	  Attribute exists in tne Configurationnode of the Artifact.
	  This was inserted to speed up the Artifactinstantiation and to split the Configuration
	  in several Configurationfiles that where smallaer issue40
	  Also the lookup of XML-Attributes was changed from XPath-lookup to direct
	  Access on the fetched Element

2009-10-21  Tim Englich  <tim.englich@intevation.de>

	Issue 59: Added relative pathnames to central config document

	* doc/conf/conf.xml:
	  Added relative locations for further required configurationfiles . issue59
	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java (createArtifactContext):
	 Added the prossibility to configure the location of required configurationfiles not absolute. issue59

2009-10-21  Tim Englich  <tim.englich@intevation.de>

	* doc/conf/arcsdeconnectionpool.properties:
	  Added separat ConnectionPoolProperties to this Project.
	* doc/conf/*:
	  Moved ConfigurationFiles from src/test/ressources to doc/conf
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (configurationDir):
	  Changed Configuration Folder to doc/conf

2009-10-20  Tim Englich  <tim.englich@intevation.de>

	* doc/conf:
	Added Folder for the Configuration of the gnv-artifacts.

2009-10-20  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalCrossSectionMeshArtifact):
	  Added Testcase for testing the Workflow for generating VerticalCrossSections.
	* src/test/ressources/queries.properties:
	  Added the required Queries for providing VerticalCrossSection using Meshes.
	* src/test/ressources/conf.xml:
	  Added the Configuration for an VerticalCrossSection using Meshes.
	* src/test/ressources/verticalcrosssection_mesh/verticalcrosssection_step_*.xml:
	  Adding Requestdocuments for testing the Workflow of Generating an VerticalCrossSection.
	* src/main/java/de/intevation/gnv/transition/profile/verticalcrosssection/VerticalCrossSectionOutputTransition.java :
	  Added an OutputTransition for renedering the Data of VerticalCrossSections.
	* src/main/java/de/intevation/gnv/profile/verticalcrosssection/VerticalCrossSectionMeshArtifact.java:
	  Added Class for the Representation of VerticalCrossSection Artifacts into the Project.
	* src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChartFactory.java (createProfileChart):
	  Put Class-Sub for the Chart generation of VerticalCrossSections into the Project.

2009-10-20  Tim Englich  <tim.englich@intevation.de>

	Issue 54: Errors in diagramms for time series in IMIS

	* src/test/ressources/queries.properties:
	Bugfix for TIMESERIESPOINT the first and the last value weren't used
	in the Query which was integrated from the Prototyp to the Project
	ussue54

2009-10-19  Tim Englich  <tim.englich@intevation.de>

	Issue 55: Harmoization of coordinate values for input fields

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe):
	Added uniform Visualization of Single Input-Elements to MinMax-Elements. issue55

2009-10-19  Tim Englich  <tim.englich@intevation.de>

	Issue 56: Error - Behavior of a form without constraint values

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (feed):
	  Catch Exception that the Calling Program could not put no InputData
	  into the feed Request.issue56

2009-10-19  Tim Englich  <tim.englich@intevation.de>

	Issue 19: Validation of date and double values

	* src/main/java/de/intevation/gnv/chart/ChartFactory.java (createDataset),
	  src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java (createDataset):
	  Adding empty Series into Chart to prevent NPE issue 19

2009-10-19  Tim Englich  <tim.englich@intevation.de>

	Issue 35: Wrong date values force the panel to start from beginning

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (putInputData):
	  Correct misspelled Exception-Message as an Result of fixing issue35

2009-10-19  Tim Englich  <tim.englich@intevation.de>

	Issue 50: Adding the layer number for depth information

	* src/test/ressources/queries.properties:
	  Changed the Value of Layer and Depth range visualization of Meshes
	  according to issue50

2009-10-19  Tim Englich  <tim.englich@intevation.de>

	Issue 47: Translation of strings for time series

	* src/main/resources/lang/artifactMessages*.properties:
	  Changed the displayed-Values as defined in issue47
	* src/test/ressources/conf.xml:
	  Changed the Key for the DataName of MIN-Max-Transitions to put a propper Name
	  into the UI-Describeoutput issue47
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe):
	  Added the X-Forms-Group-Element to surround the MinMaxDescibeObject-output to Give the
	  Group of Objects a propper Name issue47
	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java (purifyResult):
	  Added the name of the Data to the MinMaxDescibeObject to put it into the UI-output

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	Issue 53: Changing of strings in parameter panel

	* src/test/ressources/timeseries_mesh/timeseries_step_05_feed.xml:
	  src/test/ressources/conf.xml:
	  src/main/resources/lang/artifactMessages*.properties:
	  Conformation to the tanslation of the MeshObjects  issue53

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	Issue 49: Integration of FIS to Meshes

	* src/test/ressources/queries.properties:
	  There are different FIS in the Relation Median.Mesh so it is
	  nessessary to sepcify which FIS should be selected by using the sourceid
	  issue49
	* src/test/ressources/conf.xml:
	  Adding two further FIS to the Configuration which are based on Meshes.
	  Added the Sourceid to the ModelData issue49
	* src/main/resources/lang/artifactMessages*.properties:
	  Adding the Names of the two new FIS to the  Propertiesfiles issue49

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java (createXYSeries):
	  Adding 5% bigger Valuearea to the Chart according to GT0030.011

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (VerticalProfileOutputTransition):
	  Changed Domainlable for Verticalprofiles according to the Specification GT_0030.005
	* src/test/java/de/intevation/gnv/artifacts/util/DistanceCalculatorTestCase.java (testDistanceCalculator):
	  Added Testcase for the DistanceCalculation
	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java (createXYSeries):
	* src/main/java/de/intevation/gnv/utils/DistanceCalculator.java (calculateDistance):
	  Added Calculation of the Distance in the unit km for Geodetic-Coordinates according to the Specification GT_0030.005
	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java (HorizontalProfileOutputTransition):
	  Changed Domainlable for Horizintalprofiles according to the Specification GT_0030.005

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/queries.properties:
	  The Levelnumber of Meshes will also be visualized in the choose of depth GT_0020.0020

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/conf.xml:
	  Added Coordinate-Values to Title of the TimeseriesDiagramm for Meshes

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java (putInputData):
	  Bugfix ChartValues were not Recalculated after feed was called second Time.

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/conf.xml:
	  Bugfix in MinMaxTransition the Maxvalue was not the correct Value.

2009-10-16  Tim Englich  <tim.englich@intevation.de>

	Issue 38: Horizontal profiles: Visualization of distances in km

	* src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java (convert2DisplayCoordinate):
	  Added Transformation from WKT-Coordinate Reperesentation to BSH-Coordinate Representation. issue38

2009-10-15  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java,
	src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java,
	src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java,
	src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
	src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java,
	src/test/ressources/queries.properties, src/test/ressources/conf.xml:
	Added missing Class Description Values to the Horizontal Profile Charts

2009-10-15  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (getFisName):
	  Added Method for lookup FIS Names
	* src/main/resources/lang/artifactMessages*.properties:
	  Added further Key-Value-Pairs for FIS
	* src/test/ressources/conf.xml:
	  Changed Configuratioon to get the ID of an FIS to the Chartgeneration

2009-10-15  Tim Englich  <tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileMeshPointArtifact):
	  Activate Tests for CSV and Statistics on HorizontalProfiles

	*
	src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java
	(createCSV),
	src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java
	(createCSV):
	Integrated special CSV-Export for HorizontalProfiles

2009-10-14  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java (createXYSeries):
	  Load WKT from ResultSet and calculate Distance to last point.
	* src/test/ressources/queries.properties:
	  Switch Chart-Queries to Spatial-Queries.

2009-10-13  Tim Englich  <tim.englich@intevation.de>

	Issue 33: Improved logging for time-interval queries

	* src/test/ressources/queries.properties,
	  src/test/ressources/conf.xml:
	  Added Parameter-Usage in Time-Interval-Query ISSUE-33

2009-10-13  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/verticalprofile_mesh/verticalprofile_step_*_feed.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_*_feed.xml:
	  Switched to Szenario where it is possible to select Data using the Coordinate.
	* src/test/ressources/conf.xml,
	  src/test/ressources/queries.properties:
	  Switched to SFS-Conformant-Queries in HorzintalProfile- and VerticalProfile-Mesh

2009-10-13  Tim Englich  <tim.englich@intevation.de>

	* src/main/resources/lang/artifactMessages_*.properties:
	Switched to better Description of an Coordinate-Input-Field

	* src/test/ressources/timeseries_mesh/timeseries_*_feed.xml:
	Switched to Szenario where it is possible to select Data using the Coordinate.

	* src/test/ressources/queries.properties, src/test/ressources/conf.xml:
	Switched to SFS-Conformant-Queries in Timeseries-Mesh

	* pom.xml:
	Added dependency to JTS 1.9

	* src/main/java/de/intevation/gnv/utils/exception/ValidationException.java
	(ValidationException), src/main/java/de/intevation/gnv/utils/InputValidator.java
	(getPointValue), src/main/java/de/intevation/gnv/transition/TransitionBase.java
	(prepareInputData4RegionDBQuery):
	Added the Support for specialized Handling of InputValues of type Coordinate.

	* src/main/java/de/intevation/gnv/transition/CoordinateSelectionTransition.java:
	Added Transition for the Support of Coordinateinput handling.

2009-10-12	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java:
	Closed small file descriptor leak.

2009-10-09  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/**/*.java Edited:
	Code Formatting and Cleanup.

2009-10-09  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	  Add Parameters to the Queries to select only the Dates where
	  the Parameters has been measured.
	* src/test/ressources/conf.xml Edited:
	  Set that the ParameterIds should be used in the Query of the Dates.

2009-10-07	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	RELEASE 0.1

	* Changes, NEWS: Summarized changes.

2009-10-06  Tim Englich  <tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java (HorizontalProfileOutputTransition) Edited :
	  Switch Lable-Value for Domain-Axis.
	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java (getRessource) Edited:
	  Added missing Import
	* src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java (advance) Edited:
	  Added i18n Support
	* src/main/resources/lang/artifactMessages*.properties Edited:
	  Added some missing RessourceValues

2009-10-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_04_out_csv.xml,
	  src/test/ressources/conf.xml,
	  src/test/ressources/timeseries_mesh/timeseries_step_07_out_csv.xml,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_06_out_csv.xml,
	  src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_08_out_csv.xml,
	  src/test/ressources/verticalprofile/verticalprofile_step_04_out_csv.xml:
	  s@test/plain@text/plain@g to correct MIME type of CSV export

2009-10-06	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/ressource/*.properties:
	Deleted.

	* src/main/resources/lang/*.properties: Re-inserted here. Maven now
	includes them in the jar package.

	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java:
	Make code more robust. TODO: We need a better implementation here.

	* Changelog -> ChangeLog: To make eclipse happy. Unified changelog style.

	* pom.xml: xmllint-ed and set encoding of filtered resources to UTF-8

2009-10-06  Tim Englich  <tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	  Bugfix in Query for getting Data for the Output.
	  Now the Values will be sorted Correcly. Timevalue
	  has been removed from the Query because it is not a
	  Parameter which could be choosen from the User.
	  Also dummies for XCOORD-Value and YCOORD-Value integrated so
	  that is now Possible to visualize the Profile
	  gnv/issue21

2009-10-05	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/ressource/artifactMessages*.properties Edited:
	  Added further Ressourec Values.
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileInstantaneousPointArtifact) Edited:
	  Changed ArtifactName to real FIS.
	* src/test/ressources/timeseries_mesh/timeseries_step_01_feed.xml Edited:
	  Changed Product-Name from timeSeriesMesh to timeSeries to provide a General-Naming-Structure
	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (setup) Edited,
	  src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java Edited,
	  src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java Edited:
	  Added Configurationsupport for the Labeling Data. Now it is possible do define the
	  value-names in the Configurationfile.
	* src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_03_feed.xml Edited,
	  src/test/ressources/verticalprofile_instantaneouspoint/verticalprofile_step_02_feed.xml Edited,
	  src/test/ressources/queries.properties Edited:
	  Changed the Queries for the VerticalProfileInstantaneusPoint to the FIS-Query Mode.
	  This Mode was send by Mr. Schulz-Ohlberg.
	* src/test/ressources/conf.xml:
	  Changed the Workflow for the VerticalProfileInstantaneusPoint to the FIS-Query Mode.
	  This Mode was send by Mr. Schulz-Ohlberg.
	  Also Added the support for value-names to the Configuration of VerticalProfileInstantaneusPoint.

2009-10-05	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/ressource/artifactMessages_en.properties Renamed:
	  Renamed from artifactMessages_en_EN.properties to artifactMessages_en.properties to get a
	  propper support for PreferedLocale
	* src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java (getRessource) Edited,
	* src/test/java/de/intevation/gnv/artifacts/ressource/RessourceFactoryTestCase.java (setUp) Edited,
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe) Edited,
	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (createSelectBox) Edited:
	  Changed Method Signature from Locale to PreferedLocale[] to put all Useable Languages to
	  the RessourceFactory

2009-10-02	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/ressource/RessourceFactoryTestCase.java Added:
	  TestCase for Testing the RessourceFactory

	* src/main/java/de/intevation/gnv/artifacts/ressource/artifactMessages*.properties Added,
	  src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java Added:
	  Added Factory and Propertiesfiles for getting the localized Values

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Edited,
	  src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java Edited,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
	  src/main/java/de/intevation/gnv/transition/Transition.java Edited,
	  src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Edited,
	  src/main/java/de/intevation/gnv/transition/OutputTransition.java Edited,
	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited,
	  src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java Edited,
	  src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	  LanguageSupport Integrated

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (createCallContext) Edited:
	  Extracted Method and Put CallMeta with Language German to the CallContext. Otherwise
	  TestCase will produce NPEs.
	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java Edited:
	  Added Real CallMeta to the Method for usage in Artifacts. Otherwise
	  TestCase will produce NPEs.
	* src/test/ressources/horizontalProfile_mesh/horizontalprofile_step_02_feed.xml Edited,
	  src/test/ressources/timeseries_mesh/timeseries_step_02_feed.xml Edited,
	  src/test/ressources/verticalprofile_mesh/verticalprofile_step_02_feed.xml Edited,
	  src/test/ressources/conf.xml Edited:
	  Changed som Identifiers for Localisation.

2009-10-02	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/conf.xml Edited:
	  Added the Configuration of the Horizontal-Profile.Mesh.
	  Also Edited the Workflowq for HorizontalProfile-Instantaneouspoint and
	  Put three n ew FIS into the Configuration which represents HorizontalProfile-Instantaneouspoint.
	* src/test/ressources/horizontalProfile_instantaneouspoint/*.xml Edited,
	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileInstantaneousPointArtifact) Edited:
	  Edited the Workflowlogic given by new Specification of the BSH.
	* src/test/ressources/horizontalProfile_mesh/*.xml Added:
	  The Request for do an Workflow for an HorizontalProfile-Mesh
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileMeshPointArtifact) Edited:
	  Added TestCase for HorizontalProfiles of Type Mesh.
	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java (getMeta) Edited:
	  Added new Method which is defined in the implemented Interface.
	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid) Edited:
	  Added the Validation of InputValues from Type AttributeName which should represent
	  an QueryValue of Type String which must not put into "'".
	* src/main/java/de/intevation/gnv/transition/profile/horizontal/NorthSouthEastWestTransition.java Added:
	  Transition to provide the possibility of choosing the axis of an Grid that should be used.
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (dataMultiSelect) Edited:
	  Changed from private to protected so that this mMeber could be accessed by within extending Classes.
	* src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileMeshArtifact.java Added:
	  Class for the Representation of Horizontal Profiles for the Type Mesh.
	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java (HorizontalProfileChartFactory) Edited:
	  Changed PlotOrientation so that the Profile is displayed correctly.
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (advance) Edited:
	  Added Log-Message for better Workflowanalyzis.

2009-10-01	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java,
	src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	src/main/java/de/intevation/gnv/utils/ArtifactFactoryUtilities.java,
	src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java,
	src/main/java/de/intevation/gnv/transition/MinMaxTransition.java,
	src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java,
	src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java:
	Removed needless imports.

	* src/main/java/de/intevation/gnv/utils/InputValidator.java:
	Import org.apache.commons.validator.GenericValidator instead of
	absolute usage in methods.

2009-09-30	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	  Added the Queries for HorizontalProfiles of InstantaneousPoints.
	* src/test/ressources/conf.xml Edited:
	  Added the Configuration for HorizontalProfilArtifact for InstantaneousPoints
	* src/test/ressources/horizontalProfile_instantaneouspoint/*.xml Added:
	  Added XML-Requests for the TestCase of HorizontalProfiles of InstantaneousPoints.
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testHorizontalProfileInstantaneousPointArtifact) Edited:
	  Added TestCase for HorizontalProfiles of InstantaneousPoints.

2009-09-30	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid) Edited:
	  Added the Validation for Double-Values.
	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (createChart) Edited:
	  The Name of the Method for generaing Charts has changed.
	* src/main/java/de/intevation/gnv/transition/profile/horizontal/HorizontalProfileOutputTransition.java Added:
	  New outputTransition for HorizontalProfiles
	* src/main/java/de/intevation/gnv/statistics/HorizontalProfileStatistics.java Added:
	  Class which calculates the Statistics for Horizontal Profiles.
	* src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileInstantaneousPointArtifact.java Added,
	* src/main/java/de/intevation/gnv/profile/horizontal/HorizontalProfileArtifact.java Added:
	  Classes which represents HorizontalProfileArtifacts
	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java (plotOrientation) Edited:
	  Added Member for the representation of the Plotorientation to overwrite it in
	  extende Classes
	  Rename Method for generatim the Charts in a common Name.
	* src/main/java/de/intevation/gnv/chart/HorizontalProfileChartFactory.java Added:
	  Class for drawing Horzontal Profiles

2009-09-30	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/test/ressources/conf.xml: s@test/xml@text/xml@g

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (doNextStep) Edited:
	  Add Responsevalidation for feed-Requests.
	* pom.xml Edited:
	  Add required Library ORO to the Dependencies which is required by Commons-Validator
	  to do matchRegexp Requests.
	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid) Edited:
	  Add a Validator for the type Point
	* src/test/ressources/conf.xml Edited:
	  Changed mesh_coordinate from type Integer to type Point

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java (findValueTitle):
	   Key of KeyValueDescribeData is a String. So it is not nessessary to parse the
	   id into an Integer Value.
	   Also some NP-Access removed.

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited:
	  Some Coderedundances refactored.

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	  Bug fixed: Mesh TimeSeries will now Handle Charts with multiple Depth-Values properly.

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/timeseries_mesh/*.xml Added :
	  TestCaseRequests for Timeseries FIS Mesh
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesMeshArtifact) Edited:
	  Add Testcase for Timeseries Mesh

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (check4ExceptionReport) edited:
	  ExceptionTest for Responsdocuments added.
	  UnitTest will now fail if the Artifact delivers an ExceptionReport using the advance Request.

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileMeshArtifact) Edited:
	  Added TestCase for Vertical Profiles for Mesh
	* src/test/ressources/verticalprofile_mesh/*.xml Added:
	  TestCaseRequests for VerticalProfile FIS Mesh

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/utils/InputValidator.java (isInputValid) Edited:
	  Bugfix: Remove leading- and trailingwhitspaces from Date- and Integervalues

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testVerticalProfileArtifact):
	(testVerticalProfileInstantaneousPointArtifact) Edited:
	 Added Testcases for VerticalProfile and VerticalProfile Instantaneouspoint
	* src/test/ressources/verticalprofile_instantaneouspoint/*.xml Added:
	   TestCaseRequests for VerticalProfile Instantaneouspoint
	* src/test/ressources/verticalprofile/*.xml Added:
	  TestCaseRequests for VerticalProfile FIS Marnet

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	  Remove to_date from TimeSeries-Quueries becaus of Changes in the conf.xml-File
	* src/test/ressources/conf.xml Edited:
	  Correct Types for min- and max-Values from Integer to Date
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java (testTimeSeriesArtifact) Edited:
	  Add CallContext to the Tests.
	* src/test/java/de/intevation/gnv/artifacts/TestCallContext.java Add:
	  A CallContext used only in Junit-Tests

2009-09-29	Tim Englich	<tim.englich@intevation.de>

	* pom.xml Edited:
	  Added the dependency to Apache-Commons-Validator Version 1.3.1 which is
	  used for the InputValoue-validation.
	* src/main/java/de/intevation/gnv/utils/InputValidator.java Added :
	  An InputValidator for Validating InputValues.
	  At this Moment only Integer, String and Date is supported.
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (putInputData) Edited:
	  Add the InputValidator to validate the incomming Values from the Clients.

2009-09-28	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/ChartFactory.java (createTimeSeries) Edited:
	  Performanceimprovement: The Loop will be interrupted if the Pointer is bigger than the
	  last Pointer of the Value that must be visualised.

2009-09-28	Tim Englich	<tim.englich@intevation.de>

	* pom.xml Edited:
	  Added the Dependeny to the ehcache-Library
	* src/test/ressources/ehcache.xml Added:
	 The ehcache-Configuration.
	* src/test/ressources/conf.xml Edited:
	  Added the Link to the ehcache-Configuration.
	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java (createArtifactContext) Edited:
	  Added the Initialisation of the CacheManager.

	* src/main/java/de/intevation/gnv/artifacts/cache/CacheFactory.java Added:
	  An Fractoryimplementation for the central access to the Cache.

	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java (purifyResult) Edited,
	* src/main/java/de/intevation/gnv/transition/SingleInputTransition.java (purifyResult) Edited,
	* src/main/java/de/intevation/gnv/transition/Transition.java Edited,
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	  Signature of Methods purifyResults, advanced and feed Changed to put the uuid to the Transition
	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (createChart) Edited:
	  Methodsignatur of getChartResult change for putting the uuid of an Artifact into it
	* src/main/java/de/intevation/gnv/transition/OutputTransition.java (out) Edited,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out) Edited:
	  Method Signature Changed for putting the uuid of an Artifact to the Transition.
	  stored
	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Edited:
	  removed the persitence of the Chartresults and put them into an Cache instance.

2009-09-28	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (getStatisticsGenerator) Edited:
	 Extracted the Instantiation of the Statistics-object to an protected Methode
	 to make it possible that extending Classes could change it.
	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java (getStatisticsGenerator) Edited:
	Overwrite  getStatisticsGenerator to instantiate the VerticalProfileStatistics-
	* src/main/java/de/intevation/gnv/statistics/VerticalProfileStatistics.java Added:
	  Class for Calculating Statistics for VerticalProfiles- The Only thing whisch differs to
	  TimeSeriesStatists is that the XoordinateValue is an double and not an Date-Value
	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java (calculateXOrdinateValue) Edited:
	 Added the Methode calculateXOrdinateValue to this Class to switch is Values in extending Classes.
	* src/main/java/de/intevation/gnv/statistics/Statistics.java (calculateStatistics) Edited:
	  Added methodsignature to Interface for usage in different Implementations of Statistics.

2009-09-28	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java (calculateStatistics) Edited:
	  Bug fixed. Now all Values will be used to calculate the Statistics

2009-09-28	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/conf.xml Edited :
	  Changed the Output-format of Statistics from text/plain to text/xml.

2009-09-28	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java Edited:
	  Moved the calculating-Methods from the Conmstructor to an separat Method.
	  Switched the ResultContainer from Array to Collection
	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out) Edited:
	  Added the Output-Variante for generating Statistics

2009-09-28	Tim Englich	<tim.englich@intevation.de>

	* pom.xml Edited:
	  Added Link to Apache-Commons-Math to get the required Classes for the calculation
	  of Statistics.
	* src/main/java/de/intevation/gnv/statistics/exception/StatisticsException.java Added:
	  Specified ExceptionClass for the Statistics Part of the gnv-artifacts
	* src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java Edited:
	  Remove compileErrors and switch to new Datastructure

2009-09-28	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/statistics/Statistic.java Added ,
	  src/main/java/de/intevation/gnv/statistics/Statistics.java Added ,
	  src/main/java/de/intevation/gnv/statistics/TimeseriesStatistics.java Added:
	  Imported Statistics-Classes from old Project. Revision: 3101 Does not compile

2009-09-25	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/conf.xml Edited:
	  Added with and height Inputparameter to each Chart-OutputMode.

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out) Edited:
	 Added the usage of the Parameters revieved from the client for the ChartRendering

	* src/main/java/de/intevation/gnv/transition/DefaultInputValue.java (DefaultInputValue) (getDefaultValue) Edited ,
	  src/main/java/de/intevation/gnv/transition/InputValue.java (getDefaultValue) Edited:
	  Added the Method getDefaultValue to the Interface for getting the
	  deafultvalue of an Parameter.

	* src/main/java/de/intevation/gnv/transition/DefaultOutputMode.java Edited,
	 src/main/java/de/intevation/gnv/transition/OutputMode.java (getInputParameters) Edited:
	  Added the Method  getInputParameters to the OutputMode for Handling the required Parameters
	  of an OutputMode.

	* src/main/java/de/intevation/gnv/transition/OutputTransition.java (out) Edited:
	  Put the InputParameter recived from the Client to the Methodsignature so that
	  they can be used during the outputprocessing.

	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Edited:
	  Read rquired Outputparameters from the Configuration

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	  Added support for Parameters in OutputNode of Describe-Artifact

2009-09-24	Tim Englich	<tim.englich@intevation.de>

	* pom.xml Edited:
	  Added Library for CSV-Support
	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (out) Edited:
	  Add support for CSV-Export
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (out) Edited:
	  Add Fag on Context for storing the Artifact status after out.

2009-09-24	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java (createSuccessReport) Edited:
	  Added a centraL Method for creating an Successreoprt.
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited:
	  Add ResultReporting to the different Metshods of an Artifact

2009-09-24	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java Edited:
	 Obsolet TODOs removed
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
	  Create Exception Report added
	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java (createExceptionReport) Edited:
	  Method for creating Exceptionreports added.

2009-09-24	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	  Queries formatted so that they can be analysed and extended easier.
	  Some Bugs removed

2009-09-24	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java  Edited,
	  src/main/java/de/intevation/gnv/chart/ChartLabels.java Edited,
	  src/main/java/de/intevation/gnv/chart/ChartFactory.java Edited:
	  Removed obsolet Parameters an Methods.
	  Use the ChartLable to put the DomainAxisLable into the Chart.

	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Edited:
	  Some more Loggingoutput integrated.
	  Some Performanceimprovements done. The ResultData will only be refreshed if
	  the InputValues has changed.
	  Some Refactoring Work done. Move some Members into from extending Classes
	  into this implementation.
	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java Edited,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Edited:
	 Dummywerte fuer Diagrammgenerierung durch Echtwerte ersetzt.
	 Obsolete Uebergabeparameter entfernt.

2009-09-23	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	  Statements for InstantaneousPoint Vertical Profiles added
	* src/test/ressources/conf.xml Edited:
	  Configuration for Vertikal Profiles for InstantaneousPoints added
	* src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileInstantaneousPointArtifact.java (VerticalProfileInstantaneousPointArtifact) Added:
	 New Artifact-Class Reperesenting Artifacts for InstantaneousPoints Creating VerticalProfiles added.

2009-09-23	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (prepareInputData4DateDBQuery) Edited:
	  Bug Fixed, now all Inputvalues of String and Date will be put into the Query

2009-09-23	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java (createXYSeries) Edited:
	  Bug fixed. Now all Values will be Renderd to the Chart
	* src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileMeshArtifact.java Added:
	  Artifact-class for VerticalProfile Mesh added
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
	  Support for StringQuieries and OracleDateQueries added
	* src/test/ressources/queries.properties Edited:
	  Queries for VerticalProfile Mesh integrated
	* src/test/ressources/conf.xml Edited:
	  Artifact for VerticalProfile Mesh integrated

2009-09-22	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	  Added Queries for the Workfloe of collecting the
	  required Information to generate a vertical Profile
	* src/test/ressources/conf.xml Edited:
	  Added the Configuration of the VerticalProfileArtifact
	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java (getCollection) Edited:
	  Some Codrefactoring done for reuse of Functionality in extended Classes.
	* src/main/java/de/intevation/gnv/transition/profile/vertical/VerticalProfileOutputTransition.java Added:
	Outputtransition for the Support of VerticalPropfiles
	* src/main/java/de/intevation/gnv/transition/describedata/KeyValueDescibeData.java (getKey),
	  src/main/java/de/intevation/gnv/transition/describedata/DefaultKeyValueDescribeData.java (getKey) Edietd,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (purifyResult) Edited:
	 Change KEY-Attribute of KeyValueDescribeData from Integer to String for the required
	 Representation of Date-KeyValue-Pairs
	* src/main/java/de/intevation/gnv/profile/vertical/VerticalProfileArtifact.java Added:
	 ArtifactClass for the representation of VerticalProfiles
	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (createSelectBox) Edited:
	  Added support for selected Products in static UI.
	* src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java Added:
	  Factory for producing VerticalCharts added.
	* src/main/java/de/intevation/gnv/chart/ChartFactory.java Edited:
	  Names of Getter for Columns Changed.

2009-09-21	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/queries.properties Edited:
	 Queryie for TimeSeriesMesh added.
	* src/test/ressources/conf.xml Edited:
	  New Artifact representing the TimeSeries-Mesh added to the Configuration.
	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Edited:
	 Inputdata for the Chartgeneration will now be allocated by name and not by position in Transitionorder.
	* src/main/java/de/intevation/gnv/transition/describedata/SingleValueDescribeData.java Added,
	  src/main/java/de/intevation/gnv/transition/describedata/DefaultSingleValueDescribeData.java Added,
	  src/main/java/de/intevation/gnv/transition/SingleInputTransition.java Added:
	  New Class for Representing a single Input Transition
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
	  Added support of usage inputValues none or multiple times in Queries.
	  Added support for SingleInputTransitions in Describe-Output
	* src/main/java/de/intevation/gnv/transition/InputValue.java Edited,
	  src/main/java/de/intevation/gnv/transition/DefaultInputValue.java Edited:
	  An InputValue now is possible to use none or multiple times in Queries.
	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesMeshArtifact.java Added:
	  ArtifactClass for the Representation of an Mesh-Timeseries-Artifact

2009-09-17	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/conf.xml Edited:
	  Database Cleanup Interval set to 5 minutes.

2009-09-17	Tim Englich	<tim.englich@intevation.de>
	* src/test/ressources/conf.xml Edited:
	  Some structurechanges done.

	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java Edited:
	  Fixed Bug supporting UTF-8 Documents properly.
	* src/main/java/de/intevation/gnv/transition/describedata/DefaultKeyValueDescribeData.java Edited,
	* src/main/java/de/intevation/gnv/transition/describedata/KeyValueDescibeData.java Edited,
	 Added Methods for setting and getting the selection-state of this objects.

	* src/main/java/de/intevation/gnv/transition/describedata/DefaultMinMaxDescribeData.java Edited,
	  src/main/java/de/intevation/gnv/transition/describedata/MinMaxDescribeData.java Edited:
	  Added setter for min an max-Values and getters an setters for minName  and maxName

	* src/main/java/de/intevation/gnv/transition/describedata/NamedCollection.java Added,
	  src/main/java/de/intevation/gnv/transition/describedata/NamedArrayList.java Added:
	  Collection ans an Implementation of this Collection for Storing Name of the Collection and if
	  the Values in it are multiselectable.

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java :
	 Static UI-Support and valid SelectionStorage added.
	 I added also an imporvement of the multiselect Methods for Datasets
	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java Edited:
	  Storage of changed Values added

	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited:
	  Static UI Support Added


2009-09-16	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/conf.xml Edited,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe) Edited,
	  src/main/java/de/intevation/gnv/transition/InputValue.java (isMultiselect) Edited,
	  src/main/java/de/intevation/gnv/transition/InputData.java (concartValue) Edited,
	  src/main/java/de/intevation/gnv/transition/DefaultInputValue.java (isMultiselect) Edited,
	  src/main/java/de/intevation/gnv/transition/DefaultInputData.java (concartValue)Edited,
	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (createUserInterface) Edited,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (parseInputData) Edited:
	   Added Multiselectsupport for InputValues

2009-09-16	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java (setup) Edited:
	  Bug Fixed because of Infrastructure Changes in the Artifact-Module

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
	  Put only the last DescribeData to the UI-Output bnecause auf Renderingproblems in the Client

	* src/main/java/de/intevation/gnv/transition/describedata/DefaultKeyValueDescribeData.java Edited,
	  src/main/java/de/intevation/gnv/transition/describedata/DefaultMinMaxDescribeData.java Edited,
	  src/main/java/de/intevation/gnv/transition/describedata/KeyValueDescibeData.java Edited:
	  Made Interface Serializable, add UIDs to the Implementations of the Interface

2009-09-15	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java (createUserInterface) Edited:
	  Integrate UI-Representation for Describe into the FISArtifact.
	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java (createXFormElement) Refactoring,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe) Refactoring:
	  Extract the Element-Creation of XForms Nodes into a Common Class to make them available for
	  other Classes which have to create XForm-Fragments

2009-09-14	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/Transition.java Edited,
	  src/main/java/de/intevation/gnv/transition/InputData.java Edited,
	  src/main/java/de/intevation/gnv/transition/OutputMode.java Edited,
	  src/main/java/de/intevation/gnv/transition/InputValue.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java Edited,
	  src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java Edited,
	  src/main/java/de/intevation/gnv/transition/describedata/DescribeData.java Edited:
	  Make the Interfaces Serializable to make them usable in the Artifactdatabase

2009-09-14	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited,
	  src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Edited,
	  src/main/java/de/intevation/gnv/transition/OutputTransition.java Edited ,
	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	  Refactoring Work depending on Infrastructurchanges in the Artifact-Module

2009-09-10	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited,
	  src/test/ressources/timeseries/timeseries_step_01_feed.xml Edited,
	  src/test/ressources/timeseries/timeseries_step_01_advance.xml Edited,
	  src/test/ressources/conf.xml Edited:
	  TestCase moced from TimeSeriesArtifact to FISArtifact. Used FIS: Marnet

2009-09-10	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/utils/ArtifactXMLUtilities.java Added:
	  Utilities-Class for some XML-Stuff that is only for gnv-artifacts

	* src/main/java/de/intevation/gnv/utils/ArtifactFactoryUtilities.java Added:
	 Factory to Instantiiate an ArtifactFactory (TODO: Should be moved to Artifact-database)

	* src/main/java/de/intevation/gnv/artifacts/fis/product/Product.java Added,
	  src/main/java/de/intevation/gnv/artifacts/fis/product/DefaultProduct.java Added:
	  Interfcaedefinition and Defaultimplementation for the Representation of the different
	  Products in an FIS.

	* src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java Added:
	  Artifact to Repersent an FIS. This Artifact is able to switch between different
	  SubArtifacts for handling the different Products  of an FIS.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	  Refactoring Work done because of changes in the artifact-modules

2009-09-10	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited,
	  src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited:
	  Refactoringwork done because of changes in the artifact-module

2009-09-10	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited:
	  src/test/ressources/conf.xml Renamed:
	  Project Structure changed in artifact-database. So we have to rename
	  the Testconfigurationfile in conf.xml.

	* src/test/ressources/results Added:
	  Integrated Folder for temporal storing Resultfiles of the TestCases

	* src/test/ressources/queries.properties Edited:
	  Further Queries for Testcases integrated
	* src/test/ressources/timeseries/timeseries_step_05_out.xml Added,
	  src/test/ressources/timeseries/timeseries_step_05_feed.xml Added:
	  Integrated the last step of the TimeSeries-Workflow.
	  Now the TestCase is able to render Charts.

	* src/test/ressources/timeseries/timeseries_step_04_feed.xml Edited,
	  src/test/ressources/timeseries/timeseries_step_03_feed.xml Edited:
	  Names of the feed-Parametes changed to the Syntax of BSH-Spelling

2009-09-09	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java:
	  Chart Rendering completed with some Fixes to do
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java:
	  Integrated usage of KeyValueDescibeData
	* src/main/java/de/intevation/gnv/transition/OutputTransition.java (getOutputModes):
	 Errorhandling integrated
	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited,
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	Refactored out-Method from Extending Class

2009-09-09	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/exception/TechnicalChartException.java Added,
	  src/main/java/de/intevation/gnv/chart/ChartFactory.java Edited:
	  Refactoring of the ChartFactory so that it colud be use and it is possible to compile
	  this class.

	* src/main/java/de/intevation/gnv/transition/describedata/KeyValueDescibeData.java Added,
	  src/main/java/de/intevation/gnv/transition/describedata/DefaultKeyValueDescribeData.java Added:
	  Added an new Representation of Describedata for Key Value Pairs using for the Parameter Lists
	  of the Transitions an put it into the Chartgeneration

2009-09-09	Tim Englich	<tim.englich@intevation.de>

	* pom.xml Edited:
	Added JfreeChart Dependency to pom-file

2009-09-09	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/chart/Insets.java Added,
	  src/main/java/de/intevation/gnv/chart/ChartStyle.java Added,
	  src/main/java/de/intevation/gnv/chart/ChartLabels.java Added,
	  src/main/java/de/intevation/gnv/chart/ChartFactory.java Added:
	  Insert Chart-Classes from OLD-Repository Revision: 3101 Does not compile

2009-09-09	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java Added:
	  The specifed OutputTransition for the Product TimeSeries.

	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	  Integration of the OutputModes in the DescriberesultDocument.

	* src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java Added,
	  src/main/java/de/intevation/gnv/transition/OutputTransition.java Added:
	  The Interface and the abstract Basicimplementation of an Transition which
	  can produce different outputs.

	* src/main/java/de/intevation/gnv/transition/DefaultOutputMode.java Added,
	  src/main/java/de/intevation/gnv/transition/OutputMode.java Added:
	  Interfacestructur and Defaultimplementation for the Representation of the
	  Different OutputModes given in an Artifact.

2009-09-09	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java (describe) Edited:
	  Changed DateoutputFormat from German- to Anericanstyle

2009-09-09	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/timeseries/timeseries_step_04_feed.xml Added,
	* src/test/ressources/timeseries/timeseries_step_04_advance.xml Added:
	  Two more ArtifactCommands for the next Step in TimeSeriesArtifactTestCase
	* src/test/ressources/queries.properties Edited:
	  New Queries for timeseries_timeinterval added.
	  Also use KEY ,VALUE, MIN and MAX as Identifiers for the different Columns.
	* src/test/ressources/GNVArtifactsTestCase_Configuration.xml Edited,
	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited:
	   Modified the TimeseriesArtifact and added one further TransitionStep

2009-09-09	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/describedata/DefaultMinMaxDescribeData.java ,
	* src/main/java/de/intevation/gnv/transition/describedata/MinMaxDescribeData.java,
	* src/main/java/de/intevation/gnv/transition/describedata/DescribeData.java Added:
	  Interface Structure and Defaultimplementation for Representing DescribeData of an
	  Transition added. In this Way we are able to switch between different Renderingmethods
	  for descibe.
	* src/main/java/de/intevation/gnv/transition/MinMaxTransition.java Added:
	  Added MinMaxTransition for representing Min-/Max-Value Results in a Tansition
	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited:
	  Integrated Min- / MAX-Value Support for Describe. Also done some Refactoring Work
	  for easy creating Extensions of this Class.
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	  Userinterface Informations were integrated in the wrong Method. Now the
	  Informations are put into the ui-Node

2009-09-08	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/timeseries/timeseries_step_01_advance.xml Edited,
	  src/test/ressources/timeseries/timeseries_step_01_feed.xml Edited,
	  src/test/ressources/timeseries/timeseries_step_02_advance.xml Added,
	  src/test/ressources/timeseries/timeseries_step_02_feed.xml Added,
	  src/test/ressources/timeseries/timeseries_step_03_advance.xml Added,
	  src/test/ressources/timeseries/timeseries_step_03_feed.xml Added,
	  src/test/ressources/GNVArtifactsTestCase_Configuration.xml: Edited,
	  src/test/ressources/queries.properties Added,
	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited:
	  TestCase implemented until Choosing the TimeInetval of an TimeSeries

	  One Entry is Missing

2009-09-08	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
	  src/main/java/de/intevation/gnv/transition/Transition.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited,
	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java Edited,
	  src/test/ressources/GNVArtifactsTestCase_Configuration.xml Edited,
	  src/test/ressources/timeseries/timeseries_step_01_feed.xml Added ,
	  src/test/ressources/timeseries/timeseries_step_01_advance.xml Added :
	  Artifact.advance initial implementiert

2009-09-08	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java Edited,
	  src/main/java/de/intevation/gnv/transition/DefaultInputData.java Added,
	  src/main/java/de/intevation/gnv/transition/InputData.java Added,
	  src/main/java/de/intevation/gnv/transition/exception/TransitionException.java Added,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
	  src/main/java/de/intevation/gnv/transition/Transition.java Edited,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java Edited:
	  Funktionalitat Feed initial bereitgestellt.

2009-09-08	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/GNVArtifactsTestCase_Configuration.xml,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java,
	  src/main/java/de/intevation/gnv/transition/DefaultInputValue.java Edited:
	  Required Inputelements integrated in BasicArtifact-Descibe-Output

2009-09-08	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/transition/DefaultInputValue.java Added,
	  src/main/java/de/intevation/gnv/transition/InputValue.java Added,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java Edited,
	  src/main/java/de/intevation/gnv/transition/Transition.java Edited,
	  src/test/ressources/GNVArtifactsTestCase_Configuration.xml Edited:
	  Constructs for the required Inputvalues for an Transition created

2009-09-08	Tim Englich	<tim.englich@intevation.de>

	* src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java,
	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java:,
	* src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java: Edited
	Added Output for Describe to the Artifactimplementation

2009-09-08	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/GNVArtifactsTestCase_Configuration.xml,
	  src/main/java/de/intevation/gnv/transition/Transition.java (getDescription),
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java (setup), (getDescription):
	  Added Description to a Transition

2009-09-07	Tim Englich	<tim.englich@intevation.de>

	* src/test/ressources/GNVArtifactsTestCase_Configuration.xml,
	  src/test/java/de/intevation/gnv/artifacts/GNVArtifactsTestCase.java: ADD
	  TestClass for GNV-Artifacts an TimeSeriesArtifacs

	* src/main/java/de/intevation/gnv/transition/TransitionFactory.java,
	  src/main/java/de/intevation/gnv/transition/TransitionBase.java,
	  src/main/java/de/intevation/gnv/transition/Transition.java,
	  src/main/java/de/intevation/gnv/transition/DefaultTransition.java: ADD
	  Transitionimplementation for handling the substeps of an Artifact Livecycle

	* src/main/java/de/intevation/gnv/timeseries/TimeSeriesArtifact.java: ADD
	  The Artifact for handling the TimeSeries
	* src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java,
	  src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java,
	  src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java:
	  The Basic-Classes for providing GNC Artifacts. this Classes should be the Fundament
	  for the Implementation of Specialized Artifacts e.g. TimeSeries
	  * pom: Edited Projectreferences to the other GNV-Projects added

2009-09-04	Tim Englich	<tim.englich@intevation.de>

	* src/main/java/de/intevation/gnv/artifacts/ArtifactFactoryBase.java:
	  Implementation of the General ArtifactFactory

2009-09-04	Tim Englich	<tim.englich@intevation.de>

	* pom.xml: Created with maven and put the Moduledependencies into it
	* target | .settings | .project | .classpath: Add to SVN-Ignore
	* Changes | Changelog | NEWS | README | TODO: Added
	* src/**: Added to the Project

http://dive4elements.wald.intevation.org