annotate artifact-database/src/main/java/de/intevation/artifactdatabase/DefaultUserFactory.java @ 133:2950c6011afa

Fixed typo in keys. Removed superfluous identifier in UserFactory.createUser(). Added backend stubs for handling of users. artifacts/trunk@1358 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 02 Mar 2011 10:07:37 +0000
parents 147610c43863
children 19267b9960c3
rev   line source
123
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 /*
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2 * Copyright (c) 2010 by Intevation GmbH
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
3 *
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
4 * This program is free software under the LGPL (>=v2.1)
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
5 * Read the file LGPL.txt coming with the software for details
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
6 * or visit http://www.gnu.org/licenses/ if it does not exist.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
7 */
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
8
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
9 package de.intevation.artifactdatabase;
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import org.apache.log4j.Logger;
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
12
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 import org.w3c.dom.Document;
130
147610c43863 The UserFactory got a setup() method that is called while bootstrap.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 123
diff changeset
14 import org.w3c.dom.Node;
123
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
16 import de.intevation.artifacts.User;
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17 import de.intevation.artifacts.UserFactory;
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20 /**
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21 * Default implementation of a UserFactory.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22 *
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
24 */
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25 public class DefaultUserFactory
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26 implements UserFactory
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27 {
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28 /** The logger that is used in this factory.*/
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
29 private static Logger logger = Logger.getLogger(DefaultUserFactory.class);
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 /**
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 * Default constructor.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34 */
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35 public DefaultUserFactory() {
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
36 }
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38
130
147610c43863 The UserFactory got a setup() method that is called while bootstrap.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 123
diff changeset
39 public void setup(Document config, Node factoryNode) {
147610c43863 The UserFactory got a setup() method that is called while bootstrap.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 123
diff changeset
40 logger.debug("DefaultUserFactory.setup");
147610c43863 The UserFactory got a setup() method that is called while bootstrap.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 123
diff changeset
41 }
147610c43863 The UserFactory got a setup() method that is called while bootstrap.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 123
diff changeset
42
147610c43863 The UserFactory got a setup() method that is called while bootstrap.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 123
diff changeset
43
123
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
44 /**
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45 * This method creates a new DefaultUser with the given identifier, name and
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46 * role.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 *
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 * @param identifier The identifier for the new user.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49 * @param name The name for the new user.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50 * @param role The role for the new user.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
51 * @param context The CallContext.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52 */
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53 public User createUser(
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54 String name,
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
55 Document role,
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56 Object context)
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57 {
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58 logger.debug("DefaultUserFactory.createUser: " + name);
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59
133
2950c6011afa Fixed typo in keys.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 130
diff changeset
60 String identifier = "FIXME";
2950c6011afa Fixed typo in keys.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 130
diff changeset
61
123
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62 return new DefaultUser(identifier, name, role);
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 }
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66 /**
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
67 * Deletes the given user.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
68 *
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
69 * @param user The user to be deleted.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
70 * @param context The CallContext.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
71 */
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72 public void deleteUser(User user, Object context) {
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 logger.debug("DefaultUserFactory.deleteUser: " + user.identifier());
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74 }
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
75
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
77 /**
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
78 * Returns the user with the given identifier.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79 *
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
80 * @param identifier The identifier of a user.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
81 * @param context The CallContext.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
82 *
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
83 * @return the user with the given identifier.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
84 */
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85 public User getUser(String identifier, Object context) {
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86 logger.debug("DefaultUserFactory.getUser: " + identifier);
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
87
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88 // TODO Implement me
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
89 return null;
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90 }
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
93 /**
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94 * Returns a list of users available for this application.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95 *
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96 * @param context The CallContext.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97 *
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98 * @return a list of users.
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
99 */
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
100 public User [] getUsers(Object context) {
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101 logger.debug("DefaultUserFactory.getUsers");
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
103 // TODO Implement me
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
104 return null;
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
105 }
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
106 }
9187abefba8b Added a default implementation of a UserFactory and a new constructor to create new DefaultUsers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
107 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org