[jboss-cvs] JBossAS SVN: r67280 - in projects/metadata/trunk/src: main/java/org/jboss/metadata/annotation/creator/ejb and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Nov 20 03:26:34 EST 2007
Author: scott.stark at jboss.org
Date: 2007-11-20 03:26:34 -0500 (Tue, 20 Nov 2007)
New Revision: 67280
Added:
projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/PermitAllProcessor.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailListener.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailMsg.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyEntityBean.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyMDB.java
Modified:
projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/AbstractComponentProcessor.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/AbstractEnterpriseBeanProcessor.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/EntityProcessor.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/RolesAllowedProcessor.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/AnnotationEjb3UnitTestCase.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyStatelessBean.java
Log:
Update the annotation mapping tests
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/AbstractComponentProcessor.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/AbstractComponentProcessor.java 2007-11-20 08:22:47 UTC (rev 67279)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/AbstractComponentProcessor.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -279,7 +279,7 @@
}
}
- if(cls.getSuperclass() != null)
+ if(cls.getSuperclass() != null && cls.getSuperclass() != Object.class)
processorCount += processClass(metaData, cls.getSuperclass(), processorType);
return processorCount;
}
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/AbstractEnterpriseBeanProcessor.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/AbstractEnterpriseBeanProcessor.java 2007-11-20 08:22:47 UTC (rev 67279)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/AbstractEnterpriseBeanProcessor.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -67,6 +67,9 @@
// @RolesAllowed
addTypeProcessor(new RolesAllowedProcessor<Class>(finder));
addMethodProcessor(new RolesAllowedProcessor<Method>(finder));
+ // @PermitAll
+ addTypeProcessor(new PermitAllProcessor<Class>(finder));
+ addMethodProcessor(new PermitAllProcessor<Method>(finder));
}
/**
@@ -113,7 +116,7 @@
}
super.processClass(excludes, beanClass);
- // @RolesAllowed
+ // @RolesAllowed, @PermitAll
MethodPermissionsMetaData permissions = assembly.getMethodPermissions();
if(permissions == null)
{
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/EntityProcessor.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/EntityProcessor.java 2007-11-20 08:22:47 UTC (rev 67279)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/EntityProcessor.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -61,6 +61,7 @@
metaData.setEjbName(annotation.name());
else
metaData.setEjbName(beanClass.getSimpleName());
+ metaData.setEjbClass(beanClass.getName());
return metaData;
}
Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/PermitAllProcessor.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/PermitAllProcessor.java (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/PermitAllProcessor.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -0,0 +1,82 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.metadata.annotation.creator.ejb;
+
+import java.lang.reflect.AnnotatedElement;
+import java.lang.reflect.Method;
+
+import javax.annotation.security.PermitAll;
+
+import org.jboss.annotation.javaee.Descriptions;
+import org.jboss.metadata.annotation.creator.AbstractFinderUser;
+import org.jboss.metadata.annotation.creator.Processor;
+import org.jboss.metadata.annotation.creator.ProcessorUtils;
+import org.jboss.metadata.annotation.finder.AnnotationFinder;
+import org.jboss.metadata.ejb.spec.MethodPermissionsMetaData;
+import org.jboss.metadata.ejb.spec.MethodPermissionMetaData;
+import org.jboss.metadata.ejb.spec.MethodMetaData;
+import org.jboss.metadata.ejb.spec.MethodsMetaData;
+import org.jboss.metadata.javaee.spec.EmptyMetaData;
+
+/**
+ * @PermitAll processor
+ *
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class PermitAllProcessor<T extends AnnotatedElement>
+ extends AbstractFinderUser
+ implements Processor<MethodPermissionsMetaData, T>
+{
+ public PermitAllProcessor(AnnotationFinder<AnnotatedElement> finder)
+ {
+ super(finder);
+ }
+
+
+ public void process(MethodPermissionsMetaData metaData, T type)
+ {
+ PermitAll permit = finder.getAnnotation(type, PermitAll.class);
+ if(permit == null)
+ return;
+
+ Method method = null;
+ if(type instanceof Method)
+ method = (Method) type;
+
+ String ejbName = EjbNameThreadLocal.ejbName.get();
+ MethodMetaData mmd = ProcessorUtils.createMethod(ejbName, method);
+ MethodPermissionMetaData perm = new MethodPermissionMetaData();
+ MethodsMetaData methods = perm.getMethods();
+ if(methods == null)
+ {
+ methods = new MethodsMetaData();
+ perm.setMethods(methods);
+ }
+ perm.setUnchecked(new EmptyMetaData());
+ Descriptions descriptions = ProcessorUtils.getDescription("@PermitAll for: "+type);
+ mmd.setDescriptions(descriptions);
+ methods.add(mmd);
+ metaData.add(perm);
+ }
+
+}
Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/PermitAllProcessor.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/RolesAllowedProcessor.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/RolesAllowedProcessor.java 2007-11-20 08:22:47 UTC (rev 67279)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/ejb/RolesAllowedProcessor.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -23,6 +23,8 @@
import java.lang.reflect.AnnotatedElement;
import java.lang.reflect.Method;
+import java.util.HashSet;
+import java.util.Set;
import javax.annotation.security.RolesAllowed;
@@ -54,8 +56,8 @@
public void process(MethodPermissionsMetaData metaData, T type)
{
- RolesAllowed deny = finder.getAnnotation(type, RolesAllowed.class);
- if(deny == null)
+ RolesAllowed allowed = finder.getAnnotation(type, RolesAllowed.class);
+ if(allowed == null)
return;
Method method = null;
@@ -71,9 +73,14 @@
methods = new MethodsMetaData();
perm.setMethods(methods);
}
+ HashSet<String> roles = new HashSet<String>();
+ for(String role : allowed.value())
+ roles.add(role);
+ perm.setRoles(roles);
Descriptions descriptions = ProcessorUtils.getDescription("@RolesAllowed for: "+type);
mmd.setDescriptions(descriptions);
methods.add(mmd);
+ metaData.add(perm);
}
}
Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/AnnotationEjb3UnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/AnnotationEjb3UnitTestCase.java 2007-11-20 08:22:47 UTC (rev 67279)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/AnnotationEjb3UnitTestCase.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -29,6 +29,7 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
+import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
@@ -38,6 +39,9 @@
import org.jboss.metadata.common.ejb.IEnterpriseBeanMetaData;
import org.jboss.metadata.ejb.jboss.JBoss50DTDMetaData;
import org.jboss.metadata.ejb.jboss.JBoss50MetaData;
+import org.jboss.metadata.ejb.spec.ActivationConfigMetaData;
+import org.jboss.metadata.ejb.spec.ActivationConfigPropertiesMetaData;
+import org.jboss.metadata.ejb.spec.ActivationConfigPropertyMetaData;
import org.jboss.metadata.ejb.spec.AnnotationMergedView;
import org.jboss.metadata.ejb.spec.AssemblyDescriptorMetaData;
import org.jboss.metadata.ejb.spec.ContainerTransactionMetaData;
@@ -46,8 +50,15 @@
import org.jboss.metadata.ejb.spec.EjbJar30MetaData;
import org.jboss.metadata.ejb.spec.EjbJarMetaData;
import org.jboss.metadata.ejb.spec.EnterpriseBeanMetaData;
+import org.jboss.metadata.ejb.spec.EntityBeanMetaData;
+import org.jboss.metadata.ejb.spec.ExcludeListMetaData;
import org.jboss.metadata.ejb.spec.InitMethodMetaData;
import org.jboss.metadata.ejb.spec.InitMethodsMetaData;
+import org.jboss.metadata.ejb.spec.MessageDrivenBeanMetaData;
+import org.jboss.metadata.ejb.spec.MethodMetaData;
+import org.jboss.metadata.ejb.spec.MethodParametersMetaData;
+import org.jboss.metadata.ejb.spec.MethodPermissionMetaData;
+import org.jboss.metadata.ejb.spec.MethodPermissionsMetaData;
import org.jboss.metadata.ejb.spec.MethodsMetaData;
import org.jboss.metadata.ejb.spec.RemoveMethodMetaData;
import org.jboss.metadata.ejb.spec.RemoveMethodsMetaData;
@@ -236,7 +247,7 @@
assertEquals("tearDown", preDestroy.getMethodName());
assertEquals(MyStatelessBean.class.getName(), preDestroy.getClassName());
- // MyServlet @RunAs
+ // @RunAs
SecurityIdentityMetaData identity = bean.getSecurityIdentity();
assertNotNull(identity);
RunAsMetaData runAs = identity.getRunAs();
@@ -244,6 +255,38 @@
assertEquals("InternalUser", runAs.getRoleName());
}
+ private void assertMyEntity(IEnterpriseBeanMetaData enterpriseBean)
+ {
+ assertTrue(enterpriseBean instanceof EntityBeanMetaData);
+ EntityBeanMetaData bean = (EntityBeanMetaData) enterpriseBean;
+ assertEquals(MyEntityBean.class.getName(), bean.getEjbClass());
+ assertEquals("MyEntity", bean.getEjbName());
+ }
+
+ private void assertMyMDB(IEnterpriseBeanMetaData enterpriseBean)
+ {
+ assertTrue(enterpriseBean instanceof MessageDrivenBeanMetaData);
+ MessageDrivenBeanMetaData bean = (MessageDrivenBeanMetaData) enterpriseBean;
+ assertEquals(MyMDB.class.getName(), bean.getEjbClass());
+ assertEquals("MailMDB", bean.getEjbName());
+ assertEquals(false, bean.isJMS());
+ assertEquals(IMailListener.class.getName(), bean.getMessagingType());
+ ActivationConfigMetaData config = bean.getActivationConfig();
+ ActivationConfigMetaData expected = new ActivationConfigMetaData();
+ ActivationConfigPropertiesMetaData props = new ActivationConfigPropertiesMetaData();
+ ActivationConfigPropertyMetaData p1 = new ActivationConfigPropertyMetaData();
+ p1.setName("p1");
+ p1.setValue("v1");
+ props.add(p1);
+ ActivationConfigPropertyMetaData p2 = new ActivationConfigPropertyMetaData();
+ p2.setName("p2");
+ p2.setValue("v2");
+ props.add(p2);
+ expected.setActivationConfigProperties(props);
+ assertEquals(expected, config);
+ assertEquals("java:/mdbs/MailMDB", bean.getMappedName());
+ }
+
private Collection<Class> loadClassesFromCurrentClassDir()
{
// In real life the deployer will pass probably pass a class scanner
@@ -291,7 +334,7 @@
Collection<Class> classes = loadClassesFromCurrentClassDir();
System.out.println("Processing classes: "+classes);
- //enableTrace("org.jboss.metadata.annotation.creator");
+ enableTrace("org.jboss.metadata.annotation.creator");
EjbJar30Creator creator = new EjbJar30Creator(finder);
EjbJar30MetaData metaData = creator.create(classes);
@@ -308,12 +351,14 @@
System.out.println(transaction);
}
- assertEquals(5, metaData.getEnterpriseBeans().size());
+ assertEquals(7, metaData.getEnterpriseBeans().size());
assertMyStatefulBean(metaData.getEnterpriseBean("AnotherName"));
assertMyStateless21Bean(metaData.getEnterpriseBean("MyStateless21Bean"));
- assertMyStatelessBean(metaData.getEnterpriseBean("MyStatelessBean"));
-
+ assertMyStatelessBean(metaData.getEnterpriseBean("MyStatelessBean"));
+ assertMyEntity(metaData.getEnterpriseBean("MyEntity"));
+ assertMyMDB(metaData.getEnterpriseBean("MailMDB"));
+
AssemblyDescriptorMetaData assembly = metaData.getAssemblyDescriptor();
assertNotNull("no application exceptions defined", assembly.getApplicationExceptions());
assertEquals(1, assembly.getApplicationExceptions().size());
@@ -329,6 +374,44 @@
SecurityRoleMetaData role2 = securityRoles.get("Role2");
assertNotNull(role2);
assertEquals("Role2", role2.getRoleName());
+
+ // @DenyAll
+ ExcludeListMetaData excludes = assembly.getExcludeList();
+ assertNotNull(excludes);
+ MethodsMetaData excludedMethods = excludes.getMethods();
+ assertEquals(2, excludedMethods.size());
+ MethodMetaData m0 = excludedMethods.get(0);
+ assertEquals("MyStatelessBean", m0.getEjbName());
+ assertEquals("denyAll", m0.getMethodName());
+ MethodParametersMetaData noargs = new MethodParametersMetaData();
+ assertEquals(noargs, m0.getMethodParams());
+ MethodMetaData m1 = excludedMethods.get(1);
+ assertEquals("MyStatelessBean", m1.getEjbName());
+ assertEquals("excluded", m1.getMethodName());
+ assertEquals(noargs, m1.getMethodParams());
+
+ // @PermitAll, @RolesAllowed({"AccessRole1", "AccessRole2"})
+ MethodPermissionsMetaData allPerms = assembly.getMethodPermissions();
+ assertEquals(8, allPerms.size());
+ MethodPermissionsMetaData perms = assembly.getMethodPermissionsByEjbName("MyStatelessBean");
+ assertEquals(2, perms.size());
+ MethodPermissionMetaData permitAll = null;
+ MethodPermissionMetaData rolesAllowed = null;
+ for(MethodPermissionMetaData mp : perms)
+ {
+ if(mp.matches("permitAll", null, null))
+ permitAll = mp;
+ if(mp.matches("rolesAllowed", null, null))
+ rolesAllowed = mp;
+ }
+ assertNotNull(permitAll);
+ assertTrue(permitAll.isNotChecked());
+ assertTrue(permitAll.isNotChecked("permitAll", null, null));
+ assertNotNull(rolesAllowed);
+ HashSet<String> roles = new HashSet<String>();
+ roles.add("AccessRole1");
+ roles.add("AccessRole2");
+ assertEquals(roles, rolesAllowed.getRoles());
}
/**
@@ -363,3 +446,4 @@
assertEquals("InternalUser", runAs.getRoleName());
}
}
+
Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailListener.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailListener.java (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailListener.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -0,0 +1,33 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.metadata.annotation.ejb3;
+
+/**
+ * Dummy mail listener interface for a custom mdb
+ *
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface IMailListener
+{
+ public void onMessage(IMailMsg msg);
+}
Property changes on: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailListener.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailMsg.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailMsg.java (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailMsg.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -0,0 +1,31 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.metadata.annotation.ejb3;
+
+/**
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface IMailMsg
+{
+
+}
Property changes on: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/IMailMsg.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyEntityBean.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyEntityBean.java (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyEntityBean.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -0,0 +1,34 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.metadata.annotation.ejb3;
+
+import javax.persistence.Entity;
+
+/**
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+ at Entity(name="MyEntity")
+public class MyEntityBean
+{
+
+}
Property changes on: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyEntityBean.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyMDB.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyMDB.java (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyMDB.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -0,0 +1,46 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.metadata.annotation.ejb3;
+
+import javax.ejb.ActivationConfigProperty;
+import javax.ejb.MessageDriven;
+
+/**
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+ at MessageDriven(
+ name="MailMDB",
+ messageListenerInterface=IMailListener.class,
+ activationConfig={
+ @ActivationConfigProperty(propertyName="prop1", propertyValue="value1"),
+ @ActivationConfigProperty(propertyName="prop2", propertyValue="value2")
+ },
+ mappedName="java:/mdbs/MailMDB",
+ description="A custom IMailListener MDB"
+)
+public class MyMDB implements IMailListener
+{
+ public void onMessage(IMailMsg msg)
+ {
+ }
+}
Property changes on: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyMDB.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyStatelessBean.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyStatelessBean.java 2007-11-20 08:22:47 UTC (rev 67279)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/ejb3/MyStatelessBean.java 2007-11-20 08:26:34 UTC (rev 67280)
@@ -28,6 +28,9 @@
import javax.annotation.Resource;
import javax.annotation.Resources;
import javax.annotation.security.DeclareRoles;
+import javax.annotation.security.DenyAll;
+import javax.annotation.security.PermitAll;
+import javax.annotation.security.RolesAllowed;
import javax.annotation.security.RunAs;
import javax.ejb.EJB;
import javax.ejb.Init;
@@ -118,4 +121,22 @@
{
}
+ @DenyAll
+ public void denyAll()
+ {
+ }
+ @DenyAll
+ public void excluded()
+ {
+ }
+
+ @PermitAll
+ public void permitAll()
+ {
+ }
+
+ @RolesAllowed({"AccessRole1", "AccessRole2"})
+ public void rolesAllowed()
+ {
+ }
}
More information about the jboss-cvs-commits
mailing list