Mercurial > dive4elements > river
comparison flys-client/src/main/java/de/intevation/flys/client/server/UserServiceImpl.java @ 3548:fed914a42a10
Merged revisions 5373,5377-5378 via svnmerge from
file:///home/clients/bsh/bsh-generischer-viewer/Material/SVN/flys-client/trunk
........
r5373 | ingo | 2012-09-07 11:21:25 +0200 (Fr, 07 Sep 2012) | 1 line
Tagged 'flys-client' as 2.9
........
r5377 | bricks | 2012-09-07 13:37:00 +0200 (Fr, 07 Sep 2012) | 2 lines
Move RemoteServiceServlet to server package
........
r5378 | bricks | 2012-09-07 13:58:11 +0200 (Fr, 07 Sep 2012) | 4 lines
Refactor UserServiceImpl getCurrentUser method
Return the logged in user in getCurrentUser method.
........
flys-client/tags/2.9@5381 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 07 Sep 2012 12:03:15 +0000 |
parents | 3a8884e06aaa |
children | 5e4d91304484 |
comparison
equal
deleted
inserted
replaced
3547:8a16ff3b9a7f | 3548:fed914a42a10 |
---|---|
6 import org.w3c.dom.Element; | 6 import org.w3c.dom.Element; |
7 import org.w3c.dom.NodeList; | 7 import org.w3c.dom.NodeList; |
8 | 8 |
9 import org.apache.log4j.Logger; | 9 import org.apache.log4j.Logger; |
10 | 10 |
11 import com.google.gwt.user.server.rpc.RemoteServiceServlet; | |
12 | |
13 import de.intevation.artifacts.common.ArtifactNamespaceContext; | 11 import de.intevation.artifacts.common.ArtifactNamespaceContext; |
14 import de.intevation.artifacts.common.utils.XMLUtils; | 12 import de.intevation.artifacts.common.utils.XMLUtils; |
15 | 13 |
16 import de.intevation.artifacts.httpclient.exceptions.ConnectionException; | 14 import de.intevation.artifacts.httpclient.exceptions.ConnectionException; |
17 import de.intevation.artifacts.httpclient.http.HttpClient; | |
18 import de.intevation.artifacts.httpclient.http.HttpClientImpl; | |
19 | 15 |
20 import de.intevation.flys.client.client.services.UserService; | 16 import de.intevation.flys.client.client.services.UserService; |
17 import de.intevation.flys.client.server.auth.UserClient; | |
21 import de.intevation.flys.client.shared.exceptions.AuthenticationException; | 18 import de.intevation.flys.client.shared.exceptions.AuthenticationException; |
22 import de.intevation.flys.client.shared.model.DefaultUser; | 19 import de.intevation.flys.client.shared.model.DefaultUser; |
23 import de.intevation.flys.client.shared.model.User; | 20 import de.intevation.flys.client.shared.model.User; |
24 | |
25 | 21 |
26 /** | 22 /** |
27 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> | 23 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
28 */ | 24 */ |
29 public class UserServiceImpl | 25 public class UserServiceImpl |
38 public User getCurrentUser(String locale) | 34 public User getCurrentUser(String locale) |
39 throws AuthenticationException | 35 throws AuthenticationException |
40 { | 36 { |
41 String url = getServletContext().getInitParameter("server-url"); | 37 String url = getServletContext().getInitParameter("server-url"); |
42 | 38 |
43 HttpClient client = new HttpClientImpl(url); | 39 UserClient client = new UserClient(url); |
40 de.intevation.flys.client.server.auth.User loginuser = getUser(); | |
44 | 41 |
45 try { | 42 try { |
46 Document users = (Document) client.listUsers(); | 43 Element user = client.findUser(loginuser); |
47 | 44 |
48 String XPATH_USERS = "/art:users/art:user"; | 45 if (user != null) { |
49 | |
50 NodeList theUsers = (NodeList) XMLUtils.xpath( | |
51 users, | |
52 XPATH_USERS, | |
53 XPathConstants.NODESET, | |
54 ArtifactNamespaceContext.INSTANCE); | |
55 | |
56 if (theUsers != null && theUsers.getLength() > 0) { | |
57 Element user = (Element)theUsers.item(0); | |
58 | |
59 String uuid = user.getAttributeNS( | 46 String uuid = user.getAttributeNS( |
60 ArtifactNamespaceContext.NAMESPACE_URI, "uuid"); | 47 ArtifactNamespaceContext.NAMESPACE_URI, "uuid"); |
61 String name = user.getAttributeNS( | 48 String name = user.getAttributeNS( |
62 ArtifactNamespaceContext.NAMESPACE_URI, "name"); | 49 ArtifactNamespaceContext.NAMESPACE_URI, "name"); |
63 | 50 |