[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