Mercurial > dive4elements > framework
view Changes @ 311:1d517e051e95
Made backend listeners loadable at boot time.
artifacts/trunk@2436 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 01 Aug 2011 14:17:09 +0000 |
parents | bf787e8c4f78 |
children | c53ec9fdc758 |
line wrap: on
line source
2011-06-27 RELEASE 1.3 NEW: * Bumped Restlet to version 2.0.7. * Use a Jetty server by default to handle HTTP requests. * Introduced a config option that allows to switch the HTTP server manually. * Introduced a config option that allows to limit the max number of threads used by the Restlet server. Defaults to 1024. * New REST interface to set the time-to-live of a Collection. This operation takes a java native long value or one of the strings "INF" - which means a Collection lives forever - or "DEFAULT" which means to reset the time-to-live to the default value configured in the artifact server. * New REST interface to set the name of a Collection. * Improved the ClientProtocolUtils to create documents for the operation to set the Collection's time-to-live. * The time-to-live of Collections is accessible in Collection objects. * Introduced a "creation" timestamp for CollectionItems. * Facets got a new property "index". FIXED: * A a new out() method is called that takes the "type" parameter specified in the REST url to specify the concrete output type. This parameter has not been used until now. * flys/issue75 Fixed SQL syntax error in trigger creation. 2011-05-13 RELEASE 1.2 NEW: * Introduced "facets" as a new concept to select only parts/concrete types of an Artifact's output. E.g. a computation might return data that is used to draw two curves into a chart. With a "facet", just a single curve might be selected to be drawn into the chart. * New REST interfaces to set/get attributes of an ArtifactCollection. * Artifacts that live in ArtifactCollections don't die (because of their last_access time). A database trigger is used to update their last_access time if their owner ArtifactCollection is updated. * DatabaseCleaner removes outdated ArtifactCollections. * XML documents stored aside users, collections and collection items are compressed to reduce i/o costs. * Introduced a listener mechanism that is called if a context is created/closed. This listener might be implemented in concrete artifact packages. * Improvements in the ClientProtocolUtils: new functions to create special xml documents FIXED: * flys/issue8 (Cleanup des DatabaseCleaner schlägt fehl) * flys/issue9 (Fehler beim Laden von Artefakten - NO SUCH ARTIFACT obwohl Artefakt in DB vorhanden) 2011-03-30 RELEASE 1.1 2010-04-28 RELEASE 1.0 New: * The path to database in the configuration can be relative to the central configuration document using ${artifacts.config.dir} as root. * New interfaces to export and import artifacts: HTTP GET '/export/{uuid}' returns an xml document representing the state of an artifact HTTP POST '/import' takes an xml document that have been created by /export before The export mechanism uses a secret configured in the configuration to sign export documents. An artifact import fails if the signature of the xml document is not valid. * The time to live of an artifact is queriable at the CallContext object. Added: * JavaDoc documentation 2010-03-08 RELEASE 0.5 2010-01-27 RELEASE 0.4 New: * Extended XML helper utilities a bit more * Added a new interface describing services via XML documents via /services 2009-12-17 RELEASE 0.3 New: * Extended XML helper utilities a bit * Added a new general proxy artifact. FIXED: * issue106: Konfiguration der GNV-Chart-Templates gehört nicht in das Artefakt-Framework 2009-11-13 RELEASE 0.2 New: * Configuration documents can be made relativ to ${artifacts.config.dir} * Splitting up configuration of artifacts in depence to the product. * Added a first HOWTO for setting up the environemt and the artifact server 2009-10-07 RELEASE 0.1 New: * Two sub projects: 'artifacts' and 'artifact-database' - 'artifacts' is a set of generic interfaces modelling the workflow to parameterize a process and producing outputs. An artifact is created via factories. It describes itself via 'describe', it is parameterized via 'feed' and brought to new states with 'advance'. Once able to produce output 'out' returns the requested product. - 'artifact-database' is the default implemention of the workflow described with 'artifact'. * artifact-database persists artifacts with a H2-database [http://www.h2database.com] (default) or a PostgeSQL 8.3+ database [http://www.postgresql.org/] (optional) * artifacts may spawn background threads to copy with long running processes. After finishing work they are able to re-synchronize themselves to the artifact database. * artifact-database is accessible via an HTTP REST server implemented on top of the Restlet API http://www.restlet.org/ It has to be started as a service. Default TCP port: 8181 HTTP GET '/factories' returns list of available factories. HTTP GET '/create' creates new artifact. HTTP GET '/artifact/{uuid}' returns a description of an artifact. HTTP POST '/artifact/{uuid}' modifies an artifact ('feed', 'advance') HTTP POST '/artifact/{uuid}/{out}' delivers output for an artifact. * artifact-database is configured with as XML file named conf.xml (default placement in directory $HOME/.artitactdb, directory may be changed with system property "artifact.database.dir")