[jboss-cvs] JBossAS SVN: r72612 - in projects/metadata/trunk/src: test/java/org/jboss/test/metadata/annotation/client and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Apr 23 04:42:45 EDT 2008
Author: scott.stark at jboss.org
Date: 2008-04-23 04:42:45 -0400 (Wed, 23 Apr 2008)
New Revision: 72612
Modified:
projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/AbstractEJBProcessor.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/client/AnnotationClientUnitTestCase.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/client/basic/Client.java
Log:
JBMETA-24, AbstractEJBProcessor was missing injection target processing
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/AbstractEJBProcessor.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/AbstractEJBProcessor.java 2008-04-23 08:08:32 UTC (rev 72611)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/annotation/creator/AbstractEJBProcessor.java 2008-04-23 08:42:45 UTC (rev 72612)
@@ -22,6 +22,7 @@
package org.jboss.metadata.annotation.creator;
import java.lang.reflect.AnnotatedElement;
+import java.util.Set;
import javax.ejb.EJB;
@@ -30,6 +31,7 @@
import org.jboss.metadata.javaee.spec.AnnotatedEJBReferencesMetaData;
import org.jboss.metadata.javaee.spec.DescriptionImpl;
import org.jboss.metadata.javaee.spec.DescriptionsImpl;
+import org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData;
/**
* @author Scott.Stark at jboss.org
@@ -98,6 +100,11 @@
if(annotation.mappedName().length() > 0)
ref.setMappedName(annotation.mappedName());
+ String name = ProcessorUtils.getName(element);
+ Set<ResourceInjectionTargetMetaData> injectionTargets = ProcessorUtils.getInjectionTargets(name, element);
+ if(injectionTargets != null)
+ ref.setInjectionTargets(injectionTargets);
+
return ref;
}
}
Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/client/AnnotationClientUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/client/AnnotationClientUnitTestCase.java 2008-04-23 08:08:32 UTC (rev 72611)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/client/AnnotationClientUnitTestCase.java 2008-04-23 08:42:45 UTC (rev 72612)
@@ -23,6 +23,7 @@
import java.lang.reflect.AnnotatedElement;
import java.util.Collection;
+import java.util.Set;
import org.jboss.metadata.annotation.creator.client.ApplicationClient5MetaDataCreator;
import org.jboss.metadata.annotation.finder.AnnotationFinder;
@@ -45,7 +46,9 @@
import org.jboss.metadata.javaee.spec.LifecycleCallbacksMetaData;
import org.jboss.metadata.javaee.spec.MessageDestinationMetaData;
import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData;
import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
+import org.jboss.test.metadata.annotation.client.basic.Client;
import org.jboss.test.metadata.annotation.client.basic.ResourceIF;
import org.jboss.test.metadata.common.PackageScanner;
import org.jboss.test.metadata.common.ScanPackage;
@@ -89,10 +92,28 @@
ApplicationClient5MetaData clientMD = creator.create(classes);
System.out.println(clientMD.getAnnotatedEjbReferences());
assertEquals(3, clientMD.getAnnotatedEjbReferences().size());
+
AnnotatedEJBReferenceMetaData resourceMethodBean = clientMD.getAnnotatedEjbReferences().get("resourceMethodBean");
assertNotNull(resourceMethodBean);
assertEquals(ResourceIF.class, resourceMethodBean.getBeanInterface());
assertEquals("ResourceOnMethodBean", resourceMethodBean.getLink());
+ Set<ResourceInjectionTargetMetaData> resourceMethodBeanTargets = resourceMethodBean.getInjectionTargets();
+ assertNotNull(resourceMethodBeanTargets);
+ assertEquals(1, resourceMethodBeanTargets.size());
+ ResourceInjectionTargetMetaData method = resourceMethodBeanTargets.iterator().next();
+ assertEquals(Client.class.getName(), method.getInjectionTargetClass());
+ assertEquals("setResourceMethodBean", method.getInjectionTargetName());
+
+ AnnotatedEJBReferenceMetaData resourceFieldBean = clientMD.getAnnotatedEjbReferences().get("resourceFieldBean");
+ assertNotNull(resourceFieldBean);
+ assertEquals("ResourceOnFieldBean", resourceFieldBean.getLink());
+ Set<ResourceInjectionTargetMetaData> resourceFieldBeanTargets = resourceFieldBean.getInjectionTargets();
+ assertNotNull(resourceFieldBeanTargets);
+ assertEquals(1, resourceFieldBeanTargets.size());
+ ResourceInjectionTargetMetaData field = resourceFieldBeanTargets.iterator().next();
+ assertEquals(Client.class.getName(), field.getInjectionTargetClass());
+ assertEquals("resourceFieldBean", field.getInjectionTargetName());
+
AnnotatedEJBReferenceMetaData resourceClassBean = clientMD.getAnnotatedEjbReferences().get("ejb/resourceClassBean");
assertNotNull(resourceClassBean);
assertEquals("ResourcesOnClassBean", resourceClassBean.getLink());
Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/client/basic/Client.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/client/basic/Client.java 2008-04-23 08:08:32 UTC (rev 72611)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/client/basic/Client.java 2008-04-23 08:42:45 UTC (rev 72612)
@@ -32,7 +32,6 @@
*/
public class Client
{
- @EJB(beanName = "ResourceOnMethodBean")
private static ResourceIF resourceMethodBean;
@EJB(beanName = "ResourceOnFieldBean")
@@ -41,6 +40,12 @@
@EJB(name="ejb/resourceClassBean", beanName = "ResourcesOnClassBean", mappedName="refs/resources/ResourcesOnClassBean")
private static ResourceIF resourceClassBean;
+ @EJB(beanName = "ResourceOnMethodBean")
+ private static void setResourceMethodBean(ResourceIF rif)
+ {
+ resourceMethodBean = rif;
+ }
+
@Resource
private static ORB orb;
}
More information about the jboss-cvs-commits
mailing list