Mercurial > dive4elements > framework
view artifacts/src/main/java/de/intevation/artifacts/ArtifactDatabase.java @ 75:d4c4c23847f5
Extended the Artifact-Interface-Method setup to be able to put the XML-Document which can contain further Data
to the Artifact-Implementation.
artifacts/trunk@649 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Mon, 01 Feb 2010 13:54:05 +0000 |
parents | ce488c1d3fc4 |
children | 48d1a9a082c2 |
line wrap: on
line source
package de.intevation.artifacts; import java.io.IOException; import java.io.OutputStream; import org.w3c.dom.Document; /** * Interface of an artifact managing database. * * @author Sascha L. Teichmann (sascha.teichmann@intevation.de) */ public interface ArtifactDatabase { public interface DeferredOutput { void write(OutputStream output) throws IOException; } // interface DeferredOut /** * List of artifact factories names accessible through the database. * @return pairs of names and descriptions of the factories. */ String [][] artifactFactoryNamesAndDescriptions(); ArtifactFactory getInternalArtifactFactory(String factoryName); Document createArtifactWithFactory(String factory, CallMeta callMeta, Document data) throws ArtifactDatabaseException; Document describe(String artifact, Document data, CallMeta callMeta) throws ArtifactDatabaseException; Document advance(String artifact, Document target, CallMeta callMeta) throws ArtifactDatabaseException; Document feed(String artifact, Document data, CallMeta callMeta) throws ArtifactDatabaseException; DeferredOutput out(String artifact, Document format, CallMeta callMeta) throws ArtifactDatabaseException; String [][] serviceNamesAndDescriptions(); Document process(String service, Document input, CallMeta callMeta) throws ArtifactDatabaseException; } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8: