svn commit: r899550 - in /ofbiz/branches/executioncontext20091231/framework: api/src/org/ofbiz/api/authorization/ api/src/org/ofbiz/api/context/ context/src/org/ofbiz/context/

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r899550 - in /ofbiz/branches/executioncontext20091231/framework: api/src/org/ofbiz/api/authorization/ api/src/org/ofbiz/api/context/ context/src/org/ofbiz/context/

adrianc
Author: adrianc
Date: Fri Jan 15 07:34:15 2010
New Revision: 899550

URL: http://svn.apache.org/viewvc?rev=899550&view=rev
Log:
Some more code cleanups.

Modified:
    ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/AdminPermission.java
    ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/BasicPermission.java
    ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/OfbizSecurityTransform.java
    ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsSet.java
    ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsUnion.java
    ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/context/ArtifactPath.java
    ofbiz/branches/executioncontext20091231/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java

Modified: ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/AdminPermission.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/AdminPermission.java?rev=899550&r1=899549&r2=899550&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/AdminPermission.java (original)
+++ ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/AdminPermission.java Fri Jan 15 07:34:15 2010
@@ -38,7 +38,7 @@
         try {
             AdminPermission that = (AdminPermission) obj;
             return this.permissionString.equals(that.permissionString);
-        } catch (Exception e) {}
+        } catch (ClassCastException e) {}
         return false;
     }
 

Modified: ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/BasicPermission.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/BasicPermission.java?rev=899550&r1=899549&r2=899550&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/BasicPermission.java (original)
+++ ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/BasicPermission.java Fri Jan 15 07:34:15 2010
@@ -41,7 +41,7 @@
         try {
             BasicPermission that = (BasicPermission) obj;
             return this.permissionString.equals(that.permissionString);
-        } catch (Exception e) {}
+        } catch (ClassCastException e) {}
         return false;
     }
 

Modified: ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/OfbizSecurityTransform.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/OfbizSecurityTransform.java?rev=899550&r1=899549&r2=899550&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/OfbizSecurityTransform.java (original)
+++ ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/OfbizSecurityTransform.java Fri Jan 15 07:34:15 2010
@@ -77,7 +77,7 @@
             try {
                 StringModel modelObj = (StringModel) freeMarkerObject;
                 result = modelObj.getAsString();
-            } catch (Exception e) {
+            } catch (ClassCastException e) {
                 try {
                     SimpleScalar scalarObj = (SimpleScalar) freeMarkerObject;
                     result = scalarObj.getAsString();

Modified: ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsSet.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsSet.java?rev=899550&r1=899549&r2=899550&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsSet.java (original)
+++ ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsSet.java Fri Jan 15 07:34:15 2010
@@ -49,7 +49,7 @@
         try {
             PermissionsSet that = (PermissionsSet) obj;
             return this.permissionsSet.equals(that.permissionsSet);
-        } catch (Exception e) {}
+        } catch (ClassCastException e) {}
         return false;
     }
 

Modified: ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsUnion.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsUnion.java?rev=899550&r1=899549&r2=899550&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsUnion.java (original)
+++ ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/authorization/PermissionsUnion.java Fri Jan 15 07:34:15 2010
@@ -53,7 +53,7 @@
                 }
             }
             return false;
-        } catch (Exception e) {}
+        } catch (ClassCastException e) {}
         try {
             PermissionsIntersection permissionsIntersection = (PermissionsIntersection) permission;
             for (Permission perm : permissionsIntersection.getPermissionsSet()) {
@@ -62,7 +62,7 @@
                 }
             }
             return true;
-        } catch (Exception e) {}
+        } catch (ClassCastException e) {}
         for (Permission perm : this.permissionsSet) {
             if (perm.implies(permission)) {
                 return true;

Modified: ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/context/ArtifactPath.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/context/ArtifactPath.java?rev=899550&r1=899549&r2=899550&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/context/ArtifactPath.java (original)
+++ ofbiz/branches/executioncontext20091231/framework/api/src/org/ofbiz/api/context/ArtifactPath.java Fri Jan 15 07:34:15 2010
@@ -33,7 +33,7 @@
 
     protected int currentIndex = 0;
     protected final String[] pathElementArray;
-    protected FastList<Integer> stack = null;
+    protected FastList<Integer> stack = FastList.newInstance();
 
     public ArtifactPath(String artifactPath) {
         this.pathElementArray = artifactPath.split(PATH_ELEMENT_SEPARATOR);
@@ -84,15 +84,12 @@
     }
 
     public void restoreState() {
-        if (this.stack != null && !this.stack.isEmpty()) {
+        if (!this.stack.isEmpty()) {
             this.currentIndex = this.stack.removeLast();
         }
     }
 
     public void saveState() {
-        if (this.stack == null) {
-            this.stack = FastList.newInstance();
-        }
         this.stack.addLast(this.currentIndex);
     }
 

Modified: ofbiz/branches/executioncontext20091231/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20091231/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java?rev=899550&r1=899549&r2=899550&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20091231/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java (original)
+++ ofbiz/branches/executioncontext20091231/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java Fri Jan 15 07:34:15 2010
@@ -22,6 +22,9 @@
 import java.security.Permission;
 import java.sql.Timestamp;
 import java.util.List;
+import java.util.Map;
+
+import javolution.util.FastMap;
 
 import org.ofbiz.api.authorization.AccessController;
 import org.ofbiz.api.authorization.AuthorizationManager;
@@ -48,17 +51,24 @@
     // Right now this class implements permission checking only.
 
     public static final String module = AuthorizationManagerImpl.class.getName();
-    protected static final UtilCache<String, AccessController> userPermCache = UtilCache.createUtilCache("authorization.UserPermissions");
+    protected static final UtilCache<String, Map<String, AccessController>> userPermCache = UtilCache.createUtilCache("authorization.UserPermissions");
 
     protected static AccessController getAccessController(String userLoginId) throws AuthorizationManagerException {
-        AccessController accessController = userPermCache.get(userLoginId);
+        Delegator delegator = ThreadContext.getDelegator();
+        Map<String, AccessController> controllerMap = userPermCache.get(delegator.getDelegatorName());
+        if (controllerMap == null) {
+            synchronized (userPermCache) {
+                controllerMap = FastMap.newInstance();
+                userPermCache.put(delegator.getDelegatorName(), controllerMap);
+            }
+        }
+        AccessController accessController = controllerMap.get(userLoginId);
         if (accessController != null) {
             return accessController;
         }
-        synchronized (userPermCache) {
+        synchronized (controllerMap) {
+            ThreadContext.runUnprotected();
             try {
-                ThreadContext.runUnprotected();
-                Delegator delegator = ThreadContext.getDelegator();
                 PathNode node = PathNode.getInstance(ArtifactPath.PATH_ROOT);
                 // Process group membership permissions first
                 List<GenericValue> groupMemberships = delegator.findList("UserToUserGroupRel", EntityCondition.makeCondition(UtilMisc.toMap("userLoginId", userLoginId)), null, null, null, false);
@@ -69,7 +79,7 @@
                 List<GenericValue> permissionValues = delegator.findList("UserToArtifactPermRel", EntityCondition.makeCondition(UtilMisc.toMap("userLoginId", userLoginId)), null, null, null, false);
                 setPermissions(userLoginId, node, permissionValues);
                 accessController = new AccessControllerImpl(node);
-                userPermCache.put(userLoginId, accessController);
+                controllerMap.put(userLoginId, accessController);
             } catch (GenericEntityException e) {
                 throw new AuthorizationManagerException(e);
             } finally {
@@ -80,8 +90,8 @@
     }
 
     public static void logIncident(Permission permission) throws AccessControlException {
+        ThreadContext.runUnprotected();
         try {
-            ThreadContext.runUnprotected();
             PathNode node = PathNode.getInstance(ArtifactPath.PATH_ROOT);
             TreeBuilder builder = new TreeBuilder(node);
             Delegator delegator = ThreadContext.getDelegator();