org.jboss.kernel.plugins.annotations
Interface AnnotationPlugin<T extends org.jboss.reflect.spi.AnnotatedInfo,C extends Annotation>

Type Parameters:
T - info type
C - annotation type
All Known Implementing Classes:
AbstractAdaptersAnnotationPlugin, AbstractAnnotationPlugin, AbstractParameterAnnotationPlugin, AliasesAnnotationPlugin, ArrayConstructorValueAnnotationPlugin, ArrayValueAnnotationPlugin, CallbackAnnotationPlugin, ClassAnnotationPlugin, ClassFactoryAnnotationPlugin, CollectionConstructorValueAnnotationPlugin, CollectionsAnnotationPlugin, CollectionValueAnnotationPlugin, ConstructorAnnotationPlugin, ConstructorParameterAnnotationPlugin, ConstructorValueAnnotationPlugin, CreateLifecycleAnnotationPlugin, DemandsAnnotationPlugin, DependsAnnotationPlugin, DestroyLifecycleAnnotationPlugin, ExternalInstallAnnotationPlugin, ExternalInstallationAnnotationPlugin, ExternalUninstallAnnotationPlugin, FactoryMethodAnnotationPlugin, FieldAnnotationPlugin, InjectAnnotationPlugin, InjectConstructorValueAnnotationPlugin, InstallationParameterAnnotationPlugin, InstallCallbackAnnotationPlugin, InstallMethodParameterAnnotationPlugin, JavaBeanValueAnnotationPlugin, LifecycleParameterAnnotationPlugin, ListConstructorValueAnnotationPlugin, ListValueAnnotationPlugin, MapConstructorValueAnnotationPlugin, MapValueAnnotationPlugin, MethodAnnotationPlugin, MethodInstallCallbackAnnotationPlugin, MethodUninstallCallbackAnnotationPlugin, NullValueAnnotationPlugin, PropertyAnnotationPlugin, PropertyInstallCallbackAnnotationPlugin, PropertyUninstallCallbackAnnotationPlugin, SetConstructorValueAnnotationPlugin, SetValueAnnotationPlugin, StartLifecycleAnnotationPlugin, StopLifecycleAnnotationPlugin, StringValueAnnotationPlugin, StringValueConstructorValueAnnotationPlugin, SupplysAnnotationPlugin, ThisValueAnnotationPlugin, UninstallCallbackAnnotationPlugin, UninstallMethodParameterAnnotationPlugin, ValueFactoryAnnotationPlugin, ValueFactoryConstructorValueAnnotationPlugin

public interface AnnotationPlugin<T extends org.jboss.reflect.spi.AnnotatedInfo,C extends Annotation>

Annotation plugin contract.

Author:
Ales Justin

Method Summary
 void applyAnnotation(T info, org.jboss.metadata.spi.MetaData retrieval, MetaDataVisitor visitor)
          Apply the check for annotation.
 void cleanAnnotation(T info, org.jboss.metadata.spi.MetaData retrieval, MetaDataVisitor visitor)
          Check if the annotation requires cleaning after itself.
 Class<C> getAnnotation()
          Get the annotation class we are handling.
 Set<ElementType> getSupportedTypes()
          Get all supported types.
 

Method Detail

getAnnotation

Class<C> getAnnotation()
Get the annotation class we are handling.

Returns:
annotation class

getSupportedTypes

Set<ElementType> getSupportedTypes()
Get all supported types.

Returns:
set of supported types

applyAnnotation

void applyAnnotation(T info,
                     org.jboss.metadata.spi.MetaData retrieval,
                     MetaDataVisitor visitor)
                     throws Throwable
Apply the check for annotation.

Parameters:
info - the info
retrieval - metadata instance
visitor - current context visitor
Throws:
Throwable - for any error

cleanAnnotation

void cleanAnnotation(T info,
                     org.jboss.metadata.spi.MetaData retrieval,
                     MetaDataVisitor visitor)
                     throws Throwable
Check if the annotation requires cleaning after itself.

Parameters:
info - the info
retrieval - metadata instance
visitor - current context visitor
Throws:
Throwable - for any error


Copyright ? 2007 JBoss Inc.. All Rights Reserved.