diff artifacts/src/main/java/de/intevation/artifacts/ArtifactFactory.java @ 1:11c82d3f125e

Checked in the central interfaces of the artifact system. artifacts/trunk@6 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 02 Sep 2009 14:03:48 +0000
parents
children 13a12b607baf
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/artifacts/src/main/java/de/intevation/artifacts/ArtifactFactory.java	Wed Sep 02 14:03:48 2009 +0000
@@ -0,0 +1,31 @@
+package de.intevation.artifacts;
+
+/**
+ * Interface of an artifact producing factory.
+ *
+ * @author Sascha L. Teichmann (sascha.teichmann@intevation.de)
+ */
+public interface ArtifactFactory
+{
+    /**
+     * The short name of this factory.
+     * @return the name of this factory.
+     */
+    String getName();
+
+    /**
+     * Description of this factory.
+     * @return description of the factory.
+     */
+    String getDescription();
+
+    /**
+     * Create a new artifact of certain type, given a general purpose context and
+     * an identifier.
+     * @param context a context from the ArtifactDatabase.
+     * @param identifier unique identifer for the new artifact
+     * @return a new {@linkplain de.intevation.artifacts.Artifact Artifact}
+     */
+    Artifact createArtifact(Object context, String identifier);
+}
+// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8:

http://dive4elements.wald.intevation.org