view flys-backend/ChangeLog @ 498:8ab04de0b879

Importer: Cache the discharge table values, too. flys-backend/trunk@1852 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Sun, 08 May 2011 17:55:49 +0000
parents 67fd63e4ef66
children cce054f27dac
line wrap: on
line source
2011-05-08	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/WstColumnValueKey.java: Deleted
	* src/main/java/de/intevation/flys/importer/IdValueKey.java: Reinserted
	  here in a more generalized form.

	* src/main/java/de/intevation/flys/importer/ImporterSession.java:
	  Cache the discharge table value, too.

	* src/main/java/de/intevation/flys/importer/ImportDischargeTableValue.java:
	  Use the global cache.

2011-05-08	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImporterSession.java:
	  New. Centralized caching in the thread local context. Importing
	  the Elbe leads to OOM because the column values of the
	  WST files where loaded separately for every file.

	* src/main/java/de/intevation/flys/importer/ImportPosition.java,
	  src/main/java/de/intevation/flys/importer/Importer.java,
	  src/main/java/de/intevation/flys/importer/ImportAnnotation.java,
	  src/main/java/de/intevation/flys/importer/ImportWstQRange.java,
	  src/main/java/de/intevation/flys/importer/ImportWst.java,
	  src/main/java/de/intevation/flys/importer/ImportMainValue.java,
	  src/main/java/de/intevation/flys/importer/ImportMainValueType.java,
	  src/main/java/de/intevation/flys/importer/ImportNamedMainValue.java,
	  src/main/java/de/intevation/flys/importer/ImportRiver.java,
	  src/main/java/de/intevation/flys/importer/ImportGauge.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumnValue.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumnQRange.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumn.java,
	  src/main/java/de/intevation/flys/importer/ImportRange.java,
	  src/main/java/de/intevation/flys/importer/ImportDischargeTableValue.java,
	  src/main/java/de/intevation/flys/importer/ImportDischargeTable.java,
	  src/main/java/de/intevation/flys/importer/ImportAttribute.java,
	  src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
	  Adjusted to use the new global context.

2011-05-08	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql: Dropped constraint which
	  forces discharge tables to have a unique time interval
	  for a given gauge and kind.

	  There are AT files (historical Mosel/Perl/Perl/1967-1981.at
	  and Mosel/Perl/1967-1981-1.at) which violate this
	  constraint. Its a technical question to the customer
	  how to handle these cases.

	  To adjust existing databases:

	    ALTER TABLE discharge_tables DROP CONSTRAINT discharge_tables_gauge_id_key;

2011-05-08	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/WstParser.java:
	  There are wst files where column names are not unique.
	  Make them unique by appending (1), (2) and so on.

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

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Import the "HW-Schutzanlagen", too.

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

	Make import of historical discharge tables work.

	* doc/schema/postgresql.sql: Added forgotten column 'description'.

	  !!! You have to drop your database !!!

	* src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
	  src/main/java/de/intevation/flys/model/DischargeTable.java:
	  Add the forgotten description property.

	* src/main/java/de/intevation/flys/importer/AtFileParser.java:
	  Fixed problems with date recognition.

	* src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  Prefix the description of the historical discharge tables 
	  with "Histor.Abflusstafeln".

	* src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
	  Fixed silly programming error.

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

	* src/main/java/de/intevation/flys/importer/AtFileParser.java:
	  Inject 'kind' attribute.

	* src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  Traverse the "Histor.Abflusstafeln" for the historical
	  discharge tables. too. TODO: Store them in the database.

	* src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
	  Added convinience constructor to set the kind of the
	  discharge table.
	  
2011-05-05	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Prefix "Zusätzliche Längsschnitte" with "Zus.Längsschnitte"
	  in description.

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

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Import 'Hochwasser-Marken', too.

	* src/main/java/de/intevation/flys/importer/WstParser.java:
	  Removed superfluous import.

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

	* src/main/java/de/intevation/flys/importer/WstParser.java:
	  Ignore lines that contain km positions which were found
	  before in the same file.

2011-05-05  Ingo Weinzierl <ingo@intevation.de>

	* src/main/java/de/intevation/flys/model/River.java: Added a method that
	  returns all gauges of the river intersected by a given start and end
	  point.

2011-05-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
	  Forgot to fetch peer from result set.

2011-05-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
	  New. Importer model help fetching the database peer.

	* src/main/java/de/intevation/flys/model/TimeInterval.java:
	  Add convinience constructor with start and stop time.

	* src/main/java/de/intevation/flys/importer/AtFileParser.java:
	  Attach a time interval to a discharge table if we find one.

	* src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
	  Store the reference to the importer model of the 
	  time interval of the discharge table.

2011-05-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/AtFileParser.java:
	  Try to extract time ranges from at files.

2011-05-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Parse and store "amtliche Linien" wst files.

2011-05-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Parse and store fixation wst files as well.

2011-05-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Parse the "zusaetzliche Laengsschnitte", too.

	* src/main/java/de/intevation/flys/importer/ImportWst.java:
	  Add getter/setter for column 'kind'.

2011-05-02	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/WstParser.java:
	  Fixed flys/issue19: Do not take km column in wst file as a water level.

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

	* src/main/java/de/intevation/flys/model/Gauge.java: Introduced a 'scale'
	  that is used to adjust the range of min/max W values.

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

	* src/main/java/de/intevation/flys/importer/WstParser.java:
	  Removed superfluous import.

2011-04-20  Ingo Weinzierl <ingo@intevation.de>

	* src/main/java/de/intevation/flys/importer/WstColumnValueKey.java:
	  New. This class is used as distinct key of a WstColumnValue - e.g. as
	  key in a map.

	* src/main/java/de/intevation/flys/importer/ImportWst.java: A
	  WstColumnValue cache is build up while initialization. This cache
	  contains all WstColumnValues that exist in the database.

	* src/main/java/de/intevation/flys/importer/ImportWstColumn.java: New
	  constructor that takes the WstColumnValues cache. It is used to
	  initialize new ImportWstColumnValue objects.

	* src/main/java/de/intevation/flys/importer/ImportWstColumnValue.java:
	  Speedup: A ImportWstColumnValue has a WstColumnValues cache that
	  contains all WstColumnValues existing in the database. This makes it
	  unnecessary to call an sql statement for each WstColumnValue to
	  determine its existence in the database.

2011-04-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql, doc/schema/postgresql-cleanup.sql:
	  Added a view 'wst_value_table' which aggregates the data
	  to build w/q value tables.

	  To update existing databases:

	  BEGIN;
	    CREATE VIEW wst_value_table AS
	        SELECT wcv.position AS position,
	               w,
	               (SELECT q
	                FROM   wst_column_q_ranges wcqr
	                       JOIN wst_q_ranges wqr
	                         ON wcqr.wst_q_range_id = wqr.id
	                       JOIN ranges r
	                         ON r.id = wqr.range_id
	                WHERE  wcqr.wst_column_id = wc.id
	                       AND wcv.position BETWEEN r.a AND r.b) AS q,
	               wc.position                                   AS column_pos,
	               w.id                                          AS wst_id
	        FROM   wst_column_values wcv
	               JOIN wst_columns wc
	                 ON wcv.wst_column_id = wc.id
	               JOIN wsts w
	                 ON wc.wst_id = w.id
	        ORDER  BY wcv.position ASC,
	              wc.position DESC;
	  COMMIT;

2011-04-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/Wst.java:
	  Add forgotten one to many relation Wst -> WstColumn.

2011-04-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportWst.java,
	  src/main/java/de/intevation/flys/importer/WstParser.java:
	  Import of q ranges of wst files was totally broken. :-/
	  You have to reimport all your data.

2011-04-18	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
	  Forgot kind parameter in peer fetching query.
	  
2011-04-18  Ingo Weinzierl <ingo@intevation.de>

	* src/main/java/de/intevation/flys/model/River.java::
	  Added a new method to determine the gauge based on a given start and end
	  point of the river.

2011-04-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql: Added 'position' column to wst_columns
	  to allow order them by there column position in the original
	  wst file.
	
	  Update existing database with:

	    BEGIN;
	      ALTER TABLE wst_columns ADD COLUMN position int;
	      UPDATE wst_columns w SET 
	        position = id - (SELECT min(id) FROM wst_columns WHERE wst_id = w.wst_id);
	      ALTER TABLE wst_columns ADD CONSTRAINT wst_columns_wst_id_position_key
	        UNIQUE (wst_id, position);
	    COMMIT;

	* src/main/java/de/intevation/flys/model/Wst.java,
	  src/main/java/de/intevation/flys/model/WstColumn.java:
	  Adjusted models.

	* src/main/java/de/intevation/flys/importer/ImportWst.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
	  Adjusted importer.

2011-04-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql: Forget ',' in schema.

2011-04-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/Wst.java (determineMinMaxQ): 
	  Fixed index problem when an empty list is returned.

2011-04-15  Ingo Weinzierl <ingo@intevation.de>

	* src/main/java/de/intevation/flys/model/Wst.java: A Wst is now able to
	  return its min and max Q values.

	* src/main/java/de/intevation/flys/model/Gauge.java: A Gauge is now able
	  to return its min and max W values.

2011-04-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql: Added new column 'kind' in
	  discharge tables and wst to distinguish between different
	  kinds like 'Haupt-WST', 'zusaetzliche Laengsschnitte',
	  'amtliche Daten' and so on.

	  Update existing databases with:
	    BEGIN;
	      ALTER TABLE discharge_tables ADD COLUMN kind int NOT NULL DEFAULT 0;
	      ALTER TABLE wsts             ADD COLUMN kind int NOT NULL DEFAULT 0;
	    COMMIT;

	* src/main/java/de/intevation/flys/model/DischargeTable.java
	  src/main/java/de/intevation/flys/model/Wst.java,
	  src/main/java/de/intevation/flys/importer/ImportWst.java,
	  src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
	  Adjusted the models.

2011-04-15  Ingo Weinzierl <ingo@intevation.de>

	* src/main/java/de/intevation/flys/backend/SessionHolder.java: Moved to
	  this module from flys-artifacts. This is necessary to get access to the
	  current session in this module as well.

2011-04-14  Ingo Weinzierl <ingo@intevation.de>

	* src/main/java/de/intevation/flys/model/River.java: Added a method that
	  returns the min and max distance of a river.

2011-04-03	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/**/*.java: Removed trailing whitespace.

2011-03-30  Ingo Weinzierl <ingo@intevation.de>

	Tagged RELEASE 0.1

2011-03-28	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/Range.java:
	  Forgot to save the last change before commit.

2011-03-28	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/Range.java:
	  Added methods to find out if two ranges intersects.

2011-03-24	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/Gauge.java:
	  Added an one to many relation to the discharge tables of a gauge.

2011-03-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	Finished import of WSTs.

	TODO 1: Speed it up! It takes on a high end machine over 7(!)
	        minutes only for the data of the Saar.
	TODO 2: Double precision floating point representations produced
	        by the the parsers leed to unique constraint violations
			in the backend on a second run. So the import is currently
			only working on freshly initialized data bases.
			More consequent working with BigDecimal and some
			rounding may be of help here.

	* src/main/java/de/intevation/flys/model/WstColumnValue.java:
	  Added convinience constructors.

	* src/main/java/de/intevation/flys/importer/ImportWstColumnValue.java:
	  Added getPeer() method.

	* src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
	  Add a list of the ImportWstColumnValues produced by the WST parser.

	* src/main/java/de/intevation/flys/importer/WstParser.java: Add
	  the (km, w) values to the ImportWstColumns.

2011-03-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/WstParser.java:
	  Build models for wsts, wst columns and q ranges and
	  store them in the backend. TODO: store the w values.

	* src/main/java/de/intevation/flys/model/WstQRange.java
	  src/main/java/de/intevation/flys/model/Wst.java,
	  src/main/java/de/intevation/flys/model/Range.java,
	  src/main/java/de/intevation/flys/model/WstColumnQRange.java,
	  src/main/java/de/intevation/flys/model/WstColumn.java:
	  Added convinience constructors.

	* src/main/java/de/intevation/flys/importer/ImportWstQRange.java,
	  src/main/java/de/intevation/flys/importer/ImportWst.java,
	  src/main/java/de/intevation/flys/importer/ImportRiver.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumnQRange.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumn.java,
	  src/main/java/de/intevation/flys/importer/ImportRange.java:
	  Added getPeer() methods.

2011-03-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/WstParser.java:
	  The unit extraction in the WST parser of desktop FLYS
	  is broken! Add a hack here to repair this for our
	  importer. Desktop FLYS needs a fix, too!

2011-03-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/WstParser.java:
	  Ported some stuff ver from WSTSource.java of desktop flys to
	  parse WST files. TODO: create instances of the import models.

	* src/main/java/de/intevation/flys/utils/StringUtil.java:
	  Copied from desktop flys. Used for some string operations
	  in WST parser.

	* src/main/java/de/intevation/flys/importer/Importer.java:
	  Added system property 'flys.backend.importer.dry.run'.
	  Set to true only the parsing is done and no writing
	  to the backend. Default: false.

	*  src/main/java/de/intevation/flys/App.java,
	   src/main/java/de/intevation/flys/model/MainValueType.java:
	   Removed needless imports.

2011-03-22  Ingo Weinzierl <ingo@intevation.de>

	* src/main/java/de/intevation/flys/model/DischargeTableValue.java,
	  src/main/java/de/intevation/flys/model/DischargeTable.java: Added new
	  constructors.

	* src/main/java/de/intevation/flys/importer/AtFileParser.java: New. This
	  parser is used to '*.at' files.

	* src/main/java/de/intevation/flys/importer/ImportGauge.java: Added code to
	  import discharge tables.

	* src/main/java/de/intevation/flys/importer/ImportDischargeTableValue.java,
	  src/main/java/de/intevation/flys/importer/ImportDischargeTable.java: New.
	  Helper models for import discharge tables.

2011-03-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/WstParser.java,
	  src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Added stub for WST parser.

2011-03-22	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportWstQRange.java,
	  src/main/java/de/intevation/flys/importer/ImportWst.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumnValue.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumnQRange.java,
	  src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
	  Added importer helper model stubs for WST imports.
	
2011-03-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	Second part of parsing/storing main values. Should be finished now.

	* src/main/java/de/intevation/flys/importer/ImportNamedMainValue.java,
	  src/main/java/de/intevation/flys/importer/ImportMainValue.java:
	  New. Helper models for import main values,

	* src/main/java/de/intevation/flys/model/MainValue.java,
	  src/main/java/de/intevation/flys/model/NamedMainValue.java:
	  Added convinience constructors.

	* src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  Write main values to backend, too.

	* src/main/java/de/intevation/flys/importer/StaFileParser.java:
	  Build importer models for main values.

	* src/main/java/de/intevation/flys/importer/ImportMainValueType.java:
	  Data was called 'value'. Now it is 'name' to fit the
	  schema.

2011-03-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql: Fixed wrong unique constraint.

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Added some logging when storing gauges.

2011-03-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/Gauge.java:
	  Add forgotten column river_id.

	* src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  Small HQL fix.

2011-03-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/Gauge.java:
	  Added convinience contructor.

	* src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  Fixed getPeer() method.

	* src/main/java/de/intevation/flys/importer/StaFileParser.java:
	  Fixed parsing of STA files.

2011-03-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportRiver.java,
	  src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  Propagate river into storing of gauges.

2011-03-21	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/Importer.java:
	  Added code to store rivers not only annotations.

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Added stub code to write gauges.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	First part of parsing main values.

	* src/main/java/de/intevation/flys/App.java: Commented out
	  creation of dummy rivers.

	* src/main/java/de/intevation/flys/model/NamedMainValues.java:
	  Moved to NamedMainValue.

	* src/main/java/de/intevation/flys/model/NamedMainValue.java:
	  New. Formerly NamedMainValues.

	* src/main/java/de/intevation/flys/model/MainValue.java:
	  New. Forgotten part of the model.

	* src/main/java/de/intevation/flys/model/MainValueType.java:
	  Data is String not BigDecimal

	* src/main/java/de/intevation/flys/model/Range.java: Removed
	  contructor with double arguments. Using BigDecimal now.

	* src/main/java/de/intevation/flys/importer/PegelGltParser.java:
	  Propagate BigDecimal usage.

	* src/main/java/de/intevation/flys/importer/Importer.java:
	  Removed needless import. Added TODO

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Parse the dependencies of the gauges, too.

	* src/main/java/de/intevation/flys/importer/StaFileParser.java:
	  New. Parser for STA files.

	* src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  Call STA file parser.

	* src/main/java/de/intevation/flys/importer/AnnotationsParser.java,
	  src/main/java/de/intevation/flys/importer/ImportRange.java:
	  Uses BigDecimal now.

	* src/main/java/de/intevation/flys/importer/ImportAttribute.java:
	  Fixed wrong type cast in equals.

	* src/main/java/de/intevation/flys/importer/ImportMainValueType.java:
	  New. Helper model for importing main value types.

	* src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
	  Register forgotten MainValue model.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	Store annotations in backend.

	* src/main/java/de/intevation/flys/model/Annotation.java:
	  New convinience constructor.

	* src/main/java/de/intevation/flys/model/River.java:
	  Added toString() method.

	* src/main/java/de/intevation/flys/model/Range.java:
	  Fixed nasty mistake in @OneToOne annotatation.
	  New convinience constructors.

	* src/main/java/de/intevation/flys/importer/ImportPosition.java
	  src/main/java/de/intevation/flys/importer/ImportAnnotation.java,
	  src/main/java/de/intevation/flys/importer/ImportRange.java
	  src/main/java/de/intevation/flys/importer/ImportAttribute.java:
	  Make storing to backend work. It's a bit too slow. :-/

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Fetch peer from backend. Added method to store annotations.
	* src/main/java/de/intevation/flys/importer/Importer.java:
	  Stored annotations into backend. More eloquent SQL exception
	  handling.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/Attribute.java,
	  src/main/java/de/intevation/flys/model/Position.java:
	  Added convinience constructors.

	* src/main/java/de/intevation/flys/importer/ImportPosition.java,
	  src/main/java/de/intevation/flys/importer/ImportAttribute.java:
	  Bound them to there backend peers.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/AnnotationsParser.java:
	  New. Added parser to read *.KM files.

	* src/main/java/de/intevation/flys/importer/ImportPosition.java,
	  src/main/java/de/intevation/flys/importer/PegelGltParser.java,
	  src/main/java/de/intevation/flys/importer/ImportRiver.java,
	  src/main/java/de/intevation/flys/importer/ImportAnnotation.java,
	  src/main/java/de/intevation/flys/importer/ImportRange.java,
	  src/main/java/de/intevation/flys/importer/InfoGewParser.java,
	  src/main/java/de/intevation/flys/importer/ImportAttribute.java:
	  Adjusted to load the annotations from *.KM files.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/ImportPosition.java,
	  src/main/java/de/intevation/flys/importer/ImportRange.java,
	  src/main/java/de/intevation/flys/importer/ImportAttribute.java,
	  src/main/java/de/intevation/flys/importer/ImportAnnotation.java:
	  New helper models for import.

	* src/main/java/de/intevation/flys/importer/PegelGltParser.java,
	  src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  Use new models.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/PegelGltParser.java:
	  New. Parser for PEGEL.GLT files.

	* src/main/java/de/intevation/flys/importer/ImportGauge.java:
	  New. Import model for gauges.

	* src/main/java/de/intevation/flys/utils/DBCPConnectionProvider.java:
	  Removed needless imports.

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Added method to parse the gauges.

	* src/main/java/de/intevation/flys/importer/InfoGewParser.java:
	  Trigger pegel glt file parsing.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/Importer.java:
	  Used thread local pattern to make sharing of session easier.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/Importer.java:
	  Fixed error in HQL statement.

2011-03-17	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/utils/DBCPConnectionProvider.java:
	  Commented out a debug block because it leaks the db password.

2011-03-16	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/importer/InfoGewParser.java:
	  Expose imported rivers.

	* src/main/java/de/intevation/flys/importer/InfoGewParser.java:
	  Store imported rivers into database. Needs testing!

2011-03-16	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
	  Default connection parameters are now overwritable with
	  system properties (defaults in brackets):
	  - user name:     flys.backend.user     (flys)
	  - user password: flys.backend.password (flys)
	  - db dialect:    flys.backend.dialect  (org.hibernate.dialect.PostgreSQLDialect)
	  - db driver:     flys.backend.driver   (org.postgresql.Driver)
	  - db url:        flys.backend.url      (jdbc:postgresql://localhost:5432/flys)

2011-03-16	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
	  Expose createSessionFactory() as public to be usable without
	  a artifact database running.

2011-03-16	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/utils/FileTools.java: 
	  Tools for handling with filenames. Currently there is
	  a repair(File) method with repairs letter case errors
	  which is useful when reading windows filenames on a
	  un*x platform.

	* src/main/java/de/intevation/flys/importer/Importer.java:
	  Standalone app to read data from the file system and
	  store it in a database. Currently it does not store 
	  anything. It only loads info gew files.

	* src/main/java/de/intevation/flys/importer/InfoGewParser.java:
	  Info gew parser.

	* src/main/java/de/intevation/flys/importer/ImportRiver.java:
	  Helper model of a river used produced by parsing the
	  info gew files.

2011-03-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
	  New. SessionFactoryProvider.getSessionFactory() provides a
	  SessionFactory to use the Hibernate O/R mapper for the FLYS backend.

2011-03-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* pom.xml: Added dependency to artifacts-commons to
	  be able to use the global configuration of the artifact database.

2011-03-15	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/App.java: Wire all POJOs
	  to corresponding factory.

	* src/main/java/de/intevation/flys/model/*.java: Generate
	  all foreign key constraints. TODO: name them correctly
	  because the machine generated names are ugly and do
	  not fit the PostgreSQL names.

	* doc/schema/postgresql.sql: Small quantifier fix in descriptions
	  of wst columns.

2011-03-14	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql: Fixed wrong spelled 
	  column references in foreign keys introduces with
	  last change.

2011-03-14	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* src/main/java/de/intevation/flys/model/*.java: Added
	  column annotations for simple fields. TODO: foreign keys.

2011-03-14	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql, doc/schema/postgresql-cleanup.sql:
	  Fixed inconsistent table names.

	* src/main/java/de/intevation/flys/model/*.java: Added
	  entity and id annotations.

2011-03-14	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql.sql, doc/schema/postgresql-cleanup.sql:
	  Added missing sequences.

	* doc/schema/sqlite.sql: Deleted. Not longer supported.

2011-03-11	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql-cleanup.sql: Forgot to add.

	* src/main/java/de/intevation/flys/App.java: Use
	  Apache Commons DBCP as Hibernate connection provide.

	* src/main/java/de/intevation/flys/model/River.java:
	  Added a constructor with string argument. Set the
	  sequence increment to 1 (eat up 100 at a time before).

	* pom.xml: Added PostgreSQL 8.4 driver as runtime dependency.

2011-03-11	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/postgresql-cleanup.sql: New. Tear down schema
	  for a postgres database.

	* doc/schema/postgresql.sql: Added squence for 
	  auto generating ids in river table. Cleaned up schema.

	* src/main/java/de/intevation/flys/App.java: Simple
	  test app to interact with hibernate. Needs to be removed
	  because its only a toy.

	* src/main/java/de/intevation/flys/utils/DBCPConnectionProvider.java:
	  New. Binds Apache Commons to Hibernate.

	* pom.xml: Added dependencies to log4j, commons dbcp,
	  JPA of hibernate.

	* src/main/java/de/intevation/flys/model/River.java: Added
	  JPA annotations.

	* src/main/java/de/intevation/flys/model/*.java: Replaced
	  Long with Integer because column ids are only four bytes wide.

2011-03-11	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/sqlite.sql, doc/schema/postgresql.sql: Fixed
	  smaller issues in ddl.

	* src/main/java/de/intevation/flys/model/*.java: Added POJOs
	  of to be mapped. TODO: Map them!

	* pom.xml: Added plugin config for hibernate.

2011-03-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* pom.xml: Added dependency (and corresponding repository) to
	  Hibernate Core 3.6.1 Final

2011-03-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* pom.xml, src/**: Created a new empty maven project:
	  $ mvn archetype:create         \
	    -DgroupId=de.intevation.flys \
		-DartifactId=flys-backend

2011-03-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* README: New. Some setup instructions.

	* doc/schema/postgresql.sql: New. Schema converted to PostgreSQL

	* doc/schema/sqlite.sql: Fixed defect foreign key constraints.

2011-03-09	Sascha L. Teichmann	<sascha.teichmann@intevation.de>

	* doc/schema/sqlite.sql: Factorized time intervals out into
	  a separated table.

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

	* contrib/import-kms.py, contrib/import-gew.py: Initial scripts
	to import data into SQLite database. They still need some work.

2011-02-10	Sascha L. Teichmann	<sascha.teichmann@intevation.de>:

	* doc/schema/sqlite.sql: Added initial schema for
	FLYS database.

http://dive4elements.wald.intevation.org