org.jboss.deployment
Class AnnotationMetaDataDeployer

java.lang.Object
  extended by org.jboss.deployers.spi.deployer.helpers.AbstractDeployer
      extended by org.jboss.deployment.AnnotationMetaDataDeployer
All Implemented Interfaces:
org.jboss.deployers.spi.deployer.Deployer, org.jboss.deployers.spi.Ordered
Direct Known Subclasses:
AltAnnotationMetaDataDeployer, OptAnnotationMetaDataDeployer

public class AnnotationMetaDataDeployer
extends org.jboss.deployers.spi.deployer.helpers.AbstractDeployer

A POST_CLASSLOADER deployer which generates metadata from annotations

Version:
$Revision: 85945 $
Author:
Scott.Stark@jboss.org

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.jboss.deployers.spi.Ordered
org.jboss.deployers.spi.Ordered.OrderedComparator
 
Field Summary
static String CLIENT_ANNOTATED_ATTACHMENT_NAME
           
static String EJB_ANNOTATED_ATTACHMENT_NAME
           
static String WEB_ANNOTATED_ATTACHMENT_NAME
           
 
Fields inherited from class org.jboss.deployers.spi.deployer.helpers.AbstractDeployer
log
 
Fields inherited from interface org.jboss.deployers.spi.Ordered
COMPARATOR
 
Constructor Summary
AnnotationMetaDataDeployer()
           
 
Method Summary
 void deploy(org.jboss.deployers.structure.spi.DeploymentUnit unit)
           
protected  void deploy(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit)
          Process the
protected  Collection<Class<?>> getClasses(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit, String mainClassName, List<org.jboss.virtual.VirtualFile> classpath)
          Get the classes we want to scan.
protected  String getMainClassName(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit)
          Get main class from manifest.
 boolean isMetaDataCompleteIsDefault()
           
protected  void processJBossClientMetaData(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit, org.jboss.metadata.annotation.finder.AnnotationFinder<AnnotatedElement> finder, Collection<Class<?>> classes)
          Process annotations.
protected  void processJBossMetaData(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit, org.jboss.metadata.annotation.finder.AnnotationFinder<AnnotatedElement> finder, Collection<Class<?>> classes)
          Process annotations.
protected  void processJBossWebMetaData(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit, org.jboss.metadata.annotation.finder.AnnotationFinder<AnnotatedElement> finder, Collection<Class<?>> classes)
          Process annotations.
protected  void processMetaData(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit, org.jboss.metadata.web.spec.WebMetaData webMetaData, org.jboss.metadata.client.spec.ApplicationClientMetaData clientMetaData, List<org.jboss.virtual.VirtualFile> classpath)
          Process metadata.
 void setMetaDataCompleteIsDefault(boolean metaDataCompleteIsDefault)
           
 void undeploy(org.jboss.deployers.structure.spi.DeploymentUnit unit)
           
protected  void undeploy(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit)
          Undeploy a vfs deployment
 
Methods inherited from class org.jboss.deployers.spi.deployer.helpers.AbstractDeployer
addInput, addInput, addOutput, addOutput, getInput, getInputs, getOutput, getOutputs, getRelativeOrder, getStage, isAllInputs, isComponentsOnly, isParentFirst, isTopLevelOnly, isWantComponents, setAllInputs, setComponentsOnly, setInput, setInputs, setInputs, setInputs, setOutput, setOutputs, setOutputs, setOutputs, setParentFirst, setRelativeOrder, setStage, setTopLevelOnly, setWantComponents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EJB_ANNOTATED_ATTACHMENT_NAME

public static final String EJB_ANNOTATED_ATTACHMENT_NAME

CLIENT_ANNOTATED_ATTACHMENT_NAME

public static final String CLIENT_ANNOTATED_ATTACHMENT_NAME

WEB_ANNOTATED_ATTACHMENT_NAME

public static final String WEB_ANNOTATED_ATTACHMENT_NAME
Constructor Detail

AnnotationMetaDataDeployer

public AnnotationMetaDataDeployer()
Method Detail

isMetaDataCompleteIsDefault

public boolean isMetaDataCompleteIsDefault()

setMetaDataCompleteIsDefault

public void setMetaDataCompleteIsDefault(boolean metaDataCompleteIsDefault)

deploy

public void deploy(org.jboss.deployers.structure.spi.DeploymentUnit unit)
            throws org.jboss.deployers.spi.DeploymentException
Throws:
org.jboss.deployers.spi.DeploymentException

undeploy

public void undeploy(org.jboss.deployers.structure.spi.DeploymentUnit unit)
Specified by:
undeploy in interface org.jboss.deployers.spi.deployer.Deployer
Overrides:
undeploy in class org.jboss.deployers.spi.deployer.helpers.AbstractDeployer

deploy

protected void deploy(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit)
               throws org.jboss.deployers.spi.DeploymentException
Process the

Parameters:
unit - the unit
Throws:
org.jboss.deployers.spi.DeploymentException - for any error

processMetaData

protected void processMetaData(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit,
                               org.jboss.metadata.web.spec.WebMetaData webMetaData,
                               org.jboss.metadata.client.spec.ApplicationClientMetaData clientMetaData,
                               List<org.jboss.virtual.VirtualFile> classpath)
                        throws Exception
Process metadata.

Parameters:
unit - the deployment unit
webMetaData - the web metadata
clientMetaData - the client metadata
classpath - the classpath
Throws:
org.jboss.deployers.spi.DeploymentException - for any error
Exception

getClasses

protected Collection<Class<?>> getClasses(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit,
                                          String mainClassName,
                                          List<org.jboss.virtual.VirtualFile> classpath)
                                   throws IOException
Get the classes we want to scan.

Parameters:
unit - the deployment unit
mainClassName - the main class name
classpath - the classpath
Returns:
possible classes containing metadata annotations
Throws:
IOException - for any error

undeploy

protected void undeploy(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit)
Undeploy a vfs deployment

Parameters:
unit - the unit

processJBossMetaData

protected void processJBossMetaData(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit,
                                    org.jboss.metadata.annotation.finder.AnnotationFinder<AnnotatedElement> finder,
                                    Collection<Class<?>> classes)
Process annotations.

Parameters:
unit - the deployment unit
finder - the annotation finder
classes - the candidate classes

processJBossWebMetaData

protected void processJBossWebMetaData(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit,
                                       org.jboss.metadata.annotation.finder.AnnotationFinder<AnnotatedElement> finder,
                                       Collection<Class<?>> classes)
Process annotations.

Parameters:
unit - the deployment unit
finder - the annotation finder
classes - the candidate classes

processJBossClientMetaData

protected void processJBossClientMetaData(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit,
                                          org.jboss.metadata.annotation.finder.AnnotationFinder<AnnotatedElement> finder,
                                          Collection<Class<?>> classes)
Process annotations.

Parameters:
unit - the deployment unit
finder - the annotation finder
classes - the candidate classes

getMainClassName

protected String getMainClassName(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit)
                           throws IOException
Get main class from manifest.

Parameters:
unit - the deployment unit
Returns:
main class name
Throws:
IOException - for any error


Copyright © 2009 JBoss, a division of Red Hat, Inc.. All Rights Reserved.