org.codehaus.annogen.override
Interface AnnoBeanMapping


public interface AnnoBeanMapping

Describes a bi-directional mapping between AnnoBeans and JSR175 annotation types. This mapping is typically derived by direct examination of the classes themselves, but this API can be implemented if a custom mapping is required.

Author:
Patrick Calahan <email: codehaus-at-bea-dot-com>

Method Summary
 java.lang.Class getAnnoBeanClassForRequest(java.lang.Class declOrAnnoBeanClass)
          If the given class is a 175 annotation type, returns the annogen'ed class which acts as a proxy to it.
 java.lang.Class getDeclaredClassForAnnoBeanClass(java.lang.Class annoBeanClass)
          Returns the 175 annotation class which corresponds to the given annobean class.
 

Method Detail

getAnnoBeanClassForRequest

java.lang.Class getAnnoBeanClassForRequest(java.lang.Class declOrAnnoBeanClass)
                                           throws java.lang.ClassNotFoundException

If the given class is a 175 annotation type, returns the annogen'ed class which acts as a proxy to it. If the given class already is a annobean class, simply returns it.

Throws:
java.lang.ClassNotFoundException - if the bean class could not be loaded

getDeclaredClassForAnnoBeanClass

java.lang.Class getDeclaredClassForAnnoBeanClass(java.lang.Class annoBeanClass)
                                                 throws java.lang.ClassNotFoundException

Returns the 175 annotation class which corresponds to the given annobean class.

Throws:
java.lang.IllegalArgumentException - if the given class is not an annobean class.
java.lang.IllegalStateException - if the current vm is pre-1.5.
java.lang.ClassNotFoundException - if the 175 type could not be loaded