You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ad...@apache.org on 2009/12/24 01:19:39 UTC

svn commit: r893659 - in /ofbiz/branches/executioncontext20090812/framework: api/src/org/ofbiz/api/authorization/ api/src/org/ofbiz/api/context/ context/src/org/ofbiz/context/ entity/src/org/ofbiz/entity/ entityext/src/org/ofbiz/entityext/data/ securit...

Author: adrianc
Date: Thu Dec 24 00:19:39 2009
New Revision: 893659

URL: http://svn.apache.org/viewvc?rev=893659&view=rev
Log:
Simplified some interfaces/classes, reduced some component dependencies.

Removed:
    ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/AccessController.java
    ofbiz/branches/executioncontext20090812/framework/security/src/org/ofbiz/security/ExecutionContext.java
Modified:
    ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/authorization/AuthorizationManager.java
    ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContext.java
    ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContextImpl.java
    ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AccessControllerImpl.java
    ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java
    ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/ExecutionContextImpl.java
    ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/NullAccessController.java
    ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/DelegatorImpl.java
    ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/ExecutionContext.java
    ofbiz/branches/executioncontext20090812/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java
    ofbiz/branches/executioncontext20090812/framework/security/src/org/ofbiz/security/AuthorizationManager.java
    ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ExecutionContext.java
    ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ServiceDispatcher.java

Modified: ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/authorization/AuthorizationManager.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/authorization/AuthorizationManager.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/authorization/AuthorizationManager.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/authorization/AuthorizationManager.java Thu Dec 24 00:19:39 2009
@@ -19,6 +19,7 @@
 package org.ofbiz.api.authorization;
 
 import java.security.AccessControlException;
+import java.security.Permission;
 
 import org.ofbiz.api.context.ExecutionContext;
 
@@ -30,4 +31,27 @@
 	// Get the access controller for an artifact/user combination
 	public AccessController getAccessController (ExecutionContext executionContext) throws AccessControlException;
 
+	// User methods
+    public void createUser(String userLoginId, String password);
+    public void updateUser(String userLoginId, String password);
+    public void deleteUser(String userLoginId);
+
+    // User Group methods
+    public String createUserGroup(String description);
+    public void updateUserGroup(String userGroupId, String description);
+    public void deleteUserGroup(String userGroupId);
+
+    // User Group Assignment methods
+    public void assignUserToGroup(String userLoginId, String userGroupId);
+    public void deleteUserFromGroup(String userLoginId, String userGroupId);
+    public void assignGroupToGroup(String childGroupId, String parentGroupId);
+    public void deleteGroupFromGroup(String childGroupId, String parentGroupId);
+
+    // Permission Assignment methods
+    public void assignUserPermission(String userLoginId, String artifactId, Permission permission);
+    public void deleteUserPermission(String userLoginId, String artifactId, Permission permission);
+    public void assignGroupPermission(String userGroupId, String artifactId, Permission permission);
+    public void deleteGroupPermission(String userGroupId, String artifactId, Permission permission);
+
+
 }

Modified: ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContext.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContext.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContext.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContext.java Thu Dec 24 00:19:39 2009
@@ -23,6 +23,7 @@
 import java.util.TimeZone;
 
 import org.ofbiz.api.authorization.AccessController;
+import org.ofbiz.api.authorization.AuthorizationManager;
 
 /** ExecutionContext interface. The <code>ExecutionContext</code> is a container
  * for frequently used objects, plus it keeps track of the program's
@@ -83,6 +84,12 @@
      */
     public Object getProperty(String key);
 
+    /** Returns the current <code>AuthorizationManager</code> instance.
+     * 
+     * @return The current <code>AuthorizationManager</code> instance
+     */
+    public AuthorizationManager getSecurity();
+
     /** Returns the current <code>TimeZone</code>.
      * 
      * @return The current <code>TimeZone</code>
@@ -98,6 +105,13 @@
      */
     public void pushExecutionArtifact(ExecutionArtifact artifact);
 
+    /**
+     * Resets this <code>ExecutionContext</code> to its default
+     * state. This method is called when an <code>ExecutionContext</code>
+     * instance is about to be reused.
+     */
+    public void reset();
+
     /** Sets the currency unit of measure.
      * 
      * @param currencyUom The ISO currency code
@@ -120,6 +134,12 @@
      */
     public Object setProperty(String key, Object value);
 
+    /** Sets the current <code>AuthorizationManager</code> instance.
+     * 
+     * @param security The new <code>AuthorizationManager</code> instance
+     */
+    public void setSecurity(AuthorizationManager security);
+
     /** Sets the current <code>TimeZone</code>.
      * 
      * @param timeZone The current <code>TimeZone</code>

Modified: ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContextImpl.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContextImpl.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContextImpl.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/api/src/org/ofbiz/api/context/ExecutionContextImpl.java Thu Dec 24 00:19:39 2009
@@ -119,6 +119,14 @@
 		}
 	}
 
+    public void reset() {
+        this.artifactStack.clear();
+        this.currencyUom = "";
+        this.locale = Locale.getDefault();
+        this.properties.clear();
+        this.timeZone = TimeZone.getDefault();
+    }
+
     public void setCurrencyUom(String currencyUom) {
         if (currencyUom != null) {
             this.currencyUom = currencyUom;

Modified: ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AccessControllerImpl.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AccessControllerImpl.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AccessControllerImpl.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AccessControllerImpl.java Thu Dec 24 00:19:39 2009
@@ -26,7 +26,7 @@
 
 import javolution.util.FastMap;
 
-import org.ofbiz.entity.AccessController;
+import org.ofbiz.api.authorization.AccessController;
 import org.ofbiz.base.util.Debug;
 import org.ofbiz.base.util.UtilProperties;
 import org.ofbiz.entity.util.EntityListIterator;

Modified: ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/AuthorizationManagerImpl.java Thu Dec 24 00:19:39 2009
@@ -22,8 +22,8 @@
 import java.security.Permission;
 import java.util.List;
 
+import org.ofbiz.api.authorization.AccessController;
 import org.ofbiz.api.authorization.BasicPermissions;
-import org.ofbiz.entity.AccessController;
 import org.ofbiz.entity.GenericDelegator;
 import org.ofbiz.entity.GenericEntityException;
 import org.ofbiz.entity.GenericValue;
@@ -150,7 +150,7 @@
 	    underConstruction = true;
         // Set up the ExecutionContext for unrestricted access to security-aware artifacts
 	    ExecutionContext localContext = (ExecutionContext) executionContext;
-        AuthorizationManager originalSecurity = localContext.getSecurity();
+        AuthorizationManager originalSecurity = (AuthorizationManager) localContext.getSecurity();
         localContext.setSecurity(new NullAuthorizationManager());
 	    String userLoginId = executionContext.getUserLogin().getString("userLoginId");
 	    GenericDelegator delegator = executionContext.getDelegator();

Modified: ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/ExecutionContextImpl.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/ExecutionContextImpl.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/ExecutionContextImpl.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/ExecutionContextImpl.java Thu Dec 24 00:19:39 2009
@@ -22,17 +22,17 @@
 import java.util.Map;
 import java.util.TimeZone;
 
+import org.ofbiz.api.authorization.AccessController;
+import org.ofbiz.api.authorization.AuthorizationManager;
 import org.ofbiz.base.util.Debug;
-import org.ofbiz.entity.AccessController;
 import org.ofbiz.entity.DelegatorFactory;
 import org.ofbiz.entity.GenericDelegator;
 import org.ofbiz.entity.GenericEntityException;
 import org.ofbiz.entity.GenericValue;
-import org.ofbiz.security.AuthorizationManager;
 import org.ofbiz.security.SecurityFactory;
+import org.ofbiz.service.ExecutionContext;
 import org.ofbiz.service.GenericDispatcher;
 import org.ofbiz.service.LocalDispatcher;
-import org.ofbiz.service.ExecutionContext;
 
 /** An implementation of the <code>ExecutionContext</code> interface. */
 public class ExecutionContextImpl extends org.ofbiz.api.context.ExecutionContextImpl implements ExecutionContext {
@@ -43,6 +43,10 @@
     protected AuthorizationManager security = null;
     protected GenericValue userLogin = null;
 
+	public AccessController getAccessController() {
+        return (AccessController) this.getSecurity().getAccessController(this);
+	}
+
 	public GenericDelegator getDelegator() {
 		if (this.delegator == null) {
 			this.delegator = DelegatorFactory.getGenericDelegator("default", this);
@@ -92,6 +96,15 @@
 		this.setUserLogin((GenericValue) params.get("userLogin"));
 	}
 
+    @Override
+    public void reset() {
+        super.reset();
+        this.delegator = null;
+        this.dispatcher = null;
+        this.security = null;
+        this.userLogin = null;
+    }
+
 	public void setDelegator(GenericDelegator delegator) {
 		if (delegator != null) {
 			delegator.setExecutionContext(this);
@@ -117,7 +130,4 @@
 		}
 	}
 
-	public AccessController getAccessController() {
-        return (AccessController) this.getSecurity().getAccessController(this);
-	}
 }

Modified: ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/NullAccessController.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/NullAccessController.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/NullAccessController.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/context/src/org/ofbiz/context/NullAccessController.java Thu Dec 24 00:19:39 2009
@@ -23,7 +23,7 @@
 import java.util.List;
 import java.util.ListIterator;
 
-import org.ofbiz.entity.AccessController;
+import org.ofbiz.api.authorization.AccessController;
 import org.ofbiz.entity.util.EntityListIterator;
 
 /** An implementation of the <code>AccessController</code> interface

Modified: ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/DelegatorImpl.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/DelegatorImpl.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/DelegatorImpl.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/DelegatorImpl.java Thu Dec 24 00:19:39 2009
@@ -37,6 +37,7 @@
 import javolution.util.FastMap;
 
 import static org.ofbiz.api.authorization.BasicPermissions.*;
+import org.ofbiz.api.authorization.AccessController;
 import org.ofbiz.api.context.GenericExecutionArtifact;
 import org.ofbiz.base.util.Debug;
 import org.ofbiz.base.util.GeneralRuntimeException;
@@ -781,9 +782,9 @@
         ecaRunner.evalRules(EntityEcaHandler.EV_RETURN, EntityEcaHandler.OP_FIND, dummyValue, false);
         this.executionContext.pushExecutionArtifact(modelEntity);
         AccessController accessController = this.executionContext.getAccessController();
-        eli = accessController.applyFilters(eli);
+        ListIterator<GenericValue> li = accessController.applyFilters((ListIterator<GenericValue>) eli);
         this.executionContext.popExecutionArtifact();
-        return eli;
+        return (EntityListIterator) li;
     }
 
     public List<GenericValue> findAll(String entityName) throws GenericEntityException {
@@ -993,7 +994,7 @@
             eli.setDelegator(this);
             this.executionContext.pushExecutionArtifact(new GenericExecutionArtifact("GenericDelegator.findByCondition", entityName));
             AccessController accessController = this.executionContext.getAccessController();
-            eli = accessController.applyFilters(eli);
+            eli = (EntityListIterator) accessController.applyFilters((ListIterator<GenericValue>) eli);
             this.executionContext.popExecutionArtifact();
             List<GenericValue> list = eli.getCompleteList();
             eli.close();
@@ -1314,7 +1315,7 @@
         // TODO: add decrypt fields
         this.executionContext.pushExecutionArtifact(new GenericExecutionArtifact("GenericDelegator.findListIteratorByCondition", modelViewEntity.getEntityName()));
         AccessController accessController = this.executionContext.getAccessController();
-        eli = accessController.applyFilters(eli);
+        eli = (EntityListIterator) accessController.applyFilters((ListIterator<GenericValue>) eli);
         this.executionContext.popExecutionArtifact();
         return eli;
     }

Modified: ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/ExecutionContext.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/ExecutionContext.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/ExecutionContext.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/entity/src/org/ofbiz/entity/ExecutionContext.java Thu Dec 24 00:19:39 2009
@@ -24,8 +24,6 @@
  */
 public interface ExecutionContext extends org.ofbiz.api.context.ExecutionContext {
 
-    public AccessController getAccessController();
-
 	/** Returns the current <code>GenericDelegator</code> instance.
 	 * 
 	 * @return The current <code>GenericDelegator</code> instance

Modified: ofbiz/branches/executioncontext20090812/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java Thu Dec 24 00:19:39 2009
@@ -28,6 +28,7 @@
 
 import javolution.util.FastList;
 
+import org.ofbiz.api.authorization.AccessController;
 import org.ofbiz.base.container.Container;
 import org.ofbiz.base.container.ContainerConfig;
 import org.ofbiz.base.container.ContainerException;
@@ -37,7 +38,6 @@
 import org.ofbiz.base.util.UtilValidate;
 import org.ofbiz.context.AuthorizationManagerImpl;
 import org.ofbiz.context.ExecutionContextImpl;
-import org.ofbiz.entity.AccessController;
 import org.ofbiz.entity.DelegatorFactory;
 import org.ofbiz.entity.GenericDelegator;
 import org.ofbiz.entity.GenericEntityException;

Modified: ofbiz/branches/executioncontext20090812/framework/security/src/org/ofbiz/security/AuthorizationManager.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/security/src/org/ofbiz/security/AuthorizationManager.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/security/src/org/ofbiz/security/AuthorizationManager.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/security/src/org/ofbiz/security/AuthorizationManager.java Thu Dec 24 00:19:39 2009
@@ -18,33 +18,9 @@
  *******************************************************************************/
 package org.ofbiz.security;
 
-import java.security.Permission;
-
 /**
  * AuthorizationManager interface.
  */
 public interface AuthorizationManager extends org.ofbiz.api.authorization.AuthorizationManager, Security {
 
-	// User methods
-	public void createUser(String userLoginId, String password);
-	public void updateUser(String userLoginId, String password);
-	public void deleteUser(String userLoginId);
-
-	// User Group methods
-	public String createUserGroup(String description);
-	public void updateUserGroup(String userGroupId, String description);
-	public void deleteUserGroup(String userGroupId);
-
-	// User Group Assignment methods
-	public void assignUserToGroup(String userLoginId, String userGroupId);
-	public void deleteUserFromGroup(String userLoginId, String userGroupId);
-	public void assignGroupToGroup(String childGroupId, String parentGroupId);
-	public void deleteGroupFromGroup(String childGroupId, String parentGroupId);
-
-	// Permission Assignment methods
-	public void assignUserPermission(String userLoginId, String artifactId, Permission permission);
-	public void deleteUserPermission(String userLoginId, String artifactId, Permission permission);
-	public void assignGroupPermission(String userGroupId, String artifactId, Permission permission);
-	public void deleteGroupPermission(String userGroupId, String artifactId, Permission permission);
-
 }

Modified: ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ExecutionContext.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ExecutionContext.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ExecutionContext.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ExecutionContext.java Thu Dec 24 00:19:39 2009
@@ -27,7 +27,7 @@
  * ExecutionContext Interface. This interface extends the ExecutionContext
  * interface defined in the <code>security</code> component.
  */
-public interface ExecutionContext extends org.ofbiz.security.ExecutionContext {
+public interface ExecutionContext extends org.ofbiz.entity.ExecutionContext {
 
 	/** Returns the current <code>LocalDispatcher</code> instance.
 	 * 

Modified: ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ServiceDispatcher.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ServiceDispatcher.java?rev=893659&r1=893658&r2=893659&view=diff
==============================================================================
--- ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ServiceDispatcher.java (original)
+++ ofbiz/branches/executioncontext20090812/framework/service/src/org/ofbiz/service/ServiceDispatcher.java Thu Dec 24 00:19:39 2009
@@ -30,6 +30,7 @@
 import javolution.util.FastMap;
 
 import org.ofbiz.api.authorization.AccessController;
+import org.ofbiz.security.AuthorizationManager;
 import org.ofbiz.api.context.ExecutionContextFactory;
 import org.ofbiz.api.context.GenericParametersArtifact;
 import org.ofbiz.base.config.GenericConfigException;
@@ -46,7 +47,6 @@
 import org.ofbiz.entity.transaction.DebugXaResource;
 import org.ofbiz.entity.transaction.GenericTransactionException;
 import org.ofbiz.entity.transaction.TransactionUtil;
-import org.ofbiz.security.AuthorizationManager;
 import org.ofbiz.security.Security;
 import org.ofbiz.security.SecurityConfigurationException;
 import org.ofbiz.security.SecurityFactory;