comparison CHANGES @ 439:d044ee5bc2d8

Moved Changes to CHANGES.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Wed, 17 Oct 2012 22:24:07 +0200
parents Changes@c53ec9fdc758
children
comparison
equal deleted inserted replaced
438:f3bf22423c95 439:d044ee5bc2d8
1 2011-09-19 RELEASE 1.4
2
3 !! Release 1.4 is no longer API compatible with old versions of this module !!
4
5 NEW:
6
7 * Modified the signature of Artifact.setup() -> Artifact.setup(CallMeta).
8 The CallMeta is required for I18N support while setting up an
9 Artifact. !! THIS MODIFICATION BREAKS THE CURRENT API !!
10
11 * Modified the signature of Service.setup() -> Service.setup(GlobalContext).
12
13 * Introduced a LifetimeListener interface: applications can register
14 instances of this interface to execute tasks after the system goes and
15 and before the system goes down.
16
17 * Introduced a BackendListener interface: applications can register
18 instances of this interface to execute tasks after an event has been
19 fired. See the JavaDoc of BackendListener for detailed descriptions of
20 the events.
21
22 * Introduced "Hooks": Hooks can be used to execute tasks at a specific
23 point in time. In our cases, Hooks can be executed before/after feed()
24 and advance() operations.
25
26 * Introduced a GlobalContext interface for the global context object:
27 this interface describes two method to put new objects into this
28 context and a method to retrieve objects from this context.
29
30 * Introduced a CreationFilter: this filter might be used to create
31 Artifacts with restricted Outputs/Facets.
32
33 * Introduced a Message interface: Messages might be used by background
34 threads to provide information about the process (e.g. status reports).
35
36 * Improved ArtifactDatabaseImpl to support background messages.
37
38 * Improved the CallContext interface: added a method isInBackground()
39 that determines if the current Artifact has started a background
40 thread which is still processing.
41
42 * Improved the CallContext interface: added methods to add/retrieve
43 background messages.
44
45 * Improved the State interface: added a endOfLife() method that should
46 be called by owner Artifacts.
47
48 * Improved the interface of Facets: added a deepCopy() method to be able
49 to clone Facets.
50
51 * Improved the interface of Facets: added a toXML() method.
52
53 * Improved the ArtifactDatabase: added a method loadAllArtifacts(ArtifactLoadedCallback)
54 to load all Artifacts of an ArtifactCollection.
55
56 * Improved XMLUtils: added support for variables in XPath expression.
57
58 * Added a FileTools helper class that implements some convinience
59 functions to work with files.
60
61 * Some little improvements in ClientProtocolUtils.
62
63 * Bumped SLF4J up to 2.0.7.
64
65 * Bumped H2 up to 1.3.158.
66
67 * Bumped Apache DBCP up to 1.4.
68
69 * Bumped PostgreSQL driver up to 8.4-702.jdbc4.
70
71
72 FIXED:
73
74 * flys/issue20 (Versions-Clash bei slf4j verhindert Start des Artefakt-Servers.)
75
76
77
78 2011-06-27 RELEASE 1.3
79
80 NEW:
81
82 * Bumped Restlet to version 2.0.7.
83
84 * Use a Jetty server by default to handle HTTP requests.
85
86 * Introduced a config option that allows to switch the HTTP server
87 manually.
88
89 * Introduced a config option that allows to limit the max number of
90 threads used by the Restlet server. Defaults to 1024.
91
92 * New REST interface to set the time-to-live of a Collection. This
93 operation takes a java native long value or one of the strings "INF" -
94 which means a Collection lives forever - or "DEFAULT" which means to
95 reset the time-to-live to the default value configured in the artifact
96 server.
97
98 * New REST interface to set the name of a Collection.
99
100 * Improved the ClientProtocolUtils to create documents for the operation
101 to set the Collection's time-to-live.
102
103 * The time-to-live of Collections is accessible in Collection objects.
104
105 * Introduced a "creation" timestamp for CollectionItems.
106
107 * Facets got a new property "index".
108
109
110 FIXED:
111
112 * A a new out() method is called that takes the "type" parameter specified in
113 the REST url to specify the concrete output type. This parameter has
114 not been used until now.
115
116 * flys/issue75 Fixed SQL syntax error in trigger creation.
117
118
119
120 2011-05-13 RELEASE 1.2
121
122 NEW:
123
124 * Introduced "facets" as a new concept to select only parts/concrete
125 types of an Artifact's output. E.g. a computation might return data
126 that is used to draw two curves into a chart. With a "facet", just a
127 single curve might be selected to be drawn into the chart.
128
129 * New REST interfaces to set/get attributes of an ArtifactCollection.
130
131 * Artifacts that live in ArtifactCollections don't die (because of their
132 last_access time). A database trigger is used to update their
133 last_access time if their owner ArtifactCollection is updated.
134
135 * DatabaseCleaner removes outdated ArtifactCollections.
136
137 * XML documents stored aside users, collections and collection items are
138 compressed to reduce i/o costs.
139
140 * Introduced a listener mechanism that is called if a context is
141 created/closed. This listener might be implemented in concrete
142 artifact packages.
143
144 * Improvements in the ClientProtocolUtils: new functions to create
145 special xml documents
146
147
148 FIXED:
149
150 * flys/issue8 (Cleanup des DatabaseCleaner schlägt fehl)
151
152 * flys/issue9 (Fehler beim Laden von Artefakten - NO SUCH ARTIFACT obwohl Artefakt in DB vorhanden)
153
154
155 2011-03-30 RELEASE 1.1
156
157 2010-04-28 RELEASE 1.0
158
159 New:
160
161 * The path to database in the configuration can be relative to the
162 central configuration document using ${artifacts.config.dir} as
163 root.
164
165 * New interfaces to export and import artifacts:
166
167 HTTP GET '/export/{uuid}' returns an xml document representing
168 the state of an artifact
169 HTTP POST '/import' takes an xml document that have
170 been created by /export before
171
172 The export mechanism uses a secret configured in the configuration
173 to sign export documents. An artifact import fails if the
174 signature of the xml document is not valid.
175
176 * The time to live of an artifact is queriable at the CallContext
177 object.
178
179
180 Added:
181
182 * JavaDoc documentation
183
184
185
186 2010-03-08 RELEASE 0.5
187
188
189 2010-01-27 RELEASE 0.4
190
191 New:
192
193 * Extended XML helper utilities a bit more
194 * Added a new interface describing services
195 via XML documents via /services
196
197
198 2009-12-17 RELEASE 0.3
199
200 New:
201
202 * Extended XML helper utilities a bit
203 * Added a new general proxy artifact.
204
205 FIXED:
206
207 * issue106: Konfiguration der GNV-Chart-Templates gehört nicht in das Artefakt-Framework
208
209 2009-11-13 RELEASE 0.2
210
211 New:
212
213 * Configuration documents can be made relativ to
214 ${artifacts.config.dir}
215
216 * Splitting up configuration of artifacts in depence to the
217 product.
218
219 * Added a first HOWTO for setting up the environemt and the
220 artifact server
221
222 2009-10-07 RELEASE 0.1
223
224 New:
225
226 * Two sub projects: 'artifacts' and 'artifact-database'
227
228 - 'artifacts' is a set of generic interfaces modelling
229 the workflow to parameterize a process and producing
230 outputs.
231
232 An artifact is created via factories. It describes
233 itself via 'describe', it is parameterized via
234 'feed' and brought to new states with 'advance'.
235 Once able to produce output 'out' returns the
236 requested product.
237
238 - 'artifact-database' is the default implemention
239 of the workflow described with 'artifact'.
240
241 * artifact-database persists artifacts with a H2-database
242 [http://www.h2database.com] (default) or a
243 PostgeSQL 8.3+ database [http://www.postgresql.org/] (optional)
244
245 * artifacts may spawn background threads to copy with long running
246 processes. After finishing work they are able to re-synchronize
247 themselves to the artifact database.
248
249 * artifact-database is accessible via an HTTP REST server
250 implemented on top of the Restlet API http://www.restlet.org/
251 It has to be started as a service. Default TCP port: 8181
252
253 HTTP GET '/factories' returns list of available factories.
254 HTTP GET '/create' creates new artifact.
255 HTTP GET '/artifact/{uuid}' returns a description of an artifact.
256 HTTP POST '/artifact/{uuid}' modifies an artifact ('feed', 'advance')
257 HTTP POST '/artifact/{uuid}/{out}' delivers output for an artifact.
258
259 * artifact-database is configured with as XML file named conf.xml
260 (default placement in directory $HOME/.artitactdb, directory
261 may be changed with system property "artifact.database.dir")

http://dive4elements.wald.intevation.org