maguro      2005/02/27 22:24:27

  Modified:    modules/core/src/java/org/openejb GenericEJBContainer.java
  Log:

  Insert the role ref permissions that were previously collected from the DD.
  
  Revision  Changes    Path
  1.41      +13 -4     
openejb/modules/core/src/java/org/openejb/GenericEJBContainer.java
  
  Index: GenericEJBContainer.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/GenericEJBContainer.java,v
  retrieving revision 1.40
  retrieving revision 1.41
  diff -u -r1.40 -r1.41
  --- GenericEJBContainer.java  21 Feb 2005 18:23:05 -0000      1.40
  +++ GenericEJBContainer.java  28 Feb 2005 03:24:26 -0000      1.41
  @@ -49,6 +49,7 @@
   
   import java.lang.reflect.Method;
   import java.rmi.RemoteException;
  +import java.security.PermissionCollection;
   import java.security.Permissions;
   import java.util.Iterator;
   import java.util.Map;
  @@ -68,6 +69,7 @@
   
   import org.apache.commons.logging.Log;
   import org.apache.commons.logging.LogFactory;
  +
   import org.apache.geronimo.common.GeronimoSecurityException;
   import org.apache.geronimo.core.service.Interceptor;
   import org.apache.geronimo.core.service.Invocation;
  @@ -86,6 +88,7 @@
   import org.apache.geronimo.transaction.TrackedConnectionAssociator;
   import org.apache.geronimo.transaction.UserTransactionImpl;
   import org.apache.geronimo.transaction.context.TransactionContextManager;
  +
   import org.openejb.cache.InstancePool;
   import org.openejb.client.EJBObjectHandler;
   import org.openejb.client.EJBObjectProxy;
  @@ -402,6 +405,12 @@
                       }
                   }
   
  +                Map references = securityConfiguration.getRoleReferences();
  +                for (Iterator links = references.keySet().iterator(); 
links.hasNext();) {
  +                    String roleLink = (String) links.next();
  +
  +                    policyConfiguration.addToRole(roleLink, 
(PermissionCollection) references.get(roleLink));
  +                }
   
                   policyConfiguration.commit();
               } catch (ClassNotFoundException e) {
  @@ -484,9 +493,9 @@
   
           infoFactory.addAttribute("classLoader", ClassLoader.class, false);
   
  -        infoFactory.addOperation("getMethodIndex", new Class[] 
{Method.class});
  -        infoFactory.addOperation("getEJBObject", new Class[] {Object.class});
  -        infoFactory.addOperation("getEJBLocalObject", new Class[] 
{Object.class});
  +        infoFactory.addOperation("getMethodIndex", new 
Class[]{Method.class});
  +        infoFactory.addOperation("getEJBObject", new Class[]{Object.class});
  +        infoFactory.addOperation("getEJBLocalObject", new 
Class[]{Object.class});
   
           infoFactory.addOperation("invoke", new Class[]{Invocation.class});
           infoFactory.addOperation("invoke", new Class[]{Method.class, 
Object[].class, Object.class});
  
  
  

Reply via email to