You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2012/02/05 13:08:38 UTC
svn commit: r1240707 - in
/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb:
assembler/classic/DelegatePermissionCollection.java
assembler/classic/JaccPermissionsBuilder.java
core/security/jacc/BasicJaccProvider.java
Author: rmannibucau
Date: Sun Feb 5 12:08:37 2012
New Revision: 1240707
URL: http://svn.apache.org/viewvc?rev=1240707&view=rev
Log:
using our factory for all instance of Permissions needed. Using java security permissions by default. Our impl needs to be enhanced to be fast and to get a good behavior
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/DelegatePermissionCollection.java
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JaccPermissionsBuilder.java
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/security/jacc/BasicJaccProvider.java
Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/DelegatePermissionCollection.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/DelegatePermissionCollection.java?rev=1240707&r1=1240706&r2=1240707&view=diff
==============================================================================
--- openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/DelegatePermissionCollection.java (original)
+++ openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/DelegatePermissionCollection.java Sun Feb 5 12:08:37 2012
@@ -34,7 +34,7 @@ public class DelegatePermissionCollectio
return (PermissionCollection) DelegatePermissionCollection.class.getClassLoader()
.loadClass(
System.getProperty(PERMISSION_COLLECTION_CLASS,
- FastPermissionCollection.class.getName()))
+ Permissions.class.getName()))
.newInstance();
} catch (Exception cnfe) {
return new Permissions();
Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JaccPermissionsBuilder.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JaccPermissionsBuilder.java?rev=1240707&r1=1240706&r2=1240707&view=diff
==============================================================================
--- openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JaccPermissionsBuilder.java (original)
+++ openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JaccPermissionsBuilder.java Sun Feb 5 12:08:37 2012
@@ -31,7 +31,6 @@ import javax.security.jacc.PolicyContext
import java.lang.reflect.Method;
import java.security.Permission;
import java.security.PermissionCollection;
-import java.security.Permissions;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.HashMap;
@@ -138,7 +137,7 @@ public class JaccPermissionsBuilder {
for (EnterpriseBeanInfo enterpriseBean : ejbJar.enterpriseBeans) {
BeanContext beanContext = deployments.get(enterpriseBean.ejbDeploymentId);
- Permissions permissions = new Permissions();
+ PermissionCollection permissions = DelegatePermissionCollection.getPermissionCollection();
String ejbName = enterpriseBean.ejbName;
@@ -158,7 +157,7 @@ public class JaccPermissionsBuilder {
return policyContext;
}
- private void addDeclaredEjbPermissions(EjbJarInfo ejbJar, EnterpriseBeanInfo beanInfo, String defaultRole, Permissions notAssigned, PolicyContext policyContext) throws OpenEJBException {
+ private void addDeclaredEjbPermissions(EjbJarInfo ejbJar, EnterpriseBeanInfo beanInfo, String defaultRole, PermissionCollection notAssigned, PolicyContext policyContext) throws OpenEJBException {
PermissionCollection uncheckedPermissions = policyContext.getUncheckedPermissions();
PermissionCollection excludedPermissions = policyContext.getExcludedPermissions();
@@ -215,9 +214,9 @@ public class JaccPermissionsBuilder {
excludedPermissions.add(permission);
} else {
for (String roleName : roleNames) {
- Permissions permissions = (Permissions) rolePermissions.get(roleName);
+ PermissionCollection permissions = rolePermissions.get(roleName);
if (permissions == null) {
- permissions = new Permissions();
+ permissions = DelegatePermissionCollection.getPermissionCollection();
rolePermissions.put(roleName, permissions);
}
permissions.add(permission);
@@ -240,7 +239,7 @@ public class JaccPermissionsBuilder {
PermissionCollection roleLinks = rolePermissions.get(roleLink);
if (roleLinks == null) {
- roleLinks = new Permissions();
+ roleLinks = DelegatePermissionCollection.getPermissionCollection();
rolePermissions.put(roleLink, roleLinks);
}
@@ -262,7 +261,7 @@ public class JaccPermissionsBuilder {
} else {
permissions = rolePermissions.get(defaultRole);
if (permissions == null) {
- permissions = new Permissions();
+ permissions = DelegatePermissionCollection.getPermissionCollection();
rolePermissions.put(defaultRole, permissions);
}
}
@@ -288,11 +287,12 @@ public class JaccPermissionsBuilder {
* @param permissions the permission set to be extended
* @param ejbName the name of the EJB
* @param methodInterface the EJB method interface
+ * @param clazz clazz
*
* @throws org.apache.openejb.OpenEJBException
* in case a class could not be found
*/
- public void addPossibleEjbMethodPermissions(Permissions permissions, String ejbName, String methodInterface, Class clazz) throws OpenEJBException {
+ public void addPossibleEjbMethodPermissions(PermissionCollection permissions, String ejbName, String methodInterface, Class clazz) throws OpenEJBException {
if (clazz == null) return;
for (java.lang.reflect.Method method : clazz.getMethods()) {
String methodIface = ("LocalBean".equals(methodInterface) || "LocalBeanHome".equals(methodInterface)) ? null : methodInterface;
@@ -308,8 +308,8 @@ public class JaccPermissionsBuilder {
* @param permission the permission that is to be used for culling
* @return the culled set of permissions that are not implied by <code>permission</code>
*/
- private Permissions cullPermissions(Permissions toBeChecked, Permission permission) {
- Permissions result = new Permissions();
+ private PermissionCollection cullPermissions(PermissionCollection toBeChecked, Permission permission) {
+ PermissionCollection result = DelegatePermissionCollection.getPermissionCollection();
for (Enumeration e = toBeChecked.elements(); e.hasMoreElements();) {
Permission test = (Permission) e.nextElement();
Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/security/jacc/BasicJaccProvider.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/security/jacc/BasicJaccProvider.java?rev=1240707&r1=1240706&r2=1240707&view=diff
==============================================================================
--- openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/security/jacc/BasicJaccProvider.java (original)
+++ openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/security/jacc/BasicJaccProvider.java Sun Feb 5 12:08:37 2012
@@ -19,15 +19,14 @@ package org.apache.openejb.core.security
import org.apache.openejb.core.security.JaccProvider;
import javax.security.jacc.PolicyConfiguration;
-import javax.security.jacc.PolicyContextException;
import javax.security.jacc.PolicyContext;
-import java.security.PermissionCollection;
+import javax.security.jacc.PolicyContextException;
import java.security.CodeSource;
-import java.security.Policy;
-import java.security.ProtectionDomain;
import java.security.Permission;
-import java.util.Map;
+import java.security.PermissionCollection;
+import java.security.ProtectionDomain;
import java.util.HashMap;
+import java.util.Map;
/**
* @version $Rev$ $Date$
@@ -43,7 +42,7 @@ public class BasicJaccProvider extends J
}
public PolicyConfiguration getPolicyConfiguration(String contextID, boolean remove) throws PolicyContextException {
- BasicPolicyConfiguration configuration = (BasicPolicyConfiguration) configurations.get(contextID);
+ BasicPolicyConfiguration configuration = configurations.get(contextID);
if (configuration == null) {
configuration = createPolicyConfiguration(contextID);