org.jboss.kernel.plugins.annotations
Class ClassFactoryAnnotationPlugin

java.lang.Object
  extended by org.jboss.util.JBossObject
      extended by org.jboss.kernel.plugins.annotations.AbstractAnnotationPlugin<T,C>
          extended by org.jboss.kernel.plugins.annotations.AbstractAdaptersAnnotationPlugin<org.jboss.reflect.spi.ClassInfo,Factory>
              extended by org.jboss.kernel.plugins.annotations.ClassFactoryAnnotationPlugin
All Implemented Interfaces:
Cloneable, AnnotationPlugin<org.jboss.reflect.spi.ClassInfo,Factory>, org.jboss.util.JBossInterface

public class ClassFactoryAnnotationPlugin
extends AbstractAdaptersAnnotationPlugin<org.jboss.reflect.spi.ClassInfo,Factory>

Factory anootation plugin.

Author:
Ales Justin

Field Summary
 
Fields inherited from class org.jboss.kernel.plugins.annotations.AbstractAdaptersAnnotationPlugin
adapters
 
Fields inherited from class org.jboss.util.JBossObject
hashCode, log, toString
 
Constructor Summary
protected ClassFactoryAnnotationPlugin(Annotation2ValueMetaDataAdapter... adapters)
           
 
Method Summary
protected  List<? extends MetaDataVisitorNode> internalApplyAnnotation(org.jboss.reflect.spi.ClassInfo info, Factory annotation, KernelControllerContext context)
          Apply annotation since it's not present.
protected  boolean isElementTypeSupported(ElementType type)
          Is type supported by plugin.
protected  boolean isMetaDataAlreadyPresent(org.jboss.reflect.spi.ClassInfo info, Factory annotation, BeanMetaData beanMetaData)
          Is meta data already present.
 
Methods inherited from class org.jboss.kernel.plugins.annotations.AbstractAnnotationPlugin
applyAnnotation, cleanAnnotation, getAnnotation, getSupportedTypes, internalApplyAnnotation, internalApplyAnnotation, internalCleanAnnotation, isAttributePresent, isMetaDataAlreadyPresent, toShortString, toString
 
Methods inherited from class org.jboss.util.JBossObject
cacheGetHashCode, cacheToString, clone, equals, flushJBossObjectCache, getClassShortName, getHashCode, hashCode, list, notEqual, toShortString, toString, toStringImplementation
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ClassFactoryAnnotationPlugin

protected ClassFactoryAnnotationPlugin(Annotation2ValueMetaDataAdapter... adapters)
Method Detail

isElementTypeSupported

protected boolean isElementTypeSupported(ElementType type)
Description copied from class: AbstractAnnotationPlugin
Is type supported by plugin.

Specified by:
isElementTypeSupported in class AbstractAnnotationPlugin<org.jboss.reflect.spi.ClassInfo,Factory>
Parameters:
type - the annotation element type
Returns:
true if element supported

isMetaDataAlreadyPresent

protected boolean isMetaDataAlreadyPresent(org.jboss.reflect.spi.ClassInfo info,
                                           Factory annotation,
                                           BeanMetaData beanMetaData)
Description copied from class: AbstractAnnotationPlugin
Is meta data already present.

Overrides:
isMetaDataAlreadyPresent in class AbstractAnnotationPlugin<org.jboss.reflect.spi.ClassInfo,Factory>
Parameters:
info - the info
annotation - the annotation
beanMetaData - the bean meta data
Returns:
true if meta data already present

internalApplyAnnotation

protected List<? extends MetaDataVisitorNode> internalApplyAnnotation(org.jboss.reflect.spi.ClassInfo info,
                                                                      Factory annotation,
                                                                      KernelControllerContext context)
                                                               throws Throwable
Description copied from class: AbstractAnnotationPlugin
Apply annotation since it's not present.

Overrides:
internalApplyAnnotation in class AbstractAnnotationPlugin<org.jboss.reflect.spi.ClassInfo,Factory>
Parameters:
info - the info
annotation - the annotation
context - the context
Returns:
list of added meta data visitor nodes
Throws:
Throwable - for any error


Copyright ? 2007 JBoss Inc.. All Rights Reserved.