org.jboss.kernel.plugins.annotations
Class ConstructorParameterAnnotationPlugin

java.lang.Object
  extended by org.jboss.util.JBossObject
      extended by org.jboss.kernel.plugins.annotations.BaseMetaDataAnnotationPlugin<T,C>
          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,C,P>
                      extended by org.jboss.kernel.plugins.annotations.AbstractConstructorParameterAnnotationPlugin<Constructor,AbstractConstructorMetaData>
                          extended by org.jboss.kernel.plugins.annotations.ConstructorParameterAnnotationPlugin
All Implemented Interfaces:
Cloneable, AnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor>, MetaDataAnnotationPlugin<org.jboss.reflect.spi.ConstructorInfo,Constructor>, org.jboss.util.JBossInterface

public class ConstructorParameterAnnotationPlugin
extends AbstractConstructorParameterAnnotationPlugin<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
ConstructorParameterAnnotationPlugin(Set<Annotation2ValueMetaDataAdapter<? extends Annotation>> 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.AbstractConstructorParameterAnnotationPlugin
createParametersSignature
 
Methods inherited from class org.jboss.kernel.plugins.annotations.AbstractParameterAnnotationPlugin
createParametrizedMetaData, createParametrizedMetaData, internalApplyAnnotation, isElementTypeSupported
 
Methods inherited from class org.jboss.kernel.plugins.annotations.AbstractAnnotationPlugin
applyAnnotation, checkIfNotAbstractBeanMetaDataSpecific, cleanAnnotation, internalApplyAnnotation, internalApplyAnnotation, internalCleanAnnotation, isMetaDataAlreadyPresent
 
Methods inherited from class org.jboss.kernel.plugins.annotations.BaseMetaDataAnnotationPlugin
applyAnnotation, getAnnotation, getSupportedTypes, isAttributePresent, isAttributePresent, isCleanup, isCleanupOnly, 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
 
Methods inherited from interface org.jboss.kernel.plugins.annotations.MetaDataAnnotationPlugin
applyAnnotation, getAnnotation, getSupportedTypes
 

Constructor Detail

ConstructorParameterAnnotationPlugin

public ConstructorParameterAnnotationPlugin(Set<Annotation2ValueMetaDataAdapter<? extends Annotation>> 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: BaseMetaDataAnnotationPlugin
Is meta data already present.

Overrides:
isMetaDataAlreadyPresent in class BaseMetaDataAnnotationPlugin<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 © 2009 JBoss, a division of Red Hat, Inc.. All Rights Reserved.