changeset 123:9187abefba8b

Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers. artifacts/trunk@1346 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Tue, 01 Mar 2011 17:14:10 +0000
parents c9cf5f33a230
children caf9f456f7e3
files ChangeLog artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultUser.java artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultUserFactory.java
diffstat 3 files changed, 124 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Mar 01 16:31:52 2011 +0000
+++ b/ChangeLog	Tue Mar 01 17:14:10 2011 +0000
@@ -1,3 +1,13 @@
+2011-03-01  Ingo Weinzierl <ingo@intevation.de>
+
+	* artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultUser.java:
+	  Added a new constructor to create new DefaultUsers with an identifier, a
+	  name and a role.
+
+	* artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultUserFactory.java:
+	  New. A default implementation of a UserFactory that creates
+	  DefaultUsers.
+
 2011-03-01  Ingo Weinzierl <ingo@intevation.de>
 
 	* artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultArtifactCollectionFactory.java:
--- a/artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultUser.java	Tue Mar 01 16:31:52 2011 +0000
+++ b/artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultUser.java	Tue Mar 01 17:14:10 2011 +0000
@@ -37,6 +37,20 @@
 
 
     /**
+     * A constructor that creates a new user.
+     *
+     * @param identifier The uuid of the user.
+     * @param name The name of the user.
+     * @param role The role of the user.
+     */
+    public DefaultUser(String identifier, String name, Document role) {
+        this.identifier = identifier;
+        this.name       = name;
+        this.role       = role;
+    }
+
+
+    /**
      * Returns the identifier of this user.
      *
      * @return the identifier of this user.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultUserFactory.java	Tue Mar 01 17:14:10 2011 +0000
@@ -0,0 +1,100 @@
+/*
+ * Copyright (c) 2010 by Intevation GmbH
+ *
+ * This program is free software under the LGPL (>=v2.1)
+ * Read the file LGPL.txt coming with the software for details
+ * or visit http://www.gnu.org/licenses/ if it does not exist.
+ */
+
+package de.intevation.artifactdatabase;
+
+import org.apache.log4j.Logger;
+
+import org.w3c.dom.Document;
+
+import de.intevation.artifacts.User;
+import de.intevation.artifacts.UserFactory;
+
+
+/**
+ * Default implementation of a UserFactory.
+ *
+ * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
+ */
+public class DefaultUserFactory
+implements   UserFactory
+{
+    /** The logger that is used in this factory.*/
+    private static Logger logger = Logger.getLogger(DefaultUserFactory.class);
+
+
+    /**
+     * Default constructor.
+     */
+    public DefaultUserFactory() {
+    }
+
+
+    /**
+     * This method creates a new DefaultUser with the given identifier, name and
+     * role.
+     *
+     * @param identifier The identifier for the new user.
+     * @param name The name for the new user.
+     * @param role The role for the new user.
+     * @param context The CallContext.
+     */
+    public User createUser(
+        String   identifier,
+        String   name,
+        Document role,
+        Object   context)
+    {
+        logger.debug("DefaultUserFactory.createUser: " + name);
+
+        return new DefaultUser(identifier, name, role);
+    }
+
+
+    /**
+     * Deletes the given user.
+     *
+     * @param user The user to be deleted.
+     * @param context The CallContext.
+     */
+    public void deleteUser(User user, Object context) {
+        logger.debug("DefaultUserFactory.deleteUser: " + user.identifier());
+    }
+
+
+    /**
+     * Returns the user with the given identifier.
+     *
+     * @param identifier The identifier of a user.
+     * @param context The CallContext.
+     *
+     * @return the user with the given identifier.
+     */
+    public User getUser(String identifier, Object context) {
+        logger.debug("DefaultUserFactory.getUser: " + identifier);
+
+        // TODO Implement me
+        return null;
+    }
+
+
+    /**
+     * Returns a list of users available for this application.
+     *
+     * @param context The CallContext.
+     *
+     * @return a list of users.
+     */
+    public User [] getUsers(Object context) {
+        logger.debug("DefaultUserFactory.getUsers");
+
+        // TODO Implement me
+        return null;
+    }
+}
+// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org