Mercurial > dive4elements > framework
annotate Changes @ 58:39fec7d714dc
Added a real artifact proxy class to be more flexible with artifact replacements
in artifact databases.
artifacts/trunk@359 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 23 Nov 2009 11:15:44 +0000 |
parents | cf9848c85755 |
children | 824dd614e647 |
rev | line source |
---|---|
57
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
1 2009-11-13 RELEASE 0.2 |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
2 |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
3 New: |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
4 |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
5 * Configuration documents can be made relativ to |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
6 ${artifacts.config.dir} |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
7 |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
8 * Splitting up configuration of artifacts in depence to the |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
9 product. |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
10 |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
11 * Added a first HOWTO for setting up the environemt and the |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
12 artifact server |
cf9848c85755
RELEASE 0.2: Summarized NEWS and Changes
Hans Plum <hans.plum@intevation.de>
parents:
53
diff
changeset
|
13 |
53
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
14 2009-10-07 RELEASE 0.1 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
15 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
16 New: |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
17 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
18 * Two sub projects: 'artifacts' and 'artifact-database' |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
19 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
20 - 'artifacts' is a set of generic interfaces modelling |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
21 the workflow to parameterize a process and producing |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
22 outputs. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
23 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
24 An artifact is created via factories. It describes |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
25 itself via 'describe', it is parameterized via |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
26 'feed' and brought to new states with 'advance'. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
27 Once able to produce output 'out' returns the |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
28 requested product. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
29 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
30 - 'artifact-database' is the default implemention |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
31 of the workflow described with 'artifact'. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
32 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
33 * artifact-database persists artifacts with a H2-database |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
34 [http://www.h2database.com] (default) or a |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
35 PostgeSQL 8.3+ database [http://www.postgresql.org/] (optional) |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
36 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
37 * artifacts may spawn background threads to copy with long running |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
38 processes. After finishing work they are able to re-synchronize |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
39 themselves to the artifact database. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
40 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
41 * artifact-database is accessible via an HTTP REST server |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
42 implemented on top of the Restlet API http://www.restlet.org/ |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
43 It has to be started as a service. Default TCP port: 8181 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
44 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
45 HTTP GET '/factories' returns list of available factories. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
46 HTTP GET '/create' creates new artifact. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
47 HTTP GET '/artifact/{uuid}' returns a description of an artifact. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
48 HTTP POST '/artifact/{uuid}' modifies an artifact ('feed', 'advance') |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
49 HTTP POST '/artifact/{uuid}/{out}' delivers output for an artifact. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
50 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
51 * artifact-database is configured with as XML file named conf.xml |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
52 (default placement in directory $HOME/.artitactdb, directory |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
53 may be changed with system property "artifact.database.dir") |