KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jahia > soap > UserManager


1 package org.jahia.soap;
2
3 import org.jahia.services.usermanager.JahiaGroupManagerService;
4 import org.jahia.services.usermanager.JahiaGroup;
5 import org.jahia.services.usermanager.JahiaUser;
6 import org.jahia.services.usermanager.JahiaUserManagerService;
7 import org.jahia.registries.ServicesRegistry;
8
9 import java.util.*;
10
11 /**
12  *
13  *
14  * Created by IntelliJ IDEA.
15  * Date: Dec 1, 2003
16  * Copyright Codeva 2003
17  * @author Thomas Draier
18  */

19 public class UserManager {
20     private static org.apache.log4j.Logger logger =
21             org.apache.log4j.Logger.getLogger(UserManager.class);
22
23     public UserManager() {
24     }
25
26     public boolean authenticate(String JavaDoc userKey, String JavaDoc password) {
27         JahiaUser jahiaUser = ServicesRegistry.getInstance().getJahiaUserManagerService().lookupUser(userKey);
28         if (jahiaUser == null) {
29             return false;
30         }
31         return jahiaUser.verifyPassword(password);
32     }
33
34     public String JavaDoc[] getUsers(int siteId) {
35         Vector v = ServicesRegistry.getInstance().getJahiaUserManagerService().getUsernameList(siteId);
36         String JavaDoc[] r = new String JavaDoc[v.size()];
37         v.toArray(r);
38         return r;
39     }
40
41     public String JavaDoc[] getGroups(int siteId) {
42         Vector v = ServicesRegistry.getInstance().getJahiaGroupManagerService().getGroupnameList(siteId);
43         String JavaDoc[] r = new String JavaDoc[v.size()];
44         v.toArray(r);
45         return r;
46     }
47
48     public String JavaDoc[] getMembersWithKey(String JavaDoc groupKey) {
49         JahiaGroupManagerService gm = ServicesRegistry.getInstance().getJahiaGroupManagerService();
50         JahiaGroup g = gm.lookupGroup(groupKey);
51         Set s = g.getRecursiveUserMembers();
52         String JavaDoc[] res = new String JavaDoc[s.size()];
53         int i = 0;
54         for (Iterator iterator = s.iterator(); iterator.hasNext();) {
55             JahiaUser jahiaUser = (JahiaUser) iterator.next();
56             res[i++] = jahiaUser.getUserKey();
57         }
58         return res;
59     }
60
61     public String JavaDoc[] getMembers(String JavaDoc groupName, int siteId) {
62         JahiaGroupManagerService gm = ServicesRegistry.getInstance().getJahiaGroupManagerService();
63         JahiaGroup g = gm.lookupGroup(siteId, groupName);
64         Set s = g.getRecursiveUserMembers();
65         String JavaDoc[] res = new String JavaDoc[s.size()];
66         int i = 0;
67         for (Iterator iterator = s.iterator(); iterator.hasNext();) {
68             JahiaUser jahiaUser = (JahiaUser) iterator.next();
69             res[i++] = jahiaUser.getUsername();
70         }
71         return res;
72     }
73
74
75     public String JavaDoc[] getMembershipWithKey(String JavaDoc userKey) {
76         String JavaDoc[] res = new java.lang.String JavaDoc[0];
77         try {
78             JahiaUserManagerService um = ServicesRegistry.getInstance().getJahiaUserManagerService();
79             JahiaUser u = um.lookupUser(userKey);
80             JahiaGroupManagerService gm = ServicesRegistry.getInstance().getJahiaGroupManagerService();
81             Vector v = gm.getUserMembership(u);
82             res = new String JavaDoc[v.size()];
83             v.toArray(res);
84         } catch (Exception JavaDoc e) {
85             e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
86
}
87         return res;
88     }
89
90     public String JavaDoc[] getMembership(String JavaDoc userName, int siteId) {
91         String JavaDoc[] res = new java.lang.String JavaDoc[0];
92         try {
93             JahiaUserManagerService um = ServicesRegistry.getInstance().getJahiaUserManagerService();
94             JahiaUser u = um.lookupUser(siteId, userName);
95             if (u ==null) {
96                 u = um.lookupUser(0, userName);
97             }
98             JahiaGroupManagerService gm = ServicesRegistry.getInstance().getJahiaGroupManagerService();
99             Vector v = gm.getUserMembership(u);
100             res = new String JavaDoc[v.size()];
101             int i = 0;
102             for (Iterator iterator = v.iterator(); iterator.hasNext();) {
103                 String JavaDoc gkey = (String JavaDoc) iterator.next();
104                 JahiaGroup g = ServicesRegistry.getInstance().getJahiaGroupManagerService().lookupGroup(gkey);
105                 res[i++] = g.getGroupname();
106             }
107         } catch (Exception JavaDoc e) {
108             e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
109
}
110         return res;
111     }
112
113     public boolean isMember(String JavaDoc userName, String JavaDoc groupName, int siteId) {
114         boolean res = false;
115         try {
116             JahiaUserManagerService um = ServicesRegistry.getInstance().getJahiaUserManagerService();
117             JahiaUser u = um.lookupUser(siteId, userName);
118             if (u ==null) {
119                 u = um.lookupUser(0, userName);
120             }
121             JahiaGroupManagerService gm = ServicesRegistry.getInstance().getJahiaGroupManagerService();
122             JahiaGroup g = gm.lookupGroup(siteId, groupName);
123             if (g ==null) {
124                 g = gm.lookupGroup(0, groupName);
125             }
126             res = g.isMember(u);
127         } catch (Exception JavaDoc e) {
128             e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
129
}
130         return res;
131     }
132
133     public Map getPropertiesWithKey(String JavaDoc userKey ) {
134         JahiaUser jahiaUser = ServicesRegistry.getInstance().getJahiaUserManagerService().lookupUser(userKey);
135         return jahiaUser.getProperties();
136     }
137
138     public Map getProperties(String JavaDoc userName, int siteId ) {
139         JahiaUser jahiaUser = ServicesRegistry.getInstance().getJahiaUserManagerService().lookupUser(siteId, userName);
140         if (jahiaUser ==null) {
141             jahiaUser = ServicesRegistry.getInstance().getJahiaUserManagerService().lookupUser(0, userName);
142         }
143         return jahiaUser.getProperties();
144     }
145
146     public Map getMembersPropertiesWithKey(String JavaDoc groupKey) {
147         JahiaGroupManagerService gm = ServicesRegistry.getInstance().getJahiaGroupManagerService();
148         JahiaGroup g = gm.lookupGroup(groupKey);
149         Set s = g.getRecursiveUserMembers();
150         Map res = new HashMap();
151
152         for (Iterator iterator = s.iterator(); iterator.hasNext();) {
153             JahiaUser jahiaUser = (JahiaUser) iterator.next();
154             res.put(jahiaUser.getUserKey(),jahiaUser.getProperties());
155         }
156         return res;
157     }
158
159     public Map getMembersProperties(String JavaDoc groupName,int siteId) {
160         JahiaGroupManagerService gm = ServicesRegistry.getInstance().getJahiaGroupManagerService();
161         JahiaGroup g = gm.lookupGroup(siteId, groupName);
162         Set s = g.getRecursiveUserMembers();
163         Map res = new HashMap();
164
165         for (Iterator iterator = s.iterator(); iterator.hasNext();) {
166             JahiaUser jahiaUser = (JahiaUser) iterator.next();
167             res.put(jahiaUser.getUserKey(),jahiaUser.getProperties());
168         }
169         return res;
170     }
171
172     public boolean checkPassword(String JavaDoc userName, String JavaDoc password, int siteId) {
173         JahiaUser jahiaUser = ServicesRegistry.getInstance().getJahiaUserManagerService().lookupUser(siteId, userName);
174         if (jahiaUser ==null) {
175             jahiaUser = ServicesRegistry.getInstance().getJahiaUserManagerService().lookupUser(0, userName);
176         }
177         return jahiaUser.verifyPassword(password);
178     }
179
180 }
181
Popular Tags