Mercurial > dive4elements > framework
annotate Changes @ 53:fecd142b6856 0.1
RELEASE 0.1
artifacts/trunk@201 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Wed, 07 Oct 2009 10:59:19 +0000 |
parents | 458bffbf57c0 |
children | cf9848c85755 |
rev | line source |
---|---|
53
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
1 2009-10-07 RELEASE 0.1 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
2 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
3 New: |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
4 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
5 * Two sub projects: 'artifacts' and 'artifact-database' |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
6 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
7 - 'artifacts' is a set of generic interfaces modelling |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
8 the workflow to parameterize a process and producing |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
9 outputs. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
10 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
11 An artifact is created via factories. It describes |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
12 itself via 'describe', it is parameterized via |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
13 'feed' and brought to new states with 'advance'. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
14 Once able to produce output 'out' returns the |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
15 requested product. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
16 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
17 - 'artifact-database' is the default implemention |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
18 of the workflow described with 'artifact'. |
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 * artifact-database persists artifacts with a H2-database |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
21 [http://www.h2database.com] (default) or a |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
22 PostgeSQL 8.3+ database [http://www.postgresql.org/] (optional) |
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 * 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
|
25 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
|
26 themselves to the artifact database. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
27 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
28 * artifact-database is accessible via an HTTP REST server |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
29 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
|
30 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
|
31 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
32 HTTP GET '/factories' returns list of available factories. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
33 HTTP GET '/create' creates new artifact. |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
34 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
|
35 HTTP POST '/artifact/{uuid}' modifies an artifact ('feed', 'advance') |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
36 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
|
37 |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
38 * 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
|
39 (default placement in directory $HOME/.artitactdb, directory |
fecd142b6856
RELEASE 0.1
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
0
diff
changeset
|
40 may be changed with system property "artifact.database.dir") |