comparison geo-backend/ChangeLog @ 1129:ccfa07b88476

merged geo-backend
author Thomas Arendsen Hein <thomas@intevation.de>
date Fri, 28 Sep 2012 12:14:01 +0200
parents ebeb56428409
children
comparison
equal deleted inserted replaced
1119:7c4f81f74c47 1129:ccfa07b88476
1 2010-11-02 Ingo Weinzierl <ingo@intevation.de>
2
3 * src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java,
4 src/test/java/de/intevation/gnv/geobackend/base/query/ToCharSample.java,
5 src/test/java/de/intevation/gnv/geobackend/base/query/cache/CacheCleanerTestCase.java,
6 src/test/java/de/intevation/gnv/geobackend/base/query/GroupBySample.java,
7 src/test/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnectionPoolTestCase.java,
8 src/main/java/de/intevation/gnv/geobackend/config/Configuration.java,
9 src/main/java/de/intevation/gnv/geobackend/base/DefaultResultDescriptor.java,
10 src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java,
11 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorBase.java,
12 src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainerFactory.java,
13 src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainer.java,
14 src/main/java/de/intevation/gnv/geobackend/base/query/container/DefaultQueryContainer.java,
15 src/main/java/de/intevation/gnv/geobackend/base/query/container/exception/QueryContainerException.java,
16 src/main/java/de/intevation/gnv/geobackend/base/query/cache/CacheCleaner.java,
17 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutor.java,
18 src/main/java/de/intevation/gnv/geobackend/base/query/CachingQueryExecutorFactory.java,
19 src/main/java/de/intevation/gnv/geobackend/base/query/DefaultQueryExceutor.java,
20 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorFactory.java,
21 src/main/java/de/intevation/gnv/geobackend/base/query/exception/QueryException.java,
22 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/ConnectionPoolFactory.java,
23 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/ConnectionPool.java,
24 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/exception/ConnectionException.java,
25 src/main/java/de/intevation/gnv/geobackend/base/ResultDescriptor.java,
26 src/main/java/de/intevation/gnv/geobackend/base/Result.java,
27 src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEConnectionPool.java,
28 src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEPoolableObjectFactory.java,
29 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnection.java,
30 src/main/java/de/intevation/gnv/geobackend/sde/datasources/UncacheableSDEResultSet.java,
31 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEUtils.java,
32 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java,
33 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ColDefinition.java,
34 src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEResultSet.java,
35 src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java,
36 src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java,
37 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ResultSet.java,
38 src/main/java/de/intevation/gnv/geobackend/sde/datasources/Uncacheable.java,
39 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEResultSetMetaData.java,
40 src/main/java/de/intevation/gnv/geobackend/sde/datasources/exception/DatasourceException.java,
41 src/main/java/de/intevation/gnv/geobackend/sde/datasources/exception/TechnicalException.java,
42 src/main/java/de/intevation/gnv/geobackend/util/XMLUtils.java,
43 src/main/java/de/intevation/gnv/geobackend/util/RedundancyRemover.java:
44 Added license headers at the top of each of these files.
45
46 * LGPL.txt: Added license file of the GNU LGPL v2.1
47
48 2010-06-30 Ingo Weinzierl <ingo.weinzierl@intevation.de>
49
50 RELEASE 1.1
51
52 * ChangeLog, Changes, NEWS: Summarized changes.
53
54 2010-06-14 Ingo Weinzierl <ingo.weinzierl@intevation.de>
55
56 * pom.xml: Write svn revision to MANIFEST file while creating jar archive.
57
58 2010-06-04 Ingo Weinzierl <ingo.weinzierl@intevation.de>
59
60 * src/main/java/de/intevation/gnv/geobackend/base/query/CachingQueryExecutorFactory.java:
61 The ehcache CacheManager and the MBeanServer of the JVM are connected
62 so that the statistics of the sql-cache is available as MBean using
63 JConsole.
64
65 2010-06-04 Ingo Weinzierl <ingo.weinzierl@intevation.de>
66
67 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Uncacheable.java:
68 A new marker interface. It should be implemented by objects that should
69 not be cached.
70
71 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/UncacheableSDEResultSet.java:
72 A new SDEResultSet class that implements Uncacheable. Currently, it is
73 used for raster elements returned from ArcSDE.
74
75 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java:
76 Raster elements are put into an UncacheableSDEResultSet container. This
77 has the effect that raster elements are not cached.
78
79 * src/main/java/de/intevation/gnv/geobackend/base/query/DefaultQueryExceutor.java:
80 Only objects that do not implement Uncacheable will be cached.
81
82 2010-06-03 Ingo Weinzierl <ingo.weinzierl@intevation.de>
83
84 * src/main/java/de/intevation/gnv/geobackend/config/Configuration.java: A
85 global configuration for this geo-backend. Before using the geo-backend,
86 it is now necessary to create an instance of this class and call its
87 initialize(.) method. This method currently takes the following arguments:
88
89 - conf: an xml document that should contain a node named 'geo-backend'
90 that contains all configurations required by the geo-backend.
91 - configDir: the absolute path to the root configuration directory that
92 might contain further configuration files.
93 - placeholder: the placeholder string that is used in the central config
94 file to replace the path to the configuration directory.
95
96 Furthermore, this Configuration is used to initialize the so-called
97 'sql-cache' that caches sql statements - it has been configured via system
98 properties until now.
99
100 * src/main/java/de/intevation/gnv/geobackend/base/query/CachingQueryExecutorFactory.java,
101 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorFactory.java:
102 The sql-cache configuration is not read from system properties but from
103 global configuration now.
104
105 2010-06-03 Ingo Weinzierl <ingo.weinzierl@intevation.de>
106
107 * src/main/java/de/intevation/gnv/geobackend/util/XMLUtils.java: Some
108 functions to handle xml stuff.
109
110 2010-05-31 Ingo Weinzierl <ingo.weinzierl@intevation.de>
111
112 * src/main/java/de/intevation/gnv/geobackend/base/query/DefaultQueryExceutor.java:
113 Show the execution time of a database query as INFO log.
114
115 2010-04-28 Ingo Weinzierl <ingo.weinzierl@intevation.de>
116
117 RELEASE 1.0
118
119 * Changes, NEWS, ChangeLog: Summarized changes.
120
121 2010-04-28 Ingo Weinzierl <ingo.weinzierl@intevation.de>
122
123 * src/test/java/de/intevation/gnv/geobackend/base/query/cache/CacheCleanerTestCase.java,
124 src/main/java/de/intevation/gnv/geobackend/base/query/cache/CacheCleaner.java,
125 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutor.java,
126 src/main/java/de/intevation/gnv/geobackend/base/query/CachingQueryExecutorFactory.java,
127 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEUtils.java,
128 src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEResultSet.java,
129 src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java,
130 src/main/java/de/intevation/gnv/geobackend/sde/datasources/exception/DatasourceException.java,
131 src/main/java/de/intevation/gnv/geobackend/util/DateUtils.java: Removed
132 trailing whitespace.
133
134 2010-04-20 Tim Englich <tim.englich@intevation.de>
135
136 * src/test/ressources/QueryExecutorTestCase.properties,
137 src/test/java/de/intevation/gnv/geobackend/base/query/cache/CacheCleanerTestCase.java:
138 Integrated Testcase for testing the Basefunctionality of the CacheCleaner.
139
140 2010-04-20 Tim Englich <tim.englich@intevation.de>
141
142 * src/main/java/de/intevation/gnv/geobackend/base/query/CachingQueryExecutorFactory.java:
143 Integrated the initialization of the CacheCleaner if an SQl-Cache is used.
144 Also implemented the Method for CleanUp the SQL-Cache in the extended
145 QueryExecutor.
146
147 * src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorBase.java,
148 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutor.java:
149 Extended Interface adding an Method that should do the Cleanup of the
150 SQL-Cache.
151
152 * src/main/java/de/intevation/gnv/geobackend/base/query/cache/package.html:
153 Added Documentation.
154
155 * src/main/java/de/intevation/gnv/geobackend/base/query/cache/CacheCleaner.java:
156 Added Threadimplementation that looks every n-Seconds into the Database
157 if there are Tables that where updated during the Time to the last Cleanup.
158 If there are Tables that has been modified the CacheCleaner will call the
159 used QueryExecutor. The Queryexecutor will clean up it's Cache using the
160 Names of the affected Tables.
161 It is Possible to configure the Interval between two cleanups. for this
162 you have to set the Systemproperty -Dcaching.cleaner.interval using Seconds
163 as unit.
164
165 2010-04-16 Sascha L. Teichmann <sascha.teichmann@intevation.de>
166
167 * src/main/java/de/intevation/gnv/geobackend/base/connectionpool/exception/ConnectionException.java,
168 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEUtils.java,
169 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ColDefinition.java,
170 src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEResultSet.java,
171 src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java,
172 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ResultSet.java,
173 src/main/java/de/intevation/gnv/geobackend/sde/datasources/exception/DatasourceException.java,
174 src/main/java/de/intevation/gnv/geobackend/sde/datasources/exception/TechnicalException.java,
175 src/main/java/de/intevation/gnv/geobackend/util/DateUtils.java:
176 Using unix line endings only.
177
178 2010-04-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
179
180 * src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainerFactory.java:
181 Removed trailing whitespace.
182
183 2010-04-13 Tim Englich <tim.englich@intevation.de>
184
185 * src/main/java/de/intevation/gnv/geobackend/base/query/package.html,
186 src/main/java/de/intevation/gnv/geobackend/util/package.html,
187 src/main/java/de/intevation/gnv/geobackend/sde/datasources/exception/package.html,
188 src/main/java/de/intevation/gnv/geobackend/sde/datasources/package.html,
189 src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/package.html,
190 src/main/java/de/intevation/gnv/geobackend/sde/package.html,
191 src/main/java/de/intevation/gnv/geobackend/base/query/exception/package.html,
192 src/main/java/de/intevation/gnv/geobackend/base/query/container/exception/package.html,
193 src/main/java/de/intevation/gnv/geobackend/base/query/container/package.html,
194 src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainerFactory.java,
195 src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainer.java,
196 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/exception/package.html,
197 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/package.html,
198 src/main/java/de/intevation/gnv/geobackend/base/package.html:
199 Added more Javadoc.
200
201 2010-04-13 Tim Englich <tim.englich@intevation.de>
202
203 * src/main/java/de/intevation/gnv/geobackend/util/DateUtils.java,
204 src/main/java/de/intevation/gnv/geobackend/base/Result.java,
205 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnection.java:
206 Modified some JavaDoc so that the Warnings that where caused by mistakes
207 are removed.
208
209 2010-04-13 Tim Englich <tim.englich@intevation.de>
210
211 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java,
212 src/main/java/de/intevation/gnv/geobackend/base/Result.java,
213 src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEConnectionPool.java,
214 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ResultSet.java,
215 src/main/java/de/intevation/gnv/geobackend/util/DateUtils.java:
216 Modified some JavaDoc so that the Warnings that where caused by mistakes
217 are removed.
218
219 2009-03-29 Sascha L. Teichmann <sascha.teichmann@intevation.de>
220
221 * src/main/java/de/intevation/gnv/geobackend/**/package.html: New.
222 Added package description with text 'DOCUMENT ME!'.
223
224 2009-03-29 Sascha L. Teichmann <sascha.teichmann@intevation.de>
225
226 * src/test/java/de/intevation/gnv/geobackend/**/*.java:
227 Bring @author javadoc tags in form '@author <a href="john.doe@example.com">John Doe</a>'
228
229 find -name \*.java | \
230 xargs sed -i \
231 -e 's/@author[ ]\+\([^(<]\+\)[<(]\([^>)]\+\)[>)]/@author <a href="mailto:\2">\1<\/a>/g' \
232 -e 's@[ ]\+</a>@</a>@g'
233
234 2009-03-29 Sascha L. Teichmann <sascha.teichmann@intevation.de>
235
236 * src/main/java/de/intevation/gnv/geobackend/**/*.java:
237 Ordered imports. Removed empty headers.
238
239 2009-03-29 Sascha L. Teichmann <sascha.teichmann@intevation.de>
240
241 * src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java,
242 src/test/java/de/intevation/gnv/geobackend/base/query/ToCharSample.java,
243 src/test/java/de/intevation/gnv/geobackend/base/query/GroupBySample.java,
244 src/test/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnectionPoolTestCase.java,
245 src/main/java/de/intevation/gnv/geobackend/base/DefaultResultDescriptor.java,
246 src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java,
247 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorBase.java,
248 src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainerFactory.java,
249 src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainer.java,
250 src/main/java/de/intevation/gnv/geobackend/base/query/DefaultQueryExceutor.java,
251 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorFactory.java,
252 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/ConnectionPoolFactory.java,
253 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/ConnectionPool.java,
254 src/main/java/de/intevation/gnv/geobackend/base/ResultDescriptor.java,
255 src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEConnectionPool.java,
256 src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEPoolableObjectFactory.java,
257 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnection.java,
258 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java,
259 src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java,
260 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEResultSetMetaData.java,
261 src/main/java/de/intevation/gnv/geobackend/util/BlockCollection.java,
262 src/main/java/de/intevation/gnv/geobackend/util/RedundancyRemover.java:
263 Removed trailing whitespace.
264 find -name \*.java | xargs sed -i 's/[ \t]\+$//'
265
266 2010-03-26 Tim Englich <tim.englich@intevation.de>
267
268 * src/main/java/de/intevation/gnv/geobackend/util/DateUtils.java,
269 src/main/java/de/intevation/gnv/geobackend/sde/datasources/exception/*.java,
270 src/main/java/de/intevation/gnv/geobackend/sde/datasources/*.java,
271 src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEPoolableObjectFactory.java,
272 src/main/java/de/intevation/gnv/geobackend/base/query/exception/QueryException.java,
273 src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorFactory.java,
274 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/exception/ConnectionException.java,
275 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/ConnectionPoolFactory.java,
276 src/main/java/de/intevation/gnv/geobackend/base/*.java:
277 Updated Javadocs to the Listed Classes.
278 Also done some Codecleanup and removed unused Methods from the Code.
279
280 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnectionParams.java:
281 Removed unused Class ArcSDEConnectionParams.
282
283 2010-03-26 Tim Englich <tim.englich@intevation.de>
284
285 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Datasource.java:
286 Removed unused Class Datasource.
287
288 2010-03-26 Tim Englich <tim.englich@intevation.de>
289
290 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/DatasourceConnection.java:
291 Removed unused Class DatasourceConnection.
292
293 2010-03-26 Tim Englich <tim.englich@intevation.de>
294
295 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEQuery.java:
296 Removed unused Class SDEQuery.
297
298 2010-03-16 Tim Englich <tim.englich@intevation.de>
299
300 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEUtils.java (createPoints):
301 Now it is also possible to extract Points from a given LineString.
302 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
303 Added Support for SpatialQueries using LineString as Geometry of Interest.
304
305 2010-03-12 Tim Englich <tim.englich@intevation.de>
306
307 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java (getPosValue):
308 Added support for MultiLineString-Geometries. The Points do not belong to one
309 Geometryelement. We have to lookup if the Geometry is Multiparted.
310 If it is we have to split the Points into several LineStrings which belongs
311 to one MultiLineString.
312
313 2010-03-12 Tim Englich <tim.englich@intevation.de>
314 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEResultSetMetaData.java (getColumnClassName):
315 Added more ClassName identificaton for the different datatypes of the ArcSDE.
316 Now it is possible to distinguish between Integer, Long, String, Date,
317 Float and Double Objects.
318 This is required to get a valid Shape- and WMS-Export.
319
320 2010-03-09 Tim Englich <tim.englich@intevation.de>
321
322 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java (getPosValue):
323 Switched to using asText(...)-Function of SeShapes-Objects for generating
324 an WKT-String for Polygons. Going this way we are able to produce valid
325 WKT for all kinds of Polygons deliverd by the ArcSDE.
326 We cannot use this Method for Points and LineStrings because the WKT
327 which will be produced is invalid e.g. Point Z (...) LineString m (...)
328 I didn't find Invalid WKTs for Polygons which in Database-Rables we are
329 using right now.
330
331 It has to be monitored if there are Polygons in the Database which will
332 produce invalid WKT-Strings.
333
334 2010-03-08 Tim Englich <tim.englich@intevation.de>
335
336 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java (getPosValue):
337 Implemented Support of MultiPolygons. The Points do not belong to one
338 Geometryelement. We have to Lookup ifthe Geometry is Multiparted.
339 If it is we have to split the Points into several Polygons which belongs
340 to one Multipolygon.
341 This Fix solve did not solve any Parsingerros. Some geometries are still
342 corrupt.
343
344 2010-03-08 Tim Englich <tim.englich@intevation.de>
345
346 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java (getPosValue):
347 Added Suport for the Geometrytyp SimpleLine.
348 SimpleLine will be handled as an Line.
349
350 2010-02-05 Ingo Weinzierl <ingo.weinzierl@intevation.de>
351
352 Issue170
353
354 * artifact-database/pom.xml: Changed log4j version to 1.2.14 (later version
355 causes errors and breaks while maven build process).
356
357 2010-02-05 Tim Englich <tim.englich@intevation.de>
358
359 * pom.xml:
360 Changed from ArcSDE version 9.2.5 to Version 9.3
361 You have to Install the required Libraries as described in
362 https://bsh-intern.intevation.de/Mavenbuildprozess
363
364 2010-01-27 Hans Plum <hans@intevation.de>
365
366 RELEASE 0.4
367
368 * Changes, NEWS, ChangeLog: Summarized changes.
369
370 2009-01-25 Sascha L. Teichmann <sascha.teichmann@intevation.de>
371
372 Fix for gnv/issue107
373
374 * src/main/java/de/intevation/gnv/geobackend/util/RedundancyRemover.java:
375 New. Used to reduce the redundancy of data in SQL result sets. Column
376 values are very distinct so the degree or redundancy is very high. E.g
377 the SDE produces for each date value a java.util.GregorianCalendar object
378 which are very heavy weighted. We only use them r/o so we can hash each date
379 value to one unique representative. Same logic applys to integer values
380 and so on.
381
382 With this technique we are able to reduce the memory consumption by
383 over 90%. Because it is not very feasible to store the whole history
384 of column we only have a limited number of cached values per column.
385 This is controlled via the system property
386 "de.intevation.gnv.geobackend.util.RedundancyRemover.lookback" which
387 defaults to 1029.
388
389 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java:
390 Use RedundancyRemovers to filter the incoming traffic from SDE.
391
392 2010-01-26 Tim Englich <tim.englich@intevation.de>
393
394 * src/test/java/de/intevation/gnv/geobackend/base/query/ToCharSample.java :
395 Added Sample for bug in ArcSDE 9.3 using to_char-Function with SpatialQuery
396 * src/test/java/de/intevation/gnv/geobackend/base/query/GroupBySample.java :
397 Added Sample for Bug in ArcSDE using group by with SpatialQuery
398
399 2009-01-25 Sascha L. Teichmann <sascha.teichmann@intevation.de>
400
401 Another attempt to fix gnv/issue34
402
403 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResultDescriptor.java:
404 Add a toString() method.
405
406 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnection.java:
407 Added an idle time detection mechanism. You can call touch() on
408 a connection to refresh the internal timestamp and ask with isActive()
409 if a constructor given time interval in milliseconds is exceeded.
410
411 * src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEPoolableObjectFactory.java:
412 Added a check of inactivity to validateObject() before relying on SDE logic.
413 This is the last line of defence if the testServer() call is going not to respond.
414 This duplicates the eviction policy of Apache Commons pool a bit but I found
415 this way to be more trustworthy.
416
417 The idle time is configure with the property 'serverInactiveInterval'.
418 units: seconds. Defaults to 5 minutes.
419
420 The unit of 'serverRoundtripInterval' (parameter of testServer()) is now
421 in seconds, too. Default: 5 seconds. This is the value used in GeoTools.
422
423 2009-01-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
424
425 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEQuery.java,
426 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java,
427 src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java:
428 Cleanup imports.
429
430 2010-01-15 Tim Englich <tim.englich@intevation.de>
431
432 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnection.java (isValid):
433 Implemented the isValid-method of the ArcSDEConnection for
434 getting a propper Validation of the used SEConnection.
435 For the Validation the Method testServer of the SEConnection is used.
436
437 * src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEPoolableObjectFactory.java (ArcSDEPoolableObjectFactory):
438 Added Member serverRoundtripInterval to represent the Time in
439 Milliseconds which is allowed to reused a returned Connection.
440 Also used Connection.isValid Method instead of Connection.isClosed
441 to validate the Connection befor it could be borrowed from the Pool.
442
443 2009-01-12 Sascha L. Teichmann <sascha.teichmann@intevation.de>
444
445 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java:
446 Added bicubic spline interpolation on raster tiles. This
447 should increase the 'virtual' resolution more than the
448 bilinear interpolation. To enable it write 'bicubic' into
449 the configuration file.
450
451 * pom.xml: Added dependency to Apache Common Math 2.0 for
452 the cubic spline interpolation.
453
454 2009-01-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
455
456 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java:
457 Added static method to fetch matching interpolation type for
458 given string. Defaults to nearest neighbor if no string is matching.
459
460 2009-01-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
461
462 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java:
463 Implemented bilinear interpolation.
464
465 2009-01-09 Sascha L. Teichmann <sascha.teichmann@intevation.de>
466
467 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java:
468 Fixed transformations to figure out the right tile in the SDE.
469 Taking the tile origin into account now and does not do wrong rounding
470 of column and row indices. Simplified the code a lot.
471
472 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java:
473 Fixed access to right right pixel now. Removed the envelope code because
474 its not needed any longer. You can ask a RasterObject directly now if
475 a given coordinate is on the tile now. The tile space is now correctly
476 spanned between (0, 0) and (tile width - 1, tile height - 1) now which
477 allows other access patterns like bilinear interpolation. TODO: implement
478 bilinear interpolation.
479
480 2010-01-08 Tim Englich <tim.englich@intevation.de>
481
482 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEQuery.java,
483 src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java,
484 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java,
485 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnection.java,
486 src/main/java/de/intevation/gnv/geobackend/base/connectionpool/ConnectionPoolFactory.java (initializeConnectionPool):
487 Removed Encodingerrors from listed Files. All Files are now UTF-8 compliant.
488
489 2010-01-05 Tim Englich <tim.englich@intevation.de>
490
491 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java:
492 Made it serializable to be cachable beyond reboot.
493
494 2010-01-05 Tim Englich <tim.englich@intevation.de>
495
496 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (handleResultSet):
497 Switched to return the RasterObject instead of the depth in an Rasterquery.
498 This should help to get a better performance.
499 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/RasterObject.java (RasterObject):
500 Added new Object for Caching Rastertiles and all Informations that are
501 required for calculating the Depth to a given Coordinate.
502
503 2010-01-04 Tim Englich <tim.englich@intevation.de>
504
505 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (handleResultSet):
506 Added Rasterdatasupport to the ARCSDESTATEMENT.
507 Now it is possible to Query the Value of an Pixel like that:
508 SELECT ST_ASTEXT(RASTER) FROM MEDIAN.TOPO_BS_D_6X10SEC where INTERSECTS(RASTER, "POINT( 12.084721594184593 54.35583351483295)")
509
510 2009-12-19 Sascha L. Teichmann <sascha.teichmann@intevation.de>
511
512 * contrib/sql-cache.xml: Configured disk storage to survive restarts.
513
514 * src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorFactory.java:
515 Added explicit shutdown hook.
516
517 * src/main/java/de/intevation/gnv/geobackend/base/query/CachingQueryExecutorFactory.java:
518 Fixed spelling of cacheResults() which prevented results to be stored in cache.
519 Added some logging.
520
521 2009-12-18 Sascha L. Teichmann <sascha.teichmann@intevation.de>
522
523 Experimental caching of SQL results via Ehcache
524
525 * pom.xml: Added dependency to Ehcache
526
527 * src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutor.java:
528 Extended interface to support caching by SQL statements as Strings.
529
530 * src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorBase.java:
531 Implements new interface with no caching
532
533 * src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainerFactory.java:
534 synchronized access to singleton.
535
536 * src/main/java/de/intevation/gnv/geobackend/base/query/DefaultQueryExceutor.java:
537 calls caching methods of base class.
538
539 * src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorFactory.java:
540 When system property 'query.executor.factory' is given the value is used as
541 a class name to be instantiated as a sub class of QueryExecutorFactory.
542 This happens if the singleton of QueryExecutorFactory is created. With the
543 mechanism it is possible to replace the standard behavior of creating QueryExecutors.
544
545 * src/main/java/de/intevation/gnv/geobackend/base/query/CachingQueryExecutorFactory.java:
546 New: This class extends QueryExecutorFactory and can be used as replacement for
547 the standard QueryExecutorFactory. Usage:
548
549 -Dquery.executor.factory=de.intevation.gnv.geobackend.base.query.CachingQueryExecutorFactory
550
551 If you pass in another system property 'caching.query.executor.config' you can
552 customize the caching. The value is used as a file name to an XML file with
553 Ehcache configuration.
554
555 * contrib/sql-cache.xml: Demo configuration for sql caching. Usage:
556
557 -Dquery.executor.factory=de.intevation.gnv.geobackend.base.query.CachingQueryExecutorFactory
558 -Dcaching.query.executor.config=contrib/sql-cache.xml
559
560 2009-12-17 Sascha L. Teichmann <sascha.teichmann@intevation.de>
561
562 RELEASE 0.3
563
564 * Changes, NEWS, ChangeLog: Summarized changes.
565
566 2009-12-17 Ingo Weinzierl <ingo.weinzierl@intevation.de>
567
568 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java:
569 Fixed bug in DefaultResult when querying an index out of bounds.
570
571 2009-12-15 Tim Englich <tim.englich@intevation.de>
572
573 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
574 We have to use a different SpatialFilter for Point in Polygon Queries as
575 in AreaIntersection Statements.
576 So we have to include a switch which will do that.
577 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEUtils.java (createPoints):
578 Added Support of Point-Objects for the possibility to execute a Point in Pologon
579 Statement using the ArcSDE.
580
581 2009-12-11 Ingo Weinzierl <ingo.weinzierl@intevation.de>
582
583 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java:
584 DefaultResult will return null if it doesn't contain the specified column
585 name in method getString(String columnName), instead of throwing an
586 exception.
587
588 2009-12-11 Sascha L. Teichmann <sascha.teichmann@intevation.de>
589
590 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResultDescriptor.java,
591 src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainer.java,
592 src/main/java/de/intevation/gnv/geobackend/base/query/container/DefaultQueryContainer.java:
593 Removed needless imports.
594
595 2009-11-30 Tim Englich <tim.englich@intevation.de>
596
597 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEResultSet.java,
598 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java,
599 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEResultSetMetaData.java,
600 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnection.java:
601 Added missing Methodstubs for Java 1.6 compability.
602 ###################################################
603 ###### ATTENTION: ONLY USE JAVA 1.6 FOR THIS ######
604 ###### AND ALL USING MODULES. ######
605 ###################################################
606
607 2009-11-27 Tim Englich <tim.englich@intevation.de>
608
609 * src/test/ressources/QueryExecutorTestCase.properties,
610 src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java:
611 Revert Changes of the commit of Revision 377 which was unintended
612 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
613 Changed Splitalgorithm of Statements so that it is Possible to add to_date Colums into a Statement
614 with Spatial-Columns or Spatial-Filters
615
616 2009-11-13 Hans Plum <hans@intevation.de>
617
618 RELEASE 0.2
619
620 * Changes, NEWS: Summarized changes.
621
622 2009-11-13 Hans Plum <hans@intevation.de>
623
624 * Made some ChangeLog entries a bit clearer.
625
626 2009-11-10 Tim Englich <tim.englich@intevation.de>
627
628 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
629 Changed the splitting of the Statements for ARCSDE-Transformation.
630 Now it is possible to use a Select-Statement as an Table.
631
632 2009-11-06 Ingo Weinzierl <ingo.weinzierl@intevation.de>
633
634 * target/**: Removed. Should not be in version control.
635
636 2009-11-05 Tim Englich <tim.englich@intevation.de>
637
638 * src/test/ressources/QueryExecutorTestCase.properties,
639 src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java (testSpatialQueryWithInnerSelect):
640 Added an Tescase to test the InnerSelect Statments in Spatial-Queries.
641 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java (getPosValue):
642 Bugfix. An Point could not have an Z-Coordinate-Value
643 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
644 Added the possibility to execute Spatial-Queries using InnerStatements instead
645 of WKT in Intersects-where-clauses.
646
647 2009-11-02 Tim Englich <tim.englich@intevation.de>
648
649 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEConnection.java (createStatement):
650 Changed TODO to a question
651 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
652 CodeCleanup: Removed deprecated TODO
653 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEResultSet.java (getColumnIndex):
654 Removed Typo.
655 * src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEPoolableObjectFactory.java:
656 CodeCleanup: Removed deprecated TODOS and replace Tabs with whitespaces.
657 * src/main/java/de/intevation/gnv/geobackend/base/query/container/DefaultQueryContainer.java:,
658 src/main/java/de/intevation/gnv/geobackend/base/query/container/QueryContainer.java:
659 CodeCleanup: Removed unused Method getQueryIds
660 * src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEConnectionPool.java (closeConnection):
661 CodeCleanup: Inspect TODO and ansewerd the Question that the Connection has not to
662 be closed at that position but perhaps insite the ConnectionPool.
663
664 2009-10-30 Tim Englich <tim.englich@intevation.de>
665
666 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java (getPosValue):
667 Added Support for Polygons without interior Rings. This is required for generating
668 Horizontal Cross-Section Outputs.
669 The Z-Value of an Point was also added to the WKT-Represantation.
670
671 2009-10-29 Tim Englich <tim.englich@intevation.de>
672
673 Issue 45: Defintion of gaps in temporal and spatial data
674
675 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java (getInteger):
676 Added Integer-Support for DoubleValues because the ArcSDE does
677 not read values like -1 as Integer-values. issue45
678
679 2009-10-20 Tim Englich <tim.englich@intevation.de>
680
681 Issue 57: Improving memory usage of data objects
682
683 * src/main/java/de/intevation/gnv/geobackend/base/query/QueryExecutorBase.java (QueryExecutorBase),
684 src/main/java/de/intevation/gnv/geobackend/base/ResultDescriptor.java (getColumnClassName),
685 src/main/java/de/intevation/gnv/geobackend/base/Result.java,
686 src/main/java/de/intevation/gnv/geobackend/base/DefaultResultDescriptor.java (serialVersionUID),
687 src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java (getDate):
688 Integrated Patch of issue57 to get some Memoryusage-improvements
689
690 2009-10-19 Sascha L. Teichmann <sascha.teichmann@intevation.de>
691
692 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java:
693 Extends from HashMap directly to avoid one level of indirection and
694 do not create so much needless objects.
695
696 TODO: The representation in form of HashMaps is not very efficent!
697 Use array with index instead.
698
699 2009-10-14 Tim Englich <tim.englich@intevation.de>
700
701 * src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java (testSpatialQueryWithoutIntersects),
702 src/test/ressources/QueryExecutorTestCase.properties:
703 Added further Queries for Testing Spatial-Query-Support
704
705 2009-10-14 Tim Englich <tim.englich@intevation.de>
706
707 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java (getPosValue):
708 Add WKT-Syntaxt to Shape ReturnValue
709 * src/test/ressources/QueryExecutorTestCase.properties:
710 Changed Test-Query-Statement for Spatial-Queries with INNERJOINS and ORDER BY
711 * src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java (testSpatialQueryWithoutIntersects):
712 Changed expected Result-Size because of Changes in the QueryStatement which is used.
713 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
714 Added INNERJOIN, ORDER BY and GROUP BY support to Spatial Queries
715
716 2009-10-13 Tim Englich <tim.englich@intevation.de>
717
718 * src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java (testSpatialQueryWithoutIntersects):
719 Added an TaesCase for Querying spatial Data without an spatial restriction
720 * src/test/ressources/QueryExecutorTestCase.properties:
721 Added TestQuery with no spatial restriction
722 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
723 Now it is possible to send spatial Quieries without an spatial restriction in the where clause.
724
725 2009-10-13 Tim Englich <tim.englich@intevation.de>
726
727 Issue 34: SQL Exception in REST Server when accessing geo-backend
728
729 * src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEPoolableObjectFactory.java (validateObject) Edited:
730 Added Tests if the Object is Closed. And add propper instance Tests
731 * src/main/java/de/intevation/gnv/geobackend/sde/connectionpool/ArcSDEConnectionPool.java (initialize):
732 Added further ConfigurationParameters that could be set in the *.properties-File.
733 maxWait, maxIdle, minIdle, testOnBorrow, testOnReturn, testWhileIdle, numTestsPerEvictionRun,
734 timeBetweenEvictionRunsMillis, testWhileIdle
735 * src/test/ressources/ArcSDEConnectionPoolTestCase.properties:
736 Added som Configurationproperties for testing.
737
738
739 2009-10-13 Tim Englich <tim.englich@intevation.de>
740 * src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java (QueryExecutorTestCase):
741 Changed expected Result of Spatial-Query-TestCase because of Changes to the used Query
742 * src/test/ressources/QueryExecutorTestCase.properties:
743 Added SFS-Conformal Query
744 * pom.xml:
745 Added dependency to JTS 1.9
746 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java (executeQuery):
747 Added Spatial-Query-Support for ArcSDE
748 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEUtils.java (createPoints):
749 Switched Method Signature to JTS-Geometry-Support
750 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java (getStringValue):
751 Added String-Support for GeometryObjects
752
753 2009-10-07 Sascha L. Teichmann <sascha.teichmann@intevation.de>
754
755 RELEASE 0.1
756
757 * Changes, NEWS: Summarized changes.
758
759 2009-10-06 Sascha L. Teichmann <sascha.teichmann@intevation.de>
760
761 * Changelog -> ChangeLog: Renamed to make eclipse happy. Unified changelog style.
762
763 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEQuery.java,
764 src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java:
765 Removed needless imports.
766
767 * pom.xml: xmllint-ed
768
769 2009-09-29 Tim Englich <tim.englich@intevation.de>
770
771 * src/main/java/de/intevation/gnv/geobackend/util/DateUtils.java (DATE_PATTERN) Edited:
772 Make the Constants assessible for other Parts of the Project to reduce the TouchPoints for
773 Dateformats.
774
775 2009-09-24 Tim Englich <tim.englich@intevation.de>
776
777 * src/main/java/de/intevation/gnv/geobackend/base/ResultDescriptor.java Edited,
778 src/main/java/de/intevation/gnv/geobackend/base/Result.java Edited,
779 src/main/java/de/intevation/gnv/geobackend/base/DefaultResultDescriptor.java Edited,
780 src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java Edited:
781 Make Classes Serializable for Storing in ArtifactDatabase
782
783 2009-09-21 Tim Englich <tim.englich@intevation.de>
784
785 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java:
786 Added formatted Date Handling in getString Method
787 * src/test/ressources/QueryExecutorTestCase.properties Edited,
788 src/test/java/de/intevation/gnv/geobackend/base/query/QueryExecutorTestCase.java Edited:
789 Some tests for Spatialqueries added
790 * src/main/java/de/intevation/gnv/geobackend/base/query/DefaultQueryExceutor.java Edited:
791 Put the final Querystring into a Logmessage
792
793 2009-09-09 Tim Englich <tim.englich@intevation.de>
794
795 * src/main/java/de/intevation/gnv/geobackend/base/DefaultResult.java (getDate):
796 . Intance Check for DateValues
797 * src/main/java/de/intevation/gnv/geobackend/sde/datasources/SDEResultSet.java (next):
798 Logging removed because the performance slowdown fetching many ResultSets
799
800 2009-09-04 Tim Englich <tim.englich@intevation.de>
801
802 * pom.xml:

http://dive4elements.wald.intevation.org