Author: mir
Date: Mon Feb 15 21:52:26 2010
New Revision: 910343

URL: http://svn.apache.org/viewvc?rev=910343&view=rev
Log:
CLEREZZA-107: fixed it for real this time

Modified:
    
incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserLoginNode.java
    
incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserManagerImpl.java

Modified: 
incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserLoginNode.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserLoginNode.java?rev=910343&r1=910342&r2=910343&view=diff
==============================================================================
--- 
incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserLoginNode.java
 (original)
+++ 
incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserLoginNode.java
 Mon Feb 15 21:52:26 2010
@@ -18,6 +18,9 @@
  */
 package org.apache.clerezza.platform.usermanager;
 
+import java.security.AccessControlContext;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
 import org.apache.clerezza.platform.security.UserUtil;
 import org.apache.clerezza.rdf.core.NonLiteral;
 
@@ -46,8 +49,15 @@
 
        @Override
        public GraphNode addUserContext(GraphNode node) {
-               GraphNode agent = 
userManager.getUserGraphNode(UserUtil.getCurrentUserName());
-               if(!(node.getObjects(PLATFORM.user).hasNext())) {
+
+               final AccessControlContext context = 
AccessController.getContext();
+               GraphNode agent = AccessController.doPrivileged(new 
PrivilegedAction<GraphNode>() {
+                       @Override
+                       public GraphNode run() {
+                               return 
userManager.getUserGraphNode(UserUtil.getUserName(context));
+                       }
+               });
+               if (!(node.getObjects(PLATFORM.user).hasNext())) {
                        node.addProperty(PLATFORM.user, agent.getNode());
                } else {
                        Resource user = node.getObjects(PLATFORM.user).next();

Modified: 
incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserManagerImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserManagerImpl.java?rev=910343&r1=910342&r2=910343&view=diff
==============================================================================
--- 
incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserManagerImpl.java
 (original)
+++ 
incubator/clerezza/issues/CLEREZZA-107/org.apache.clerezza.platform.usermanager/src/main/java/org/apache/clerezza/platform/usermanager/UserManagerImpl.java
 Mon Feb 15 21:52:26 2010
@@ -582,22 +582,15 @@
 
        @Override
        public GraphNode getUserGraphNode(final String name) {
-               return AccessController.doPrivileged(new 
PrivilegedAction<GraphNode>() {
-                       @Override
-                       public GraphNode run() {
-                               NonLiteral user = getUserByName(name);
-                               if (user != null) {
-                                       GraphNode userNodeInSystemGraph =
-                                                       new 
GraphNode(getUserByName(name), systemGraph);
-                                       MGraph copiedUserContext = new 
SimpleMGraph
-                                                       
(userNodeInSystemGraph.getNodeContext());
-                                       return new 
GraphNode(userNodeInSystemGraph.getNode(),
-                                                       copiedUserContext);
-                               } else {
-                                       return null;
-                               }
-                       }
-               });
+               NonLiteral user = getUserByName(name);
+               if (user != null) {
+                       GraphNode userNodeInSystemGraph =
+                                       new GraphNode(getUserByName(name), 
systemGraph);
+                       MGraph copiedUserContext = new 
SimpleMGraph(userNodeInSystemGraph.getNodeContext());
+                       return new GraphNode(userNodeInSystemGraph.getNode(),
+                                       copiedUserContext);
+               } else {
+                       return null;
+               }
        }
-
 }


Reply via email to