[jboss-cvs] JBossAS SVN: r67652 - trunk/server/src/main/org/jboss/deployment.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Nov 30 04:21:33 EST 2007


Author: scott.stark at jboss.org
Date: 2007-11-30 04:21:33 -0500 (Fri, 30 Nov 2007)
New Revision: 67652

Modified:
   trunk/server/src/main/org/jboss/deployment/AnnotationMetaDataDeployer.java
Log:
Include client and web metadata creation

Modified: trunk/server/src/main/org/jboss/deployment/AnnotationMetaDataDeployer.java
===================================================================
--- trunk/server/src/main/org/jboss/deployment/AnnotationMetaDataDeployer.java	2007-11-30 09:17:49 UTC (rev 67651)
+++ trunk/server/src/main/org/jboss/deployment/AnnotationMetaDataDeployer.java	2007-11-30 09:21:33 UTC (rev 67652)
@@ -32,15 +32,19 @@
 import org.jboss.deployers.spi.deployer.helpers.AbstractDeployer;
 import org.jboss.deployers.structure.spi.DeploymentUnit;
 import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
+import org.jboss.metadata.annotation.creator.client.ApplicationClient5MetaDataCreator;
 import org.jboss.metadata.annotation.creator.ejb.EjbJar30Creator;
+import org.jboss.metadata.annotation.creator.web.Web25MetaDataCreator;
 import org.jboss.metadata.annotation.finder.AnnotationFinder;
 import org.jboss.metadata.annotation.finder.DefaultAnnotationFinder;
 import org.jboss.metadata.client.jboss.JBossClientMetaData;
+import org.jboss.metadata.client.spec.ApplicationClient5MetaData;
 import org.jboss.metadata.client.spec.ApplicationClientMetaData;
 import org.jboss.metadata.ejb.jboss.JBossMetaData;
 import org.jboss.metadata.ejb.spec.EjbJar30MetaData;
 import org.jboss.metadata.ejb.spec.EjbJarMetaData;
 import org.jboss.metadata.web.jboss.JBossWebMetaData;
+import org.jboss.metadata.web.spec.Web25MetaData;
 import org.jboss.metadata.web.spec.WebMetaData;
 import org.jboss.virtual.VirtualFile;
 
@@ -141,8 +145,12 @@
          if(classpathClasses.size() > 0)
          {
             AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
-            processJBossMetaData(unit, finder, classpathClasses);
-            processJBossWebMetaData(unit, finder, classpathClasses);
+            if(jbossWebMetaData != null)
+               processJBossWebMetaData(unit, finder, classpathClasses);
+            else if(jbossClientMetaData != null)
+               processJBossClientMetaData(unit, finder, classpathClasses);
+            else
+               processJBossMetaData(unit, finder, classpathClasses);
          }
       }
       catch(IOException e)
@@ -172,12 +180,24 @@
       // Create the metadata model from the annotations
       EjbJar30Creator creator = new EjbJar30Creator(finder);
       EjbJar30MetaData annotationMetaData = creator.create(classes.values());
-      unit.addAttachment(EJB_ANNOTATED_ATTACHMENT_NAME, annotationMetaData, EjbJarMetaData.class);
+      if(annotationMetaData != null)
+         unit.addAttachment(EJB_ANNOTATED_ATTACHMENT_NAME, annotationMetaData, EjbJarMetaData.class);
    }
    protected void processJBossWebMetaData(VFSDeploymentUnit unit,
          AnnotationFinder<AnnotatedElement> finder, Map<VirtualFile, Class<?>> classes)
    {
-      
+      Web25MetaDataCreator creator = new Web25MetaDataCreator(finder);
+      Web25MetaData annotationMetaData = creator.create(classes.values());
+      if(annotationMetaData != null)
+         unit.addAttachment(WEB_ANNOTATED_ATTACHMENT_NAME, annotationMetaData, WebMetaData.class);
    }
+   protected void processJBossClientMetaData(VFSDeploymentUnit unit,
+         AnnotationFinder<AnnotatedElement> finder, Map<VirtualFile, Class<?>> classes)
+   {
+      ApplicationClient5MetaDataCreator creator = new ApplicationClient5MetaDataCreator(finder);
+      ApplicationClient5MetaData annotationMetaData = creator.create(classes.values());
+      if(annotationMetaData != null)
+         unit.addAttachment(CLIENT_ANNOTATED_ATTACHMENT_NAME, annotationMetaData, ApplicationClientMetaData.class);      
+   }
 }
 




More information about the jboss-cvs-commits mailing list