Author: dblevins
Date: Sat Jun 21 17:17:46 2008
New Revision: 670279
URL: http://svn.apache.org/viewvc?rev=670279&view=rev
Log:
OPENEJB-829: Automatically add an @DeclareRole ref for any role listed in
@RolesAllowed
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java?rev=670279&r1=670278&r2=670279&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
Sat Jun 21 17:17:46 2008
@@ -1063,6 +1063,13 @@
methodPermission.getRoleName().addAll(asList(rolesAllowed.value()));
methodPermission.getMethod().add(new
org.apache.openejb.jee.Method(ejbName, clazz.getName(), "*"));
assemblyDescriptor.getMethodPermission().add(methodPermission);
+
+ // Automatically add a role ref for any role listed in
RolesAllowed
+ RemoteBean remoteBean = (RemoteBean) bean;
+ List<SecurityRoleRef> securityRoleRefs =
remoteBean.getSecurityRoleRef();
+ for (String role : rolesAllowed.value()) {
+ securityRoleRefs.add(new SecurityRoleRef(role));
+ }
}
if (permitAll != null) {
@@ -1099,6 +1106,13 @@
methodPermission.getRoleName().addAll(asList(rolesAllowed.value()));
methodPermission.getMethod().add(new
org.apache.openejb.jee.Method(ejbName, method));
assemblyDescriptor.getMethodPermission().add(methodPermission);
+
+ // Automatically add a role ref for any role listed in
RolesAllowed
+ RemoteBean remoteBean = (RemoteBean) bean;
+ List<SecurityRoleRef> securityRoleRefs =
remoteBean.getSecurityRoleRef();
+ for (String role : rolesAllowed.value()) {
+ securityRoleRefs.add(new SecurityRoleRef(role));
+ }
}
for (Method method :
classFinder.findAnnotatedMethods(PermitAll.class)) {