org.jboss.kernel.plugins.annotations
Class ConstructorParameterAnnotationPlugin

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<T,C>
              extended by org.jboss.kernel.plugins.annotations.AbstractParameterAnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor,AbstractConstructorMetaData>
                  extended by org.jboss.kernel.plugins.annotations.ConstructorParameterAnnotationPlugin
All Implemented Interfaces:
Cloneable, AnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor>, org.jboss.util.JBossInterface

public class ConstructorParameterAnnotationPlugin
extends AbstractParameterAnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor,AbstractConstructorMetaData>

Constructor annotation 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 ConstructorParameterAnnotationPlugin(Annotation2ValueMetaDataAdapter... adapters)
           
 
Method Summary
protected  boolean checkAnnotatedInfo(ElementType type)
          Check additional element type - apart from Parameter element type.
protected  AbstractConstructorMetaData createParametrizedMetaData(org.jboss.reflect.spi.ConstructorInfo info)
          Create new Parametrized metadata.
protected  org.jboss.reflect.spi.ParameterInfo[] getParameters(org.jboss.reflect.spi.ConstructorInfo info)
          Get the parameters infos from type.
protected  List<MetaDataVisitorNode> handleParameterlessInfo(org.jboss.reflect.spi.ConstructorInfo info, Constructor annotation, BeanMetaData beanMetaData)
          Handle info which has zero parameters.
protected  boolean isMetaDataAlreadyPresent(org.jboss.reflect.spi.ConstructorInfo info, Constructor annotation, BeanMetaData beanMetaData)
          Is meta data already present.
protected  void setParameterizedMetaData(AbstractConstructorMetaData parameterizedMetaData, BeanMetaData beanMetaData)
          Set the ParameterizedMetaData instance.
 
Methods inherited from class org.jboss.kernel.plugins.annotations.AbstractParameterAnnotationPlugin
createParametrizedMetaData, createParametrizedMetaData, createParametrizedMetaData, handleParameterlessInfo, internalApplyAnnotation, isElementTypeSupported, setParameterizedMetaData
 
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

ConstructorParameterAnnotationPlugin

protected ConstructorParameterAnnotationPlugin(Annotation2ValueMetaDataAdapter... adapters)
Method Detail

checkAnnotatedInfo

protected boolean checkAnnotatedInfo(ElementType type)
Description copied from class: AbstractParameterAnnotationPlugin
Check additional element type - apart from Parameter element type.

Specified by:
checkAnnotatedInfo in class AbstractParameterAnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor,AbstractConstructorMetaData>
Parameters:
type - the type
Returns:
true if additional type is supported

isMetaDataAlreadyPresent

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

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

getParameters

protected org.jboss.reflect.spi.ParameterInfo[] getParameters(org.jboss.reflect.spi.ConstructorInfo info)
Description copied from class: AbstractParameterAnnotationPlugin
Get the parameters infos from type.

Specified by:
getParameters in class AbstractParameterAnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor,AbstractConstructorMetaData>
Parameters:
info - the type
Returns:
array of parameter info

handleParameterlessInfo

protected List<MetaDataVisitorNode> handleParameterlessInfo(org.jboss.reflect.spi.ConstructorInfo info,
                                                            Constructor annotation,
                                                            BeanMetaData beanMetaData)
Description copied from class: AbstractParameterAnnotationPlugin
Handle info which has zero parameters.

Specified by:
handleParameterlessInfo in class AbstractParameterAnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor,AbstractConstructorMetaData>
Parameters:
info - the info
annotation - the annotation
beanMetaData - the bean metadata
Returns:
list of added meta data visitor nodes

createParametrizedMetaData

protected AbstractConstructorMetaData createParametrizedMetaData(org.jboss.reflect.spi.ConstructorInfo info)
Description copied from class: AbstractParameterAnnotationPlugin
Create new Parametrized metadata.

Overrides:
createParametrizedMetaData in class AbstractParameterAnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor,AbstractConstructorMetaData>
Parameters:
info - the info
Returns:
new ParameterizedMetaData instance

setParameterizedMetaData

protected void setParameterizedMetaData(AbstractConstructorMetaData parameterizedMetaData,
                                        BeanMetaData beanMetaData)
Description copied from class: AbstractParameterAnnotationPlugin
Set the ParameterizedMetaData instance.

Specified by:
setParameterizedMetaData in class AbstractParameterAnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor,AbstractConstructorMetaData>
Parameters:
parameterizedMetaData - the parameterized metadata
beanMetaData - the bean metadata


Copyright ? 2007 JBoss Inc.. All Rights Reserved.