comparison flys-backend/ChangeLog @ 3813:6aeee2250418 pre2.6-2011-12-05

merged flys-backend/pre2.6-2011-12-05
author Thomas Arendsen Hein <thomas@intevation.de>
date Fri, 28 Sep 2012 12:14:54 +0200
parents 7d378970d764
children fe89d6cf55fb
comparison
equal deleted inserted replaced
3812:f788d2d901d6 3813:6aeee2250418
1 2011-11-30 Bjoern Schilberg <bjoern.schilberg@intevation.de>:
2
3 * doc/schema/oracle-spatial.sql: Adjust extent of germany to EPSG:31467
4 (GK3) coordinates.
5
6 2011-11-30 Bjoern Schilberg <bjoern.schilberg@intevation.de>:
7
8 * doc/schema/oracle-spatial.sql: Adjust extent to the extent of germany
9 and srs to 31467 in USER_SDO_GEOM_METADATA.
10
11 2011-11-29 Bjoern Schilberg <bjoern.schilberg@intevation.de>:
12
13 * doc/schema/oracle_create_user.sql: Fixed notation of the table in the
14 alter statement.
15
16 2011-11-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>:
17
18 Fixed flys/issue415
19
20 * doc/schema/oracle.sql: Increased precision of a and b in ranges.
21
22 2011-11-10 Ingo Weinzierl <ingo@intevation.de>
23
24 * src/main/java/de/intevation/flys/model/Building.java,
25 src/main/java/de/intevation/flys/model/Fixpoint.java: Added functions
26 that return a list of Buildings/Fixpoints for a given river.
27
28 2011-11-10 Ingo Weinzierl <ingo@intevation.de>
29
30 * doc/schema/oracle-spatial.sql,
31 doc/schema/postgresql-spatial.sql: Adapted the "kind" field of "lines"
32 relation (Int -> Varchar).
33
34 * doc/schema/oracle-spatial_idx.sql: Added missing spatial index for
35 "lines" relation.
36
37 * src/main/java/de/intevation/flys/model/Line.java: Added a function that
38 returns all lines of a given river.
39
40 2011-11-09 Ingo Weinzierl <ingo@intevation.de>
41
42 * src/main/java/de/intevation/flys/model/Catchment.java: New. A model for
43 the 'catchment' relation.
44
45 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
46 Registered the Catchment model.
47
48 2011-11-09 Ingo Weinzierl <ingo@intevation.de>
49
50 * doc/schema/postgresql-spatial.sql: Synced "hws" relation with oracle
51 schema.
52
53 * src/main/java/de/intevation/flys/model/Hws.java: New. A model for the
54 "hws" relation.
55
56 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
57 Registered the Hws model.
58
59 2011-11-09 Ingo Weinzierl <ingo@intevation.de>
60
61 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
62 Added methods that return information about the database connection used
63 by a concrete SessionFactoryImpl.
64
65 2011-11-09 Ingo Weinzierl <ingo@intevation.de>
66
67 * src/main/java/de/intevation/flys/model/Floodplain.java: Changed the
68 geometry type from MultiPolygon to Polygon.
69
70 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
71 Added a function that returns the db driver of a given
72 SessionFactoryImpl instance.
73
74 2011-11-01 Ingo Weinzierl <ingo@intevation.de>
75
76 * src/main/java/de/intevation/flys/model/RiverAxisKm.java: New. Model class
77 for 'river_axes_km' relation.
78
79 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
80 Added mapping for RiverAxisKm.
81
82 2011-10-25 Bjoern Schilberg <bjoern.schilberg@intevation.de>
83
84 * doc/schema/oracle_create_user.sql:
85 Added explizit TABLESPACE definition for the user.
86
87 2011-10-25 Bjoern Schilberg <bjoern.schilberg@intevation.de>
88
89 * doc/schema/oracle_create_user.sql:
90 Adjusted oracle_create_user.sql script. Added USER SQL snippet to change
91 tablespace to users.
92
93 2011-10-05 Sascha L. Teichmann <sascha.teichmann@intevation.de>:
94
95 * src/main/java/de/intevation/flys/utils/DateGuesser.java:
96 New. Date guesser from desktop FLYS.
97
98 * src/main/java/de/intevation/flys/importer/parsers/WstParser.java:
99 Try to parse the name of a WST column as a date and store
100 the date into the database
101
102 * src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
103 Added code to store the date of the column in the database.
104
105 2011-10-24 Bjoern Schilberg <bjoern.schilberg@intevation.de>
106
107 * doc/schema/postgresql-spatial.sql:
108 Adjusted geometry type for floodplain and hws in AddGeometryColumn.
109
110 2011-10-19 Bjoern Schilberg <bjoern.schilberg@intevation.de>
111
112 * doc/schema/oracle.sql:
113 Added missing views (wst_value_table,wst_w_values,wst_q_values).
114
115 2011-10-18 Bjoern Schilberg <bjoern.schilberg@intevation.de>
116
117 * doc/schema/oracle.sql:
118 Removed all CREATE OR REPLACE TRIGGER statements.
119
120 2011-10-17 Bjoern Schilberg <bjoern.schilberg@intevation.de>
121
122 * doc/schema/oracle.sql:
123 Adjusted NUMBER format for units, positions and cross_section_points tables.
124
125 2011-10-10 Bjoern Schilberg <bjoern.schilberg@intevation.de>
126
127 * doc/schema/oracle.sql:
128 Fix errors.
129
130 2011-10-10 Bjoern Schilberg <bjoern.schilberg@intevation.de>
131
132 * doc/schema/oracle.sql:
133 Adjust oracle schema [I382].
134
135 2011-10-10 Felix Wolfsteller <felix.wolfsteller@intevation.de>
136
137 * src/main/java/de/intevation/flys/importer/ImportWst.java,
138 src/main/java/de/intevation/flys/importer/ImportUnit.java:
139 Removed obsolete imports.
140
141 2011-10-05 Sascha L. Teichmann <sascha.teichmann@intevation.de>:
142
143 * ChangeLog: Added database update statements.
144
145 To update existing databases:
146
147 BEGIN;
148 CREATE SEQUENCE UNITS_ID_SEQ;
149 CREATE TABLE units (
150 id int PRIMARY KEY NOT NULL,
151 name VARCHAR(32) NOT NULL UNIQUE
152 );
153 ALTER TABLE rivers ADD COLUMN wst_unit_id int REFERENCES units(id);
154 INSERT INTO units (id, name) VALUES (nextval('UNITS_ID_SEQ'), 'NN + m');
155 INSERT INTO units (id, name) VALUES (nextval('UNITS_ID_SEQ'), 'NHN + m');
156 UPDATE rivers SET wst_unit_id = (SELECT id FROM units WHERE name = 'NHN + m') WHERE name = 'Elbe';
157 UPDATE rivers SET wst_unit_id = (SELECT id FROM units WHERE name = 'NN + m') WHERE name <> 'Elbe';
158 ALTER TABLE rivers ALTER COLUMN wst_unit_id SET NOT NULL;
159 COMMIT;
160
161 2011-10-05 Ingo Weinzierl <ingo@intevation.de>
162
163 * contrib/dump-schema.sh: New. A small shell script that dumps the
164 database schema of a given database to SQL.
165
166 * pom.xml: Added dependency for hibernate-spatial-oracle stuff.
167
168 2011-10-04 Ingo Weinzierl <ingo@intevation.de>
169
170 * doc/schema/postgresql.sql: Removed unit column from wsts; added a
171 wst_unit_id column to rivers. We decided to support a single elevation
172 model for the whole river.
173
174 * src/main/java/de/intevation/flys/model/River.java: Added a WstUnit
175 column.
176
177 * src/main/java/de/intevation/flys/model/Wst.java: Removed the Unit
178 column.
179
180 * src/main/java/de/intevation/flys/importer/ImportWst.java: Provide a
181 getUnit() method that allows querying the elevation unit for this wst.
182
183 * src/main/java/de/intevation/flys/importer/ImportUnit.java: Removed
184 storeDependencies().
185
186 * src/main/java/de/intevation/flys/importer/ImportRiver.java: Save the
187 Unit of the wst file or a default one into database before all other
188 dependencies as well as the river itself is saved to database.
189
190 2011-10-04 Ingo Weinzierl <ingo@intevation.de>
191
192 * doc/schema/postgresql.sql: Added a "units" table.
193
194 * src/main/java/de/intevation/flys/model/Unit.java: New. Model class that
195 represents a unit.
196
197 * src/main/java/de/intevation/flys/importer/ImportUnit.java: New. Model
198 class that is used to import units.
199
200 * src/main/java/de/intevation/flys/model/Wst.java: A Wst stores a Unit
201 which references "units" table now.
202
203 * src/main/java/de/intevation/flys/importer/parsers/WstParser.java: Set
204 units which have already been parsed on Wsts.
205
206 * src/main/java/de/intevation/flys/importer/ImportWst.java: Added setter
207 method for Units and call storeDependencies() for ImportUnits.
208
209 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
210 Registered new model class Unit.
211
212 2011-10-04 Ingo Weinzierl <ingo@intevation.de>
213
214 flys/issue333 (W-INFO / Berechnung Wasserspiegellage, Zuordnung Bezugspegel)
215
216 * src/main/java/de/intevation/flys/model/River.java: Modified
217 determination of gauge based on a km range. River.determineGauge(double,
218 double) will now return the gauge which matches the start km.
219
220 2011-09-28 Felix Wolfsteller <felix.wolfsteller@intevation.de>
221
222 * src/main/java/de/intevation/flys/utils/StringUtil.java:
223 (wWrap): New method (extracted from WaterlevelSelectState).
224
225 2011-09-28 Felix Wolfsteller <felix.wolfsteller@intevation.de>
226
227 * src/main/java/de/intevation/flys/utils/StringUtil.java:
228 (unbracket): New method (extracted from WaterlevelSelectState).
229
230 2011-09-27 Sascha L. Teichmann <sascha.teichmann@intevation.de>
231
232 * src/main/java/de/intevation/flys/model/CrossSectionLine.java:
233 Moved some logic from cross section demo app to this model.
234
235 2011-09-26 Ingo Weinzierl <ingo@intevation.de>
236
237 * src/main/java/de/intevation/flys/model/CrossSectionTrack.java:
238 Added new function that the nearest CrossSectionTrack of a river to a
239 given kilometer.
240
241 2011-09-23 Bjoern Schilberg <bjoern@intevation.de>
242
243 * doc/schema/postgresql-spatial.sql:
244 Added missing river_axes_km schema.
245 * doc/schema/oracle-spatial.sql:
246 Added missing dem and lines schema.
247
248 2011-09-22 Bjoern Schilberg <bjoern@intevation.de>
249
250 * doc/schema/postgresql-spatial.sql, doc/schema/oracle-spatial.sql:
251 Harmonized oracle and postgresql spatial schema.
252
253 2011-09-22 Bjoern Schilberg <bjoern@intevation.de>
254
255 * doc/schema/oracle-spatial.sql: Harmonized Extent for Saar and Mosel. Some cleanups.
256
257 2011-09-22 Ingo Weinzierl <ingo@intevation.de>
258
259 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
260 Added the possibility to enable JMX (/MBean) support for hibernate. By
261 default, this support is NOT enabled. To enable JMX support for
262 hibernate, set the system property "flys.backend.enablejmx=true".
263
264 2011-09-20 Bjoern Schilberg <bjoern@intevation.de>
265
266 * doc/schema/oracle_create_user.sql: Added right to create views.
267
268 2011-09-20 Bjoern Schilberg <bjoern@intevation.de>
269
270 * doc/schema/oracle-spatial.sql: Generalized oracle spatial schema.
271
272 2011-09-19 Ingo Weinzierl <ingo@intevation.de>
273
274 Tagged RELEASE 2.5
275
276 * Changes: Prepared changes for release.
277
278 2011-09-16 Ingo Weinzierl <ingo@intevation.de>
279
280 * src/main/java/de/intevation/flys/model/DGM.java: Added function to query
281 a DGM by Id.
282
283 2011-09-15 Bjoern Schilberg <bjoern@intevation.de>
284
285 * pom.xml: Removed oracle dependency.
286
287 2011-09-15 Bjoern Schilberg <bjoern@intevation.de>
288
289 * doc/schema/oracle.sql: Added inital oracle schema.
290
291 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
292
293 * doc/schema/oracle-spatial_idx.sql: Added inital oracle-spatial_idx.sql
294 script.
295
296 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
297
298 * doc/schema/oracle-spatial.sql: Deactivated spatial indexes.
299
300 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
301
302 * doc/schema/oracle_create_user.sql: Added inital oracle_create_user.sql
303 script.
304
305 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
306
307 * doc/schema/oracle-spatial.sql: Added schema floodplain.
308
309 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
310
311 * doc/schema/oracle-spatial.sql: Added schema hws.
312
313 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
314
315 * doc/schema/oracle-spatial.sql: Added schema cross_section_tracks.
316
317 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
318
319 * doc/schema/oracle-spatial.sql: Added schema river_axes.
320
321 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
322
323 * doc/schema/oracle-spatial.sql: Added schema fixpoints.
324
325 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
326
327 * doc/schema/oracle-spatial.sql: Added schema buildings.
328
329 2011-09-14 Bjoern Schilberg <bjoern@intevation.de>
330
331 * doc/schema/oracle-spatial.sql: Fixed table river_axes_km.
332
333 2011-09-13 Bjoern Schilberg <bjoern@intevation.de>
334
335 * doc/schema/oracle-spatial.sql: Added initial oracle schemas.
336
337 2011-09-12 Bjoern Schilberg <bjoern@intevation.de>
338
339 * doc/schema/postgresql-spatial.sql: Added initial schemas for
340 Hydrologie/Einzugsgebiete, Hydrologie/HW-Schutzanlagen, Hydrologie/Hydr.
341 Grenzen/Linien, BfG/hauptoeff_*.shp, BfG/MNQ-*.shp,
342 BfG/modellgrenze*.shp, BfG/uferlinie.shp, BfG/vorland_*.shp,
343 Hydrologie/Streckendaten, Hydrologie/UeSG/Berechnung,
344 Hydrologie/UeSG/Messung
345
346 2011-09-02 Ingo Weinzierl <ingo@intevation.de>
347
348 * doc/schema/postgresql-spatial.sql: Removed SERIALs from schema.
349 Auto-Increment is realized through SERIALs now.
350
351 * src/main/java/de/intevation/flys/model/DGM.java: The table for dem has
352 been renamed to 'dem' (before 'dgm').
353
354 2011-09-01 Hans Plum <hans@intevation.de>
355
356 * doc/schema/postgresql-spatial.sql:
357 Hint for unifying table names: dgm -> dem
358
359 2011-09-01 Hans Plum <hans@intevation.de>
360
361 * doc/schema/postgresql-spatial.sql:
362 Added mappings to existing data in file system (based on
363 river Saar); added TODOs for missing tables/mappings
364
365 2011-08-31 Ingo Weinzierl <ingo@intevation.de>
366
367 * doc/schema/postgresql-spatial.sql: New relation for floodplains (german
368 "Talaue").
369
370 * src/main/java/de/intevation/flys/model/Floodplain.java: New. Model class
371 that represents a floodplain.
372
373 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
374 Registered the Floodplain mapping.
375
376 2011-08-31 Ingo Weinzierl <ingo@intevation.de>
377
378 * doc/schema/postgresql-spatial.sql: Added a relation for DGMs. Note, that
379 no data of the DGM is stored in this relation, but only the file path to
380 the DGM file.
381
382 * src/main/java/de/intevation/flys/model/DGM.java: New. This class provides
383 information for a DGM (km range and file path).
384
385 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
386 Registered the DGM.
387
388 2011-08-30 Ingo Weinzierl <ingo@intevation.de>
389
390 * src/main/java/de/intevation/flys/model/CrossSectionTrack.java: New
391 static function to retrieve all CrossSectionTracks of a specific river.
392
393 2011-08-25 Ingo Weinzierl <ingo@intevation.de>
394
395 * src/main/java/de/intevation/flys/utils/FileTools.java: Moved to
396 artifacts-common module.
397
398 * src/main/java/de/intevation/flys/importer/parsers/PegelGltParser.java,
399 src/main/java/de/intevation/flys/importer/parsers/PRFParser.java,
400 src/main/java/de/intevation/flys/importer/parsers/HYKParser.java,
401 src/main/java/de/intevation/flys/importer/parsers/AnnotationsParser.java,
402 src/main/java/de/intevation/flys/importer/parsers/InfoGewParser.java,
403 src/main/java/de/intevation/flys/importer/ImportRiver.java,
404 src/main/java/de/intevation/flys/importer/ImportGauge.java: Adjusted
405 imports of FileTools.
406
407 2011-08-25 Felix Wolfsteller <felix.wolfsteller@intevation.de>
408
409 * src/main/java/de/intevation/flys/model/Gauge.java (getMainValues)
410 (setMainValues):
411 New method and mapping to get/set MainValues of a Gauge. Essentially
412 developed by Sascha L. Teichmann.
413
414 2011-08-22 Ingo Weinzierl <ingo@intevation.de>
415
416 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
417 Reverted the default db dialect to PostgreSQL - this has been changed to
418 PostGIS by accident.
419 Configure the dialect "org.hibernatespatial.postgis.PostgisDialect" to
420 use the PostGIS stuff.
421
422 2011-08-22 Ingo Weinzierl <ingo@intevation.de>
423
424 * src/main/java/de/intevation/flys/model/RiverAxis.java: Added a function
425 that returns the RiverAxis for a given River.
426
427 * src/main/java/de/intevation/flys/backend/SpatialInfo.java: Use the new
428 function of RiverAxis to retrieve the RiverAxis.
429
430 2011-08-18 Ingo Weinzierl <ingo@intevation.de>
431
432 * doc/schema/postgresql-spatial.sql: The PostGIS database schema for
433 FLYS spatial data.
434
435 * src/main/java/de/intevation/flys/model/CrossSectionTrack.java,
436 src/main/java/de/intevation/flys/model/RiverAxis.java,
437 src/main/java/de/intevation/flys/model/Line.java,
438 src/main/java/de/intevation/flys/model/Building.java,
439 src/main/java/de/intevation/flys/model/Fixpoint.java: Model classes that
440 represent FLYS spatial data.
441
442 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
443 Registered model classes.
444
445 * pom.xml: Added dependencies to HibernateSpatial and PostGIS.
446
447 * src/main/java/de/intevation/flys/backend/SpatialInfo.java,
448 contrib/spatial-info.sh: A small demo application that prints out some
449 information about spatial data of specific rivers. Modify the system
450 property -Dflys.backend.spatial.river to get information of a river of
451 your choice.
452
453 2011-07-31 Sascha L. Teichmann <sascha.teichmann@intevation.de>
454
455 Re-enabled Hibernate schema dumps.
456
457 * src/main/java/de/intevation/flys/App.java: Removed old code
458 and use new SessionFactoryProvider infrastructure.
459
460 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
461 Added methods to create db configurations without opening them.
462 Useful for introspection only purposes.
463
464 2011-07-31 Sascha L. Teichmann <sascha.teichmann@intevation.de>
465
466 * pom.xml: Bumped Apache DBCP up to 1.4 to use the same version
467 as artifact database.
468
469 2011-07-28 Sascha L. Teichmann <sascha.teichmann@intevation.de>
470
471 * src/main/java/de/intevation/flys/importer/ImporterSession.java:
472 Make use of the LRU cache from artifacts common.
473
474 2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
475
476 * doc/schema/postgresql.sql: Added missing foreign key contraint on hyks table.
477 To update existing databases:
478
479 ALTER TABLE hyks ADD CONSTRAINT hyks_river_id_fkey FOREIGN KEY (river_id) REFERENCES rivers(id);
480
481 2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
482
483 * src/main/java/de/intevation/flys/importer/parsers/HYKParser.java:
484 Check if zone coordinates in HYKs are swapped and warn the user.
485
486 2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
487
488 * src/main/java/de/intevation/flys/model/HYK.java
489 src/main/java/de/intevation/flys/importer/parsers/HYKParser.java,
490 src/main/java/de/intevation/flys/importer/ImportHYKFormation.java,
491 src/main/java/de/intevation/flys/importer/ImportHYKEntry.java,
492 src/main/java/de/intevation/flys/importer/ImportHYK.java:
493 Various small fixes and some extra logging.
494
495 2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
496
497 * src/main/java/de/intevation/flys/importer/Config.java: New.
498 Central singleton to configure the Importer.
499 Uses system properties by now:
500
501 flys.backend.importer.dry.run: boolean
502 default false. true: don't write to database.
503
504 flys.backend.importer.annotation.types: String
505 default unset. Filename of annotation type classifications.
506
507 flys.backend.importer.skip.gauges: boolean
508 default: false. true: don't parse/store *.glt, *.sta files
509
510 flys.backend.importer.skip.annotations: boolean
511 default: false. true: don't parse/store *.km files
512
513 flys.backend.importer.skip.prfs: boolean
514 default: false. true: don't parse/store *.prf files
515
516 flys.backend.importer.skip.hyks: boolean
517 default: false. true: don't parse/store *.hyk files
518
519 flys.backend.importer.skip.wst: boolean
520 default: false. true: don't parse/store river wst files
521
522 flys.backend.importer.skip.extra.wsts: boolean
523 default: false. true: don't parse/store extra *.zus, *.wst files
524
525 flys.backend.importer.skip.fixations: boolean
526 default: false. true: don't parse/store fixation *.wst files
527
528 flys.backend.importer.skip.official.lines: boolean
529 default: false. true: don't parse/store 'amtliche Linien' *.wst files
530
531 flys.backend.importer.skip.flood.water: boolean
532 default: false. true: don't parse/store 'HW-Marken' *.wst files
533
534 flys.backend.importer.skip.flood.protection: boolean
535 default: false. true: don't parse/store 'HW-Schutzanlagen' *.wst files
536
537 2011-07-18 Ingo Weinzierl <ingo@intevation.de>
538
539 * src/main/java/de/intevation/flys/model/HYKEntry.java: Fixed OrderBy
540 clause.
541
542 2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
543
544 * src/main/java/de/intevation/flys/importer/ImportHYKFormation.java,
545 src/main/java/de/intevation/flys/importer/ImportHYKFlowZone.java,
546 src/main/java/de/intevation/flys/importer/ImportHYKEntry.java,
547 src/main/java/de/intevation/flys/importer/ImportRiver.java,
548 src/main/java/de/intevation/flys/importer/ImportHYK.java:
549 Store HYK data structures to database. Needs testing.
550
551 2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
552
553 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
554 Parse the HYKs from the importer. TODO: Store them in database.
555
556 2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
557
558 * src/main/java/de/intevation/flys/importer/parsers/HYKParser.java:
559 Create data structures while parsing.
560
561 * src/main/java/de/intevation/flys/importer/ImportHYKFormation.java,
562 src/main/java/de/intevation/flys/importer/ImportHYK.java: Added
563 getters/setters to ease model wiring.
564
565 2011-07-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
566
567 * src/main/java/de/intevation/flys/importer/ImportHYKFormation.java,
568 src/main/java/de/intevation/flys/importer/ImportHYKFlowZone.java,
569 src/main/java/de/intevation/flys/importer/ImportHYKEntry.java,
570 src/main/java/de/intevation/flys/importer/ImportHYK.java: New.
571 Importer models for HYKs.
572
573 2011-07-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
574
575 * doc/schema/postgresql.sql: Each entry in a HYK can have
576 an optional 'Peilungsjahr' (measure) not only the whole HYK.
577 To update existing databases:
578 BEGIN;
579 ALTER TABLE hyks DROP COLUMN measure;
580 ALTER TABLE hyk_entries ADD COLUMN measure TIMESTAMP;
581 COMMIT;
582
583 * src/main/java/de/intevation/flys/model/HYKEntry.java,
584 src/main/java/de/intevation/flys/model/HYK.java:
585 Adjusted Hibernate models.
586
587 2011-07-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
588
589 * src/main/java/de/intevation/flys/importer/parsers/HYKParser.java:
590 Added callback mechanism and recursive file search like in the PRF parser.
591 All BfG-HYK files seem to parse correctly now. TODO: Build the data structures.
592
593 * src/main/java/de/intevation/flys/importer/parsers/PRFParser.java:
594 Added x.canRead() before accepting files for parsing.
595
596 2011-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
597
598 * src/main/java/de/intevation/flys/importer/parsers/HYKParser.java:
599 Initial version of the HYK parser. Not ready, yet.
600
601 * src/main/java/de/intevation/flys/importer/ImportHYKFlowZoneType.java:
602 Importer model for HYK flow zone types.
603
604 2011-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
605
606 * doc/schema/postgresql.sql: Argh! Added distance_{vl|hf|vr} to
607 wrong table.
608 To update existing databases:
609 BEGIN;
610 ALTER TABLE hyk_entries DROP COLUMN distance_vl;
611 ALTER TABLE hyk_entries DROP COLUMN distance_hf;
612 ALTER TABLE hyk_entries DROP COLUMN distance_vr;
613 ALTER TABLE hyk_formations ADD COLUMN distance_vl NUMERIC NOT NULL;
614 ALTER TABLE hyk_formations ADD COLUMN distance_hf NUMERIC NOT NULL;
615 ALTER TABLE hyk_formations ADD COLUMN distance_vr NUMERIC NOT NULL;
616 COMMIT;
617
618 * src/main/java/de/intevation/flys/model/HYKFormation.java,
619 src/main/java/de/intevation/flys/model/HYKEntry.java:
620 Adjusted Hibernate models.
621
622 2011-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
623
624 * src/main/java/de/intevation/flys/utils/FileTools.java: Added method
625 walkTree() to traverse a directory tree. To be reused in HYK parser.
626
627 * src/main/java/de/intevation/flys/importer/parsers/PRFParser.java:
628 Uses the FileTools.walkTree() method now to find all PRF file.
629
630 2011-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
631
632 * doc/schema/postgresql.sql: Added missing columns.
633 To update existing databases:
634 BEGIN;
635 ALTER TABLE hyks ADD COLUMN measure TIMESTAMP;
636 ALTER TABLE hyk_entries ADD COLUMN distance_vl NUMERIC NOT NULL;
637 ALTER TABLE hyk_entries ADD COLUMN distance_hf NUMERIC NOT NULL;
638 ALTER TABLE hyk_entries ADD COLUMN distance_vr NUMERIC NOT NULL;
639 COMMIT;
640
641 * src/main/java/de/intevation/flys/model/HYKEntry.java,
642 src/main/java/de/intevation/flys/model/HYK.java:
643 Adjusted Hibernate models.
644
645 2011-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
646
647 * src/main/java/de/intevation/flys/importer/parsers/*.java:
648 New package. Moved the file parsers (*.gew, *.sta, *.at, *.glt, *.prf, *.km, *.wst)
649 into this package.
650
651 * src/main/java/de/intevation/flys/importer/*.java: Adjusted the imports.
652
653 2011-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
654
655 * src/main/java/de/intevation/flys/model/HYKFormation.java,
656 src/main/java/de/intevation/flys/model/HYKEntry.java,
657 src/main/java/de/intevation/flys/model/HYKFlowZone.java,
658 src/main/java/de/intevation/flys/model/HYKFlowZoneType.java,
659 src/main/java/de/intevation/flys/model/HYK.java: New. The hibernate models
660 for the HYK structures.
661
662 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
663 Registered new models.
664
665 * src/main/java/de/intevation/flys/model/CrossSection.java: Added
666 'order by' annotation for fetching the cross section lines.
667
668 2011-07-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
669
670 * doc/schema/postgresql.sql: Added structures for HYKs "Hydraulische Kenngroessen"
671 To update existing databases:
672
673 BEGIN;
674 CREATE SEQUENCE HYKS_ID_SEQ;
675 CREATE TABLE hyks (
676 id int PRIMARY KEY NOT NULL,
677 river_id int NOT NULL,
678 description VARCHAR(256) NOT NULL
679 );
680
681 CREATE SEQUENCE HYK_ENTRIES_ID_SEQ;
682 CREATE TABLE hyk_entries (
683 id int PRIMARY KEY NOT NULL,
684 hyk_id int NOT NULL REFERENCES hyks(id),
685 km NUMERIC NOT NULL,
686 UNIQUE (hyk_id, km)
687 );
688
689 CREATE SEQUENCE HYK_FORMATIONS_ID_SEQ;
690 CREATE TABLE hyk_formations (
691 id int PRIMARY KEY NOT NULL,
692 formation_num int NOT NULL DEFAULT 0,
693 hyk_entry_id int NOT NULL REFERENCES hyk_entries(id),
694 top NUMERIC NOT NULL,
695 bottom NUMERIC NOT NULL,
696 UNIQUE (hyk_entry_id, formation_num)
697 );
698
699 CREATE SEQUENCE HYK_FLOW_ZONE_TYPES_ID_SEQ;
700 CREATE TABLE hyk_flow_zone_types (
701 id int PRIMARY KEY NOT NULL,
702 name VARCHAR(50) NOT NULL UNIQUE,
703 description VARCHAR(256)
704 );
705
706 CREATE SEQUENCE HYK_FLOW_ZONES_ID_SEQ;
707 CREATE TABLE hyk_flow_zones (
708 id int PRIMARY KEY NOT NULL,
709 formation_id int NOT NULL REFERENCES hyk_formations(id),
710 type_id int NOT NULL REFERENCES hyk_flow_zone_types(id),
711 a NUMERIC NOT NULL,
712 b NUMERIC NOT NULL,
713 CHECK (a <= b)
714 );
715 COMMIT;
716
717 2011-07-13 Sascha L. Teichmann <sascha.teichmann@intevation.de>
718
719 * pom.xml: Bumped Hibernate up to 3.6.5.
720
721 2011-07-11 Sascha L. Teichmann <sascha.teichmann@intevation.de>
722
723 * src/main/java/de/intevation/flys/utils/FileTools.java: Argh!
724 Forget to call the file hashing so only the file lengths were
725 compared.
726
727 2011-07-11 Sascha L. Teichmann <sascha.teichmann@intevation.de>
728
729 * src/main/java/de/intevation/flys/utils/FileTools.java:
730 Added a class HashedFile to compare files by there length
731 and a message digest. Digest can be set with system property
732 "flys.backend.file.cmp.digest" and defaults to MD5. Useful to
733 detect file duplicates.
734
735 * src/main/java/de/intevation/flys/importer/PRFParser.java: Added
736 method prfAccept(File) to callback to check if a found PRF file
737 should be parsed. Useful to prevent parsing file duplicates.
738
739 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
740 Use the HashedFile and the PRFParser.Callback to prevent
741 parsing of PRF duplicates.
742
743 2011-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de>
744
745 * doc/schema/postgresql.sql: Misspelled sequence.
746 To update existing databases:
747
748 DROP SEQUENCE CROSS_SECTION_LINES_SEQ;
749 CREATE SEQUENCE CROSS_SECTION_LINES_ID_SEQ;
750
751 * src/main/java/de/intevation/flys/importer/ImportCrossSection.java:
752 Added some logging because importing is slow.
753
754 * src/main/java/de/intevation/flys/importer/ImportCrossSectionLine.java:
755 Prevent NPE if a cross section line from db has no points.
756
757 2011-07-08 Sascha L. Teichmann <sascha.teichmann@intevation.de>
758
759 Parse all PRFs in all subfolders of a river and store them
760 as cross sections into the database. Needs testing!
761
762 * src/main/java/de/intevation/flys/importer/ImportCrossSection.java,
763 src/main/java/de/intevation/flys/importer/ImportCrossSectionLine.java:
764 New. Importer models for cross sections.
765
766 * src/main/java/de/intevation/flys/importer/XY.java:
767 New. Made top level class from inner PRFParser.XY.
768
769 * src/main/java/de/intevation/flys/importer/PRFParser.java:
770 Moved out XY class. Renamed callback.
771
772 * src/main/java/de/intevation/flys/model/CrossSection.java,
773 src/main/java/de/intevation/flys/model/CrossSectionLine.java,
774 src/main/java/de/intevation/flys/model/CrossSectionPoint.java,
775 src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
776 Added convinience constructors.
777
778 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
779 Parse and store cross sections into database.
780
781 2011-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de>
782
783 * doc/schema/postgresql.sql: Introduced a new table cross_section_line
784 holding the km of a set of points.
785
786 * src/main/java/de/intevation/flys/model/CrossSectionLine.java:
787 New. Model for a single line of a "Querprofil".
788
789 * src/main/java/de/intevation/flys/model/CrossSection.java: Removed
790 'km' and 'points' they are part of the line now.
791
792 * src/main/java/de/intevation/flys/model/CrossSectionPoint.java:
793 They reference to the containing line now.
794
795 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
796 Registered new model.
797
798 To update existing databases:
799 BEGIN;
800 DROP SEQUENCE CROSS_SECTIONS_ID_SEQ;
801 DROP SEQUENCE CROSS_SECTION_POINTS_ID_SEQ;
802 DROP TABLE cross_section_points;
803 DROP TABLE cross_sections;
804 CREATE SEQUENCE CROSS_SECTIONS_ID_SEQ;
805 CREATE TABLE cross_sections (
806 id int PRIMARY KEY NOT NULL,
807 river_id int NOT NULL REFERENCES rivers(id),
808 time_interval_id int REFERENCES time_intervals(id),
809 description VARCHAR(256)
810 );
811 CREATE SEQUENCE CROSS_SECTION_LINES_SEQ;
812 CREATE TABLE cross_section_lines (
813 id int PRIMARY KEY NOT NULL,
814 km NUMERIC NOT NULL,
815 cross_section_id int NOT NULL REFERENCES cross_sections(id),
816 UNIQUE (km, cross_section_id)
817 );
818 CREATE SEQUENCE CROSS_SECTION_POINTS_ID_SEQ;
819 CREATE TABLE cross_section_points (
820 id int PRIMARY KEY NOT NULL,
821 cross_section_line_id int NOT NULL REFERENCES cross_section_lines(id),
822 col_pos int NOT NULL,
823 x NUMERIC NOT NULL,
824 y NUMERIC NOT NULL,
825 UNIQUE (cross_section_line_id, col_pos)
826 );
827 COMMIT;
828
829 2011-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de>
830
831 * doc/schema/postgresql.sql: Dropped constraint that enforces the
832 uniqueness of km and river. This is violated because there are
833 more than one sounding in different year at the same km of a river.
834 Added column 'description' to the cross section table to make it
835 human readable.
836
837 To update existing databases:
838
839 ALTER TABLE cross_sections DROP CONSTRAINT cross_sections_km_key;
840 ALTER TABLE cross_sections ADD COLUMN description VARCHAR(256);
841
842 * src/main/java/de/intevation/flys/model/CrossSection.java:
843 Added the description column to the Hibernate model.
844
845 2011-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de>
846
847 * doc/schema/postgresql.sql: Dropped constraint that enforces the
848 uniqueness of x in a "Querprofil-Spur". There are vertical lines
849 in the soundings so this constraint is violated.
850
851 To update existing databases:
852
853 ALTER TABLE cross_section_points DROP CONSTRAINT cross_section_points_cross_section_id_key2;
854
855 2011-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de>
856
857 * src/main/java/de/intevation/flys/importer/PRFParser.java:
858 Added a callback to be called from parsePRFs() if
859 a PRF was parsed successfully. Useful to scan whole
860 sub directories for PRF files.
861
862 2011-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de>
863
864 * src/main/java/de/intevation/flys/importer/PRFParser.java:
865 Extract the year of sounding from file names. If not found
866 from the name of th containing directory. Description is made
867 of file name and parent directory file name.
868
869 2011-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de>
870
871 * src/main/java/de/intevation/flys/importer/PRFParser.java:
872 Extracted the data. All BfG PRFs are parsed correctly, now.
873
874 2011-07-07 Sascha L. Teichmann <sascha.teichmann@intevation.de>
875
876 * src/main/java/de/intevation/flys/importer/PRFParser.java:
877 Extract km from lines. TODO: extract data.
878
879 2011-07-06 Sascha L. Teichmann <sascha.teichmann@intevation.de>
880
881 * src/main/java/de/intevation/flys/importer/PRFParser.java: New.
882 Parser for PRF files. TODO extra data and station from data lines.
883
884 2011-07-06 Sascha L. Teichmann <sascha.teichmann@intevation.de>
885
886 * src/main/java/de/intevation/flys/model/Point3d.java: Deleted.
887 Not needed (braindead).
888
889 * src/main/java/de/intevation/flys/model/CrossSectionPoint.java:
890 Directly store the x/y values now.
891
892 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
893 Removed registration of Point3d.
894
895 To update existing databases:
896
897 BEGIN;
898 ALTER TABLE cross_section_points DROP COLUMN point3d_id;
899 DROP SEQUENCE POINTS3D_ID_SEQ;
900 DROP TABLE points3d;
901 ALTER TABLE cross_section_points ADD COLUMN x NUMERIC NOT NULL;
902 ALTER TABLE cross_section_points ADD COLUMN y NUMERIC NOT NULL;
903 ALTER TABLE cross_section_points ADD CONSTRAINT
904 cross_section_points_cross_section_id_key2 UNIQUE (cross_section_id, x);
905 COMMIT;
906
907 2011-07-06 Sascha L. Teichmann <sascha.teichmann@intevation.de>
908
909 * src/main/java/de/intevation/flys/model/CrossSection.java,
910 src/main/java/de/intevation/flys/model/CrossSectionPoint.java:
911 New. Hibernate models for cross-sections and their forming points.
912
913 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
914 Registered the new models.
915
916 2011-07-06 Sascha L. Teichmann <sascha.teichmann@intevation.de>
917
918 * src/main/java/de/intevation/flys/model/Point3d.java: New. point3d model
919 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
920 Registered point3d model.
921
922 2011-07-06 Sascha L. Teichmann <sascha.teichmann@intevation.de>
923
924 * doc/schema/postgresql.sql: Add relations for cross sections.
925 To update existing databases:
926 BEGIN;
927
928 CREATE SEQUENCE CROSS_SECTIONS_ID_SEQ;
929 CREATE TABLE cross_sections (
930 id int PRIMARY KEY NOT NULL,
931 km NUMERIC NOT NULL,
932 river_id int NOT NULL REFERENCES rivers(id),
933 time_interval_id int REFERENCES time_intervals(id),
934 UNIQUE (km, river_id)
935 );
936
937 CREATE SEQUENCE POINTS3D_ID_SEQ;
938 CREATE TABLE points3d (
939 id int PRIMARY KEY NOT NULL,
940 x NUMERIC NOT NULL,
941 y NUMERIC NOT NULL,
942 z NUMERIC NOT NULL
943 );
944
945 CREATE SEQUENCE CROSS_SECTION_POINTS_ID_SEQ;
946 CREATE TABLE cross_section_points (
947 id int PRIMARY KEY NOT NULL,
948 cross_section_id int NOT NULL REFERENCES cross_sections(id),
949 point3d_id int NOT NULL REFERENCES points3d(id),
950 col_pos int NOT NULL,
951 UNIQUE (cross_section_id, point3d_id, col_pos),
952 UNIQUE (cross_section_id, col_pos)
953 );
954
955 COMMIT;
956
957 2011-06-28 Ingo Weinzierl <ingo@intevation.de>
958
959 Tagged RELEASE 2.4
960
961 2011-06-27 Ingo Weinzierl <ingo@intevation.de>
962
963 * Changes: Prepared changes for the upcoming release.
964
965 2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de>
966
967 * src/main/java/de/intevation/flys/importer/AnnotationsParser.java,
968 src/main/java/de/intevation/flys/importer/AnnotationClassifier.java,
969 src/main/java/de/intevation/flys/importer/AtFileParser.java,
970 src/main/java/de/intevation/flys/importer/ValueKey.java,
971 src/main/java/de/intevation/flys/importer/WstParser.java:
972 Removed trailing whitespace.
973
974 2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de>
975
976 * src/main/java/de/intevation/flys/importer/AnnotationClassifier.java:
977 Removed superfluous imports.
978
979 2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de>
980
981 * src/main/java/de/intevation/flys/model/River.java:
982 Added a method maxOverlap to determine the gauge which has
983 the max common length to a given interval. This is for
984 numerical stability in slightly overlapping gauge ranges.
985
986 2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de>
987
988 * src/main/java/de/intevation/flys/model/River.java: When
989 looking up a gauge by km containment use precision of 1e-6.
990
991 2011-06-22 Sascha L. Teichmann <sascha.teichmann@intevation.de>
992
993 * src/main/java/de/intevation/flys/model/River.java:
994 Added method to find gauge by its name.
995
996 2011-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de>
997
998 * doc/annotation-types.xml: Fixed some rules.
999
1000 * src/main/java/de/intevation/flys/importer/Importer.java,
1001 src/main/java/de/intevation/flys/importer/InfoGewParser.java,
1002 src/main/java/de/intevation/flys/importer/ImportRiver.java:
1003 Call the right constructors now.
1004
1005 * src/main/java/de/intevation/flys/importer/ImportAnnotationType.java:
1006 Added getter/setter for name property.
1007
1008 * src/main/java/de/intevation/flys/importer/AnnotationsParser.java:
1009 Print duplicated at WARN level not as DEBUG.
1010
1011 * src/main/java/de/intevation/flys/importer/AnnotationClassifier.java:
1012 Fixed XPath expression to build the internal lookup structures
1013 correctly.
1014
1015 2011-06-19 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1016
1017 Added classification of annotation types. Needs testing!
1018
1019 * doc/annotation-types.xml: New. Rules to classify the different
1020 types of annotations. The classification works like this:
1021
1022 There are unique types like 'Bruecke', 'Pegel' and so on.
1023 They are defined in the /annotation/type section and
1024 identified by their name. One of the types can be set
1025 as the default type if no rule applies.
1026
1027 In the /annotation/pattern section are two types of pattern.
1028
1029 1 - file pattern: If a KM file is opened its filename is
1030 matched against the regular expressions of these
1031 patterns. If a match is found the corresponding type
1032 is used as the default type in the open file.
1033 If no match is found the global default type is used
1034 as the default type.
1035
1036 2 - line patterns: For each line of an open KM file these
1037 patterns are applied to find a match. If a match is
1038 found the corresponding type is used as the type of
1039 the annotation. If no match is found the default
1040 file default is assumed to be the right type. For
1041 the file default see 1.
1042
1043 * src/main/java/de/intevation/flys/importer/Importer.java:
1044 To activate the annotation type classification set
1045 the system property
1046
1047 'flys.backend.importer.annotation.types'
1048
1049 to the path of a XML looking like the annotation-types.xml
1050 file. If the system property is not set no classification
1051 is done.
1052
1053 * src/main/java/de/intevation/flys/importer/AnnotationClassifier.java:
1054 New. Implements the classification.
1055
1056 * src/main/java/de/intevation/flys/importer/AnnotationsParser.java,
1057 src/main/java/de/intevation/flys/importer/InfoGewParser.java,
1058 src/main/java/de/intevation/flys/importer/ImportRiver.java:
1059 Looped through the annotation type classification.
1060
1061 2011-06-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1062
1063 * src/main/java/de/intevation/flys/model/River.java:
1064 Added method to find gauge by a position lying in its range.
1065
1066 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1067
1068 First part of flys/issue18
1069
1070 * doc/schema/postgresql.sql: Add new table 'annotation_types'.
1071 To update existing databases:
1072 BEGIN;
1073 CREATE SEQUENCE ANNOTATION_TYPES_ID_SEQ;
1074 CREATE TABLE annotation_types (
1075 id int PRIMARY KEY NOT NULL,
1076 name VARCHAR(256) NOT NULL UNIQUE
1077 );
1078 ALTER TABLE annotations ADD COLUMN type_id int REFERENCES annotation_types(id);
1079 COMMIT;
1080
1081 * doc/schema/postgresql-cleanup.sql: Removed. Hopeless out-dated.
1082
1083 * src/main/java/de/intevation/flys/model/AnnotationType.java:
1084 New. Hibernate model to access the type.
1085
1086 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
1087 Register the new backend type.
1088
1089 * src/main/java/de/intevation/flys/model/Annotation.java:
1090 References the annotation type.
1091
1092 * src/main/java/de/intevation/flys/importer/ImportAnnotationType.java:
1093 New. Model to help import the annotation type.
1094
1095 * src/main/java/de/intevation/flys/importer/ImportAnnotation.java:
1096 Uses the import type.
1097
1098 * src/main/java/de/intevation/flys/importer/AnnotationsParser.java:
1099 Set the annotation type to 'null'. TODO: Do the classification!
1100
1101 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1102
1103 * src/main/java/de/intevation/flys/importer/AtFileParser.java:
1104 Fix for flys/issue110. start index was shifted by one.
1105
1106 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1107
1108 * src/main/java/de/intevation/flys/importer/ImportAnnotation.java:
1109 Forgot to store reference to edge.
1110
1111 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1112
1113 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
1114 Register backend model.
1115
1116 * src/main/java/de/intevation/flys/importer/ImportEdge.java: New. Model
1117 for importing the edges.
1118
1119 * src/main/java/de/intevation/flys/importer/AnnotationsParser.java:
1120 Parses the edges of an annotation, too.
1121
1122 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1123
1124 * doc/schema/postgresql.sql: Added table edges to model 'Kanten' of an annotation.
1125 To update existing databases:
1126 BEGIN;
1127 CREATE SEQUENCE EDGES_ID_SEQ;
1128 CREATE TABLE edges (
1129 id int PRIMARY KEY NOT NULL,
1130 top NUMERIC,
1131 bottom NUMERIC);
1132 ALTER TABLE annotations ADD COLUMN edge_id int REFERENCES edges(id);
1133 COMMIT;
1134
1135 * src/main/java/de/intevation/flys/model/Edge.java: New. A 'Kanten'-Model.
1136 * src/main/java/de/intevation/flys/model/Annotation.java: References the
1137 edges.
1138
1139 2011-06-08 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1140
1141 * src/main/java/de/intevation/flys/model/River.java:
1142 Added method to find gauge only by station position.
1143
1144 2011-05-24 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1145
1146 * src/main/java/de/intevation/flys/model/River.java:
1147 Make search for gauges independent of from/to order.
1148
1149 2011-05-24 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1150
1151 * doc/schema/postgresql.sql: Added a new view to select qs of a WST.
1152 To update existing databases:
1153
1154 CREATE VIEW wst_q_values AS
1155 SELECT wc.position AS column_pos,
1156 wqr.q AS q,
1157 r.a AS a,
1158 r.b AS b,
1159 wc.wst_id AS wst_id
1160 FROM wst_column_q_ranges wcqr
1161 JOIN wst_q_ranges wqr ON wcqr.wst_q_range_id = wqr.id
1162 JOIN ranges r ON wqr.range_id = r.id
1163 JOIN wst_columns wc ON wcqr.wst_column_id = wc.id
1164 ORDER BY wc.position, wcqr.wst_column_id, r.a;
1165
1166 2011-05-24 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1167
1168 * doc/schema/postgresql.sql: Added a new view to select ws of a WST.
1169 To update existing databases:
1170
1171 CREATE VIEW wst_w_values AS
1172 SELECT wcv."position" AS km,
1173 wcv.w AS w,
1174 wc."position" AS column_pos,
1175 w.id AS wst_id
1176 FROM wst_column_values wcv
1177 JOIN wst_columns wc ON wcv.wst_column_id = wc.id
1178 JOIN wsts w ON wc.wst_id = w.id
1179 ORDER BY wcv."position", wc."position";
1180
1181 2011-05-23 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1182
1183 flys/issue76
1184
1185 * src/main/java/de/intevation/flys/importer/WstParser.java:
1186 Close gaps between q ranges.
1187
1188 2011-05-20 Ingo Weinzierl <ingo@intevation.de>
1189
1190 Tagged RELEASE 2.3.1
1191
1192 2011-05-13 Ingo Weinzierl <ingo@intevation.de>
1193
1194 Tagged RELEASE 2.3
1195
1196 2011-05-13 Ingo Weinzierl <ingo@intevation.de>
1197
1198 * Changes: Changes for release 2.3 - see Changes file to get to know about
1199 the version numbers of this software.
1200
1201 2011-05-10 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1202
1203 * doc/schema/postgresql.sql: Added a column which tells
1204 if a river counts its km up or downwards.
1205 To update existing databases:
1206
1207 ALTER TABLE rivers ADD COLUMN km_up BOOLEAN NOT NULL DEFAULT true;
1208
1209 * src/main/java/de/intevation/flys/model/River.java:
1210 Adjust Hibernate mapping of new column.
1211
1212 2011-05-10 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1213
1214 * src/main/java/de/intevation/flys/importer/AtFileParser.java:
1215 Fixed flys/issue11 and flys51.
1216
1217 2011-05-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1218
1219 * src/main/java/de/intevation/flys/importer/ValueKey.java:
1220 Add some unsharp comparison (eps = 1e-6) to avoid
1221 numerical problems.
1222
1223 * src/main/java/de/intevation/flys/importer/IdValueKey.java:
1224 Removed. Not need any longer.
1225
1226 * src/main/java/de/intevation/flys/importer/ImporterSession.java:
1227 Use unsharp lookup.
1228
1229 * src/main/java/de/intevation/flys/importer/ImportWst.java,
1230 src/main/java/de/intevation/flys/importer/ImportRiver.java:
1231 Flush more often. Hopefully this reduces hibernate sync
1232 problems?!
1233
1234 2011-05-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1235
1236 * src/main/java/de/intevation/flys/importer/ImporterSession.java:
1237 Fixed silly bug. Set flush mode back to auto because
1238 manual flushing causes some undetermined problems.
1239
1240 2011-05-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1241
1242 * src/main/java/de/intevation/flys/importer/ImporterSession.java:
1243 Do not load _all_ values from discharge tables and
1244 wst columns. This is extremly slow and will lead
1245 to OOM if more rivers are imported. Now only the
1246 last 20 columns und discharge tables are cached.
1247
1248 * src/main/java/de/intevation/flys/importer/ValueKey.java:
1249 New. Key for caching discharge table values and wst
1250 column values.
1251
1252 * src/main/java/de/intevation/flys/importer/IdValueKey.java:
1253 Fixed bug in equals().
1254
1255 * src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
1256 Removed too eloquent debug output.
1257
1258 2011-05-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1259
1260 * src/main/java/de/intevation/flys/importer/IdValueKey.java:
1261 Use BigDecimals as representation for the numeric components
1262 which prevents running into unique constraint problems
1263 caused by imprecision.
1264
1265 * src/main/java/de/intevation/flys/importer/ImportRange.java,
1266 src/main/java/de/intevation/flys/importer/ImporterSession.java:
1267 Ranges are now cached globally, too.
1268
1269 * src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
1270 Improved logging.
1271
1272 * src/main/java/de/intevation/flys/importer/ImportDischargeTableValue.java:
1273 Removed superfluous imports.
1274
1275 2011-05-08 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1276
1277 * src/main/java/de/intevation/flys/importer/StaFileParser.java:
1278 Only accept main value types 'Q', 'W', 'D' and 'T' by default.
1279 '-' is not handled any more because it causes too much constraint
1280 problems. You can overwrite the imported type with the
1281 system property flys.backend.main.value.types" (default "QWTD")
1282
1283 * src/main/java/de/intevation/flys/importer/ImporterSession.java:
1284 Set session flush mode to manual. Hopefully this improves the
1285 performance a bit.
1286
1287 * src/main/java/de/intevation/flys/importer/ImportWst.java,
1288 src/main/java/de/intevation/flys/importer/ImportGauge.java,
1289 src/main/java/de/intevation/flys/importer/ImportWstColumn.java,
1290 src/main/java/de/intevation/flys/importer/ImportRange.java,
1291 src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
1292 Improved logging.
1293
1294 2011-05-08 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1295
1296 * src/main/java/de/intevation/flys/importer/WstColumnValueKey.java: Deleted
1297 * src/main/java/de/intevation/flys/importer/IdValueKey.java: Reinserted
1298 here in a more generalized form.
1299
1300 * src/main/java/de/intevation/flys/importer/ImporterSession.java:
1301 Cache the discharge table value, too.
1302
1303 * src/main/java/de/intevation/flys/importer/ImportDischargeTableValue.java:
1304 Use the global cache.
1305
1306 2011-05-08 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1307
1308 * src/main/java/de/intevation/flys/importer/ImporterSession.java:
1309 New. Centralized caching in the thread local context. Importing
1310 the Elbe leads to OOM because the column values of the
1311 WST files where loaded separately for every file.
1312
1313 * src/main/java/de/intevation/flys/importer/ImportPosition.java,
1314 src/main/java/de/intevation/flys/importer/Importer.java,
1315 src/main/java/de/intevation/flys/importer/ImportAnnotation.java,
1316 src/main/java/de/intevation/flys/importer/ImportWstQRange.java,
1317 src/main/java/de/intevation/flys/importer/ImportWst.java,
1318 src/main/java/de/intevation/flys/importer/ImportMainValue.java,
1319 src/main/java/de/intevation/flys/importer/ImportMainValueType.java,
1320 src/main/java/de/intevation/flys/importer/ImportNamedMainValue.java,
1321 src/main/java/de/intevation/flys/importer/ImportRiver.java,
1322 src/main/java/de/intevation/flys/importer/ImportGauge.java,
1323 src/main/java/de/intevation/flys/importer/ImportWstColumnValue.java,
1324 src/main/java/de/intevation/flys/importer/ImportWstColumnQRange.java,
1325 src/main/java/de/intevation/flys/importer/ImportWstColumn.java,
1326 src/main/java/de/intevation/flys/importer/ImportRange.java,
1327 src/main/java/de/intevation/flys/importer/ImportDischargeTableValue.java,
1328 src/main/java/de/intevation/flys/importer/ImportDischargeTable.java,
1329 src/main/java/de/intevation/flys/importer/ImportAttribute.java,
1330 src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
1331 Adjusted to use the new global context.
1332
1333 2011-05-08 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1334
1335 * doc/schema/postgresql.sql: Dropped constraint which
1336 forces discharge tables to have a unique time interval
1337 for a given gauge and kind.
1338
1339 There are AT files (historical Mosel/Perl/Perl/1967-1981.at
1340 and Mosel/Perl/1967-1981-1.at) which violate this
1341 constraint. Its a technical question to the customer
1342 how to handle these cases.
1343
1344 To adjust existing databases:
1345
1346 ALTER TABLE discharge_tables DROP CONSTRAINT discharge_tables_gauge_id_key;
1347
1348 2011-05-08 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1349
1350 * src/main/java/de/intevation/flys/importer/WstParser.java:
1351 There are wst files where column names are not unique.
1352 Make them unique by appending (1), (2) and so on.
1353
1354 2011-05-05 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1355
1356 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1357 Import the "HW-Schutzanlagen", too.
1358
1359 2011-05-05 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1360
1361 Make import of historical discharge tables work.
1362
1363 * doc/schema/postgresql.sql: Added forgotten column 'description'.
1364
1365 !!! You have to drop your database !!!
1366
1367 * src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
1368 src/main/java/de/intevation/flys/model/DischargeTable.java:
1369 Add the forgotten description property.
1370
1371 * src/main/java/de/intevation/flys/importer/AtFileParser.java:
1372 Fixed problems with date recognition.
1373
1374 * src/main/java/de/intevation/flys/importer/ImportGauge.java:
1375 Prefix the description of the historical discharge tables
1376 with "Histor.Abflusstafeln".
1377
1378 * src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
1379 Fixed silly programming error.
1380
1381 2011-05-05 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1382
1383 * src/main/java/de/intevation/flys/importer/AtFileParser.java:
1384 Inject 'kind' attribute.
1385
1386 * src/main/java/de/intevation/flys/importer/ImportGauge.java:
1387 Traverse the "Histor.Abflusstafeln" for the historical
1388 discharge tables. too. TODO: Store them in the database.
1389
1390 * src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
1391 Added convinience constructor to set the kind of the
1392 discharge table.
1393
1394 2011-05-05 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1395
1396 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1397 Prefix "Zusätzliche Längsschnitte" with "Zus.Längsschnitte"
1398 in description.
1399
1400 2011-05-05 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1401
1402 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1403 Import 'Hochwasser-Marken', too.
1404
1405 * src/main/java/de/intevation/flys/importer/WstParser.java:
1406 Removed superfluous import.
1407
1408 2011-05-05 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1409
1410 * src/main/java/de/intevation/flys/importer/WstParser.java:
1411 Ignore lines that contain km positions which were found
1412 before in the same file.
1413
1414 2011-05-05 Ingo Weinzierl <ingo@intevation.de>
1415
1416 * src/main/java/de/intevation/flys/model/River.java: Added a method that
1417 returns all gauges of the river intersected by a given start and end
1418 point.
1419
1420 2011-05-03 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1421
1422 * src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
1423 Forgot to fetch peer from result set.
1424
1425 2011-05-03 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1426
1427 * src/main/java/de/intevation/flys/importer/ImportTimeInterval.java:
1428 New. Importer model help fetching the database peer.
1429
1430 * src/main/java/de/intevation/flys/model/TimeInterval.java:
1431 Add convinience constructor with start and stop time.
1432
1433 * src/main/java/de/intevation/flys/importer/AtFileParser.java:
1434 Attach a time interval to a discharge table if we find one.
1435
1436 * src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
1437 Store the reference to the importer model of the
1438 time interval of the discharge table.
1439
1440 2011-05-03 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1441
1442 * src/main/java/de/intevation/flys/importer/AtFileParser.java:
1443 Try to extract time ranges from at files.
1444
1445 2011-05-03 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1446
1447 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1448 Parse and store "amtliche Linien" wst files.
1449
1450 2011-05-03 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1451
1452 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1453 Parse and store fixation wst files as well.
1454
1455 2011-05-03 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1456
1457 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1458 Parse the "zusaetzliche Laengsschnitte", too.
1459
1460 * src/main/java/de/intevation/flys/importer/ImportWst.java:
1461 Add getter/setter for column 'kind'.
1462
1463 2011-05-02 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1464
1465 * src/main/java/de/intevation/flys/importer/WstParser.java:
1466 Fixed flys/issue19: Do not take km column in wst file as a water level.
1467
1468 2011-05-02 Ingo Weinzierl <ingo@intevation.de>
1469
1470 * src/main/java/de/intevation/flys/model/Gauge.java: Introduced a 'scale'
1471 that is used to adjust the range of min/max W values.
1472
1473 2011-05-01 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1474
1475 * src/main/java/de/intevation/flys/importer/WstParser.java:
1476 Removed superfluous import.
1477
1478 2011-04-20 Ingo Weinzierl <ingo@intevation.de>
1479
1480 * src/main/java/de/intevation/flys/importer/WstColumnValueKey.java:
1481 New. This class is used as distinct key of a WstColumnValue - e.g. as
1482 key in a map.
1483
1484 * src/main/java/de/intevation/flys/importer/ImportWst.java: A
1485 WstColumnValue cache is build up while initialization. This cache
1486 contains all WstColumnValues that exist in the database.
1487
1488 * src/main/java/de/intevation/flys/importer/ImportWstColumn.java: New
1489 constructor that takes the WstColumnValues cache. It is used to
1490 initialize new ImportWstColumnValue objects.
1491
1492 * src/main/java/de/intevation/flys/importer/ImportWstColumnValue.java:
1493 Speedup: A ImportWstColumnValue has a WstColumnValues cache that
1494 contains all WstColumnValues existing in the database. This makes it
1495 unnecessary to call an sql statement for each WstColumnValue to
1496 determine its existence in the database.
1497
1498 2011-04-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1499
1500 * doc/schema/postgresql.sql, doc/schema/postgresql-cleanup.sql:
1501 Added a view 'wst_value_table' which aggregates the data
1502 to build w/q value tables.
1503
1504 To update existing databases:
1505
1506 BEGIN;
1507 CREATE VIEW wst_value_table AS
1508 SELECT wcv.position AS position,
1509 w,
1510 (SELECT q
1511 FROM wst_column_q_ranges wcqr
1512 JOIN wst_q_ranges wqr
1513 ON wcqr.wst_q_range_id = wqr.id
1514 JOIN ranges r
1515 ON r.id = wqr.range_id
1516 WHERE wcqr.wst_column_id = wc.id
1517 AND wcv.position BETWEEN r.a AND r.b) AS q,
1518 wc.position AS column_pos,
1519 w.id AS wst_id
1520 FROM wst_column_values wcv
1521 JOIN wst_columns wc
1522 ON wcv.wst_column_id = wc.id
1523 JOIN wsts w
1524 ON wc.wst_id = w.id
1525 ORDER BY wcv.position ASC,
1526 wc.position DESC;
1527 COMMIT;
1528
1529 2011-04-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1530
1531 * src/main/java/de/intevation/flys/model/Wst.java:
1532 Add forgotten one to many relation Wst -> WstColumn.
1533
1534 2011-04-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1535
1536 * src/main/java/de/intevation/flys/importer/ImportWst.java,
1537 src/main/java/de/intevation/flys/importer/WstParser.java:
1538 Import of q ranges of wst files was totally broken. :-/
1539 You have to reimport all your data.
1540
1541 2011-04-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1542
1543 * src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
1544 Forgot kind parameter in peer fetching query.
1545
1546 2011-04-18 Ingo Weinzierl <ingo@intevation.de>
1547
1548 * src/main/java/de/intevation/flys/model/River.java::
1549 Added a new method to determine the gauge based on a given start and end
1550 point of the river.
1551
1552 2011-04-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1553
1554 * doc/schema/postgresql.sql: Added 'position' column to wst_columns
1555 to allow order them by there column position in the original
1556 wst file.
1557
1558 Update existing database with:
1559
1560 BEGIN;
1561 ALTER TABLE wst_columns ADD COLUMN position int;
1562 UPDATE wst_columns w SET
1563 position = id - (SELECT min(id) FROM wst_columns WHERE wst_id = w.wst_id);
1564 ALTER TABLE wst_columns ADD CONSTRAINT wst_columns_wst_id_position_key
1565 UNIQUE (wst_id, position);
1566 COMMIT;
1567
1568 * src/main/java/de/intevation/flys/model/Wst.java,
1569 src/main/java/de/intevation/flys/model/WstColumn.java:
1570 Adjusted models.
1571
1572 * src/main/java/de/intevation/flys/importer/ImportWst.java,
1573 src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
1574 Adjusted importer.
1575
1576 2011-04-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1577
1578 * doc/schema/postgresql.sql: Forget ',' in schema.
1579
1580 2011-04-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1581
1582 * src/main/java/de/intevation/flys/model/Wst.java (determineMinMaxQ):
1583 Fixed index problem when an empty list is returned.
1584
1585 2011-04-15 Ingo Weinzierl <ingo@intevation.de>
1586
1587 * src/main/java/de/intevation/flys/model/Wst.java: A Wst is now able to
1588 return its min and max Q values.
1589
1590 * src/main/java/de/intevation/flys/model/Gauge.java: A Gauge is now able
1591 to return its min and max W values.
1592
1593 2011-04-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1594
1595 * doc/schema/postgresql.sql: Added new column 'kind' in
1596 discharge tables and wst to distinguish between different
1597 kinds like 'Haupt-WST', 'zusaetzliche Laengsschnitte',
1598 'amtliche Daten' and so on.
1599
1600 Update existing databases with:
1601 BEGIN;
1602 ALTER TABLE discharge_tables ADD COLUMN kind int NOT NULL DEFAULT 0;
1603 ALTER TABLE wsts ADD COLUMN kind int NOT NULL DEFAULT 0;
1604 COMMIT;
1605
1606 * src/main/java/de/intevation/flys/model/DischargeTable.java
1607 src/main/java/de/intevation/flys/model/Wst.java,
1608 src/main/java/de/intevation/flys/importer/ImportWst.java,
1609 src/main/java/de/intevation/flys/importer/ImportDischargeTable.java:
1610 Adjusted the models.
1611
1612 2011-04-15 Ingo Weinzierl <ingo@intevation.de>
1613
1614 * src/main/java/de/intevation/flys/backend/SessionHolder.java: Moved to
1615 this module from flys-artifacts. This is necessary to get access to the
1616 current session in this module as well.
1617
1618 2011-04-14 Ingo Weinzierl <ingo@intevation.de>
1619
1620 * src/main/java/de/intevation/flys/model/River.java: Added a method that
1621 returns the min and max distance of a river.
1622
1623 2011-04-03 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1624
1625 * src/**/*.java: Removed trailing whitespace.
1626
1627 2011-03-30 Ingo Weinzierl <ingo@intevation.de>
1628
1629 Tagged RELEASE 0.1
1630
1631 2011-03-28 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1632
1633 * src/main/java/de/intevation/flys/model/Range.java:
1634 Forgot to save the last change before commit.
1635
1636 2011-03-28 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1637
1638 * src/main/java/de/intevation/flys/model/Range.java:
1639 Added methods to find out if two ranges intersects.
1640
1641 2011-03-24 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1642
1643 * src/main/java/de/intevation/flys/model/Gauge.java:
1644 Added an one to many relation to the discharge tables of a gauge.
1645
1646 2011-03-22 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1647
1648 Finished import of WSTs.
1649
1650 TODO 1: Speed it up! It takes on a high end machine over 7(!)
1651 minutes only for the data of the Saar.
1652 TODO 2: Double precision floating point representations produced
1653 by the the parsers leed to unique constraint violations
1654 in the backend on a second run. So the import is currently
1655 only working on freshly initialized data bases.
1656 More consequent working with BigDecimal and some
1657 rounding may be of help here.
1658
1659 * src/main/java/de/intevation/flys/model/WstColumnValue.java:
1660 Added convinience constructors.
1661
1662 * src/main/java/de/intevation/flys/importer/ImportWstColumnValue.java:
1663 Added getPeer() method.
1664
1665 * src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
1666 Add a list of the ImportWstColumnValues produced by the WST parser.
1667
1668 * src/main/java/de/intevation/flys/importer/WstParser.java: Add
1669 the (km, w) values to the ImportWstColumns.
1670
1671 2011-03-22 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1672
1673 * src/main/java/de/intevation/flys/importer/WstParser.java:
1674 Build models for wsts, wst columns and q ranges and
1675 store them in the backend. TODO: store the w values.
1676
1677 * src/main/java/de/intevation/flys/model/WstQRange.java
1678 src/main/java/de/intevation/flys/model/Wst.java,
1679 src/main/java/de/intevation/flys/model/Range.java,
1680 src/main/java/de/intevation/flys/model/WstColumnQRange.java,
1681 src/main/java/de/intevation/flys/model/WstColumn.java:
1682 Added convinience constructors.
1683
1684 * src/main/java/de/intevation/flys/importer/ImportWstQRange.java,
1685 src/main/java/de/intevation/flys/importer/ImportWst.java,
1686 src/main/java/de/intevation/flys/importer/ImportRiver.java,
1687 src/main/java/de/intevation/flys/importer/ImportWstColumnQRange.java,
1688 src/main/java/de/intevation/flys/importer/ImportWstColumn.java,
1689 src/main/java/de/intevation/flys/importer/ImportRange.java:
1690 Added getPeer() methods.
1691
1692 2011-03-22 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1693
1694 * src/main/java/de/intevation/flys/importer/WstParser.java:
1695 The unit extraction in the WST parser of desktop FLYS
1696 is broken! Add a hack here to repair this for our
1697 importer. Desktop FLYS needs a fix, too!
1698
1699 2011-03-22 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1700
1701 * src/main/java/de/intevation/flys/importer/WstParser.java:
1702 Ported some stuff ver from WSTSource.java of desktop flys to
1703 parse WST files. TODO: create instances of the import models.
1704
1705 * src/main/java/de/intevation/flys/utils/StringUtil.java:
1706 Copied from desktop flys. Used for some string operations
1707 in WST parser.
1708
1709 * src/main/java/de/intevation/flys/importer/Importer.java:
1710 Added system property 'flys.backend.importer.dry.run'.
1711 Set to true only the parsing is done and no writing
1712 to the backend. Default: false.
1713
1714 * src/main/java/de/intevation/flys/App.java,
1715 src/main/java/de/intevation/flys/model/MainValueType.java:
1716 Removed needless imports.
1717
1718 2011-03-22 Ingo Weinzierl <ingo@intevation.de>
1719
1720 * src/main/java/de/intevation/flys/model/DischargeTableValue.java,
1721 src/main/java/de/intevation/flys/model/DischargeTable.java: Added new
1722 constructors.
1723
1724 * src/main/java/de/intevation/flys/importer/AtFileParser.java: New. This
1725 parser is used to '*.at' files.
1726
1727 * src/main/java/de/intevation/flys/importer/ImportGauge.java: Added code to
1728 import discharge tables.
1729
1730 * src/main/java/de/intevation/flys/importer/ImportDischargeTableValue.java,
1731 src/main/java/de/intevation/flys/importer/ImportDischargeTable.java: New.
1732 Helper models for import discharge tables.
1733
1734 2011-03-22 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1735
1736 * src/main/java/de/intevation/flys/importer/WstParser.java,
1737 src/main/java/de/intevation/flys/importer/ImportRiver.java:
1738 Added stub for WST parser.
1739
1740 2011-03-22 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1741
1742 * src/main/java/de/intevation/flys/importer/ImportWstQRange.java,
1743 src/main/java/de/intevation/flys/importer/ImportWst.java,
1744 src/main/java/de/intevation/flys/importer/ImportWstColumnValue.java,
1745 src/main/java/de/intevation/flys/importer/ImportWstColumnQRange.java,
1746 src/main/java/de/intevation/flys/importer/ImportWstColumn.java:
1747 Added importer helper model stubs for WST imports.
1748
1749 2011-03-21 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1750
1751 Second part of parsing/storing main values. Should be finished now.
1752
1753 * src/main/java/de/intevation/flys/importer/ImportNamedMainValue.java,
1754 src/main/java/de/intevation/flys/importer/ImportMainValue.java:
1755 New. Helper models for import main values,
1756
1757 * src/main/java/de/intevation/flys/model/MainValue.java,
1758 src/main/java/de/intevation/flys/model/NamedMainValue.java:
1759 Added convinience constructors.
1760
1761 * src/main/java/de/intevation/flys/importer/ImportGauge.java:
1762 Write main values to backend, too.
1763
1764 * src/main/java/de/intevation/flys/importer/StaFileParser.java:
1765 Build importer models for main values.
1766
1767 * src/main/java/de/intevation/flys/importer/ImportMainValueType.java:
1768 Data was called 'value'. Now it is 'name' to fit the
1769 schema.
1770
1771 2011-03-21 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1772
1773 * doc/schema/postgresql.sql: Fixed wrong unique constraint.
1774
1775 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1776 Added some logging when storing gauges.
1777
1778 2011-03-21 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1779
1780 * src/main/java/de/intevation/flys/model/Gauge.java:
1781 Add forgotten column river_id.
1782
1783 * src/main/java/de/intevation/flys/importer/ImportGauge.java:
1784 Small HQL fix.
1785
1786 2011-03-21 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1787
1788 * src/main/java/de/intevation/flys/model/Gauge.java:
1789 Added convinience contructor.
1790
1791 * src/main/java/de/intevation/flys/importer/ImportGauge.java:
1792 Fixed getPeer() method.
1793
1794 * src/main/java/de/intevation/flys/importer/StaFileParser.java:
1795 Fixed parsing of STA files.
1796
1797 2011-03-21 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1798
1799 * src/main/java/de/intevation/flys/importer/ImportRiver.java,
1800 src/main/java/de/intevation/flys/importer/ImportGauge.java:
1801 Propagate river into storing of gauges.
1802
1803 2011-03-21 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1804
1805 * src/main/java/de/intevation/flys/importer/Importer.java:
1806 Added code to store rivers not only annotations.
1807
1808 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1809 Added stub code to write gauges.
1810
1811 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1812
1813 First part of parsing main values.
1814
1815 * src/main/java/de/intevation/flys/App.java: Commented out
1816 creation of dummy rivers.
1817
1818 * src/main/java/de/intevation/flys/model/NamedMainValues.java:
1819 Moved to NamedMainValue.
1820
1821 * src/main/java/de/intevation/flys/model/NamedMainValue.java:
1822 New. Formerly NamedMainValues.
1823
1824 * src/main/java/de/intevation/flys/model/MainValue.java:
1825 New. Forgotten part of the model.
1826
1827 * src/main/java/de/intevation/flys/model/MainValueType.java:
1828 Data is String not BigDecimal
1829
1830 * src/main/java/de/intevation/flys/model/Range.java: Removed
1831 contructor with double arguments. Using BigDecimal now.
1832
1833 * src/main/java/de/intevation/flys/importer/PegelGltParser.java:
1834 Propagate BigDecimal usage.
1835
1836 * src/main/java/de/intevation/flys/importer/Importer.java:
1837 Removed needless import. Added TODO
1838
1839 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1840 Parse the dependencies of the gauges, too.
1841
1842 * src/main/java/de/intevation/flys/importer/StaFileParser.java:
1843 New. Parser for STA files.
1844
1845 * src/main/java/de/intevation/flys/importer/ImportGauge.java:
1846 Call STA file parser.
1847
1848 * src/main/java/de/intevation/flys/importer/AnnotationsParser.java,
1849 src/main/java/de/intevation/flys/importer/ImportRange.java:
1850 Uses BigDecimal now.
1851
1852 * src/main/java/de/intevation/flys/importer/ImportAttribute.java:
1853 Fixed wrong type cast in equals.
1854
1855 * src/main/java/de/intevation/flys/importer/ImportMainValueType.java:
1856 New. Helper model for importing main value types.
1857
1858 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
1859 Register forgotten MainValue model.
1860
1861 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1862
1863 Store annotations in backend.
1864
1865 * src/main/java/de/intevation/flys/model/Annotation.java:
1866 New convinience constructor.
1867
1868 * src/main/java/de/intevation/flys/model/River.java:
1869 Added toString() method.
1870
1871 * src/main/java/de/intevation/flys/model/Range.java:
1872 Fixed nasty mistake in @OneToOne annotatation.
1873 New convinience constructors.
1874
1875 * src/main/java/de/intevation/flys/importer/ImportPosition.java
1876 src/main/java/de/intevation/flys/importer/ImportAnnotation.java,
1877 src/main/java/de/intevation/flys/importer/ImportRange.java
1878 src/main/java/de/intevation/flys/importer/ImportAttribute.java:
1879 Make storing to backend work. It's a bit too slow. :-/
1880
1881 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1882 Fetch peer from backend. Added method to store annotations.
1883 * src/main/java/de/intevation/flys/importer/Importer.java:
1884 Stored annotations into backend. More eloquent SQL exception
1885 handling.
1886
1887 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1888
1889 * src/main/java/de/intevation/flys/model/Attribute.java,
1890 src/main/java/de/intevation/flys/model/Position.java:
1891 Added convinience constructors.
1892
1893 * src/main/java/de/intevation/flys/importer/ImportPosition.java,
1894 src/main/java/de/intevation/flys/importer/ImportAttribute.java:
1895 Bound them to there backend peers.
1896
1897 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1898
1899 * src/main/java/de/intevation/flys/importer/AnnotationsParser.java:
1900 New. Added parser to read *.KM files.
1901
1902 * src/main/java/de/intevation/flys/importer/ImportPosition.java,
1903 src/main/java/de/intevation/flys/importer/PegelGltParser.java,
1904 src/main/java/de/intevation/flys/importer/ImportRiver.java,
1905 src/main/java/de/intevation/flys/importer/ImportAnnotation.java,
1906 src/main/java/de/intevation/flys/importer/ImportRange.java,
1907 src/main/java/de/intevation/flys/importer/InfoGewParser.java,
1908 src/main/java/de/intevation/flys/importer/ImportAttribute.java:
1909 Adjusted to load the annotations from *.KM files.
1910
1911 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1912
1913 * src/main/java/de/intevation/flys/importer/ImportPosition.java,
1914 src/main/java/de/intevation/flys/importer/ImportRange.java,
1915 src/main/java/de/intevation/flys/importer/ImportAttribute.java,
1916 src/main/java/de/intevation/flys/importer/ImportAnnotation.java:
1917 New helper models for import.
1918
1919 * src/main/java/de/intevation/flys/importer/PegelGltParser.java,
1920 src/main/java/de/intevation/flys/importer/ImportGauge.java:
1921 Use new models.
1922
1923 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1924
1925 * src/main/java/de/intevation/flys/importer/PegelGltParser.java:
1926 New. Parser for PEGEL.GLT files.
1927
1928 * src/main/java/de/intevation/flys/importer/ImportGauge.java:
1929 New. Import model for gauges.
1930
1931 * src/main/java/de/intevation/flys/utils/DBCPConnectionProvider.java:
1932 Removed needless imports.
1933
1934 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1935 Added method to parse the gauges.
1936
1937 * src/main/java/de/intevation/flys/importer/InfoGewParser.java:
1938 Trigger pegel glt file parsing.
1939
1940 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1941
1942 * src/main/java/de/intevation/flys/importer/Importer.java:
1943 Used thread local pattern to make sharing of session easier.
1944
1945 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1946
1947 * src/main/java/de/intevation/flys/importer/Importer.java:
1948 Fixed error in HQL statement.
1949
1950 2011-03-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1951
1952 * src/main/java/de/intevation/flys/utils/DBCPConnectionProvider.java:
1953 Commented out a debug block because it leaks the db password.
1954
1955 2011-03-16 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1956
1957 * src/main/java/de/intevation/flys/importer/InfoGewParser.java:
1958 Expose imported rivers.
1959
1960 * src/main/java/de/intevation/flys/importer/InfoGewParser.java:
1961 Store imported rivers into database. Needs testing!
1962
1963 2011-03-16 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1964
1965 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
1966 Default connection parameters are now overwritable with
1967 system properties (defaults in brackets):
1968 - user name: flys.backend.user (flys)
1969 - user password: flys.backend.password (flys)
1970 - db dialect: flys.backend.dialect (org.hibernate.dialect.PostgreSQLDialect)
1971 - db driver: flys.backend.driver (org.postgresql.Driver)
1972 - db url: flys.backend.url (jdbc:postgresql://localhost:5432/flys)
1973
1974 2011-03-16 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1975
1976 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
1977 Expose createSessionFactory() as public to be usable without
1978 a artifact database running.
1979
1980 2011-03-16 Sascha L. Teichmann <sascha.teichmann@intevation.de>
1981
1982 * src/main/java/de/intevation/flys/utils/FileTools.java:
1983 Tools for handling with filenames. Currently there is
1984 a repair(File) method with repairs letter case errors
1985 which is useful when reading windows filenames on a
1986 un*x platform.
1987
1988 * src/main/java/de/intevation/flys/importer/Importer.java:
1989 Standalone app to read data from the file system and
1990 store it in a database. Currently it does not store
1991 anything. It only loads info gew files.
1992
1993 * src/main/java/de/intevation/flys/importer/InfoGewParser.java:
1994 Info gew parser.
1995
1996 * src/main/java/de/intevation/flys/importer/ImportRiver.java:
1997 Helper model of a river used produced by parsing the
1998 info gew files.
1999
2000 2011-03-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2001
2002 * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java:
2003 New. SessionFactoryProvider.getSessionFactory() provides a
2004 SessionFactory to use the Hibernate O/R mapper for the FLYS backend.
2005
2006 2011-03-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2007
2008 * pom.xml: Added dependency to artifacts-commons to
2009 be able to use the global configuration of the artifact database.
2010
2011 2011-03-15 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2012
2013 * src/main/java/de/intevation/flys/App.java: Wire all POJOs
2014 to corresponding factory.
2015
2016 * src/main/java/de/intevation/flys/model/*.java: Generate
2017 all foreign key constraints. TODO: name them correctly
2018 because the machine generated names are ugly and do
2019 not fit the PostgreSQL names.
2020
2021 * doc/schema/postgresql.sql: Small quantifier fix in descriptions
2022 of wst columns.
2023
2024 2011-03-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2025
2026 * doc/schema/postgresql.sql: Fixed wrong spelled
2027 column references in foreign keys introduces with
2028 last change.
2029
2030 2011-03-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2031
2032 * src/main/java/de/intevation/flys/model/*.java: Added
2033 column annotations for simple fields. TODO: foreign keys.
2034
2035 2011-03-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2036
2037 * doc/schema/postgresql.sql, doc/schema/postgresql-cleanup.sql:
2038 Fixed inconsistent table names.
2039
2040 * src/main/java/de/intevation/flys/model/*.java: Added
2041 entity and id annotations.
2042
2043 2011-03-14 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2044
2045 * doc/schema/postgresql.sql, doc/schema/postgresql-cleanup.sql:
2046 Added missing sequences.
2047
2048 * doc/schema/sqlite.sql: Deleted. Not longer supported.
2049
2050 2011-03-11 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2051
2052 * doc/schema/postgresql-cleanup.sql: Forgot to add.
2053
2054 * src/main/java/de/intevation/flys/App.java: Use
2055 Apache Commons DBCP as Hibernate connection provide.
2056
2057 * src/main/java/de/intevation/flys/model/River.java:
2058 Added a constructor with string argument. Set the
2059 sequence increment to 1 (eat up 100 at a time before).
2060
2061 * pom.xml: Added PostgreSQL 8.4 driver as runtime dependency.
2062
2063 2011-03-11 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2064
2065 * doc/schema/postgresql-cleanup.sql: New. Tear down schema
2066 for a postgres database.
2067
2068 * doc/schema/postgresql.sql: Added squence for
2069 auto generating ids in river table. Cleaned up schema.
2070
2071 * src/main/java/de/intevation/flys/App.java: Simple
2072 test app to interact with hibernate. Needs to be removed
2073 because its only a toy.
2074
2075 * src/main/java/de/intevation/flys/utils/DBCPConnectionProvider.java:
2076 New. Binds Apache Commons to Hibernate.
2077
2078 * pom.xml: Added dependencies to log4j, commons dbcp,
2079 JPA of hibernate.
2080
2081 * src/main/java/de/intevation/flys/model/River.java: Added
2082 JPA annotations.
2083
2084 * src/main/java/de/intevation/flys/model/*.java: Replaced
2085 Long with Integer because column ids are only four bytes wide.
2086
2087 2011-03-11 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2088
2089 * doc/schema/sqlite.sql, doc/schema/postgresql.sql: Fixed
2090 smaller issues in ddl.
2091
2092 * src/main/java/de/intevation/flys/model/*.java: Added POJOs
2093 of to be mapped. TODO: Map them!
2094
2095 * pom.xml: Added plugin config for hibernate.
2096
2097 2011-03-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2098
2099 * pom.xml: Added dependency (and corresponding repository) to
2100 Hibernate Core 3.6.1 Final
2101
2102 2011-03-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2103
2104 * pom.xml, src/**: Created a new empty maven project:
2105 $ mvn archetype:create \
2106 -DgroupId=de.intevation.flys \
2107 -DartifactId=flys-backend
2108
2109 2011-03-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2110
2111 * README: New. Some setup instructions.
2112
2113 * doc/schema/postgresql.sql: New. Schema converted to PostgreSQL
2114
2115 * doc/schema/sqlite.sql: Fixed defect foreign key constraints.
2116
2117 2011-03-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2118
2119 * doc/schema/sqlite.sql: Factorized time intervals out into
2120 a separated table.
2121
2122 2011-01-22 Sascha L. Teichmann <sascha.teichmann@intevation.de>
2123
2124 * contrib/import-kms.py, contrib/import-gew.py: Initial scripts
2125 to import data into SQLite database. They still need some work.
2126
2127 2011-02-10 Sascha L. Teichmann <sascha.teichmann@intevation.de>:
2128
2129 * doc/schema/sqlite.sql: Added initial schema for
2130 FLYS database.

http://dive4elements.wald.intevation.org