org.eclipse.jpt.jpa.core.resource.java
Interface AnnotationDefinition


public interface AnnotationDefinition

Used to build annotations discovered in the Java source code. To provide new AnnotationDefinitions, create a new JpaPlatform by implementing JpaPlatform and/or extending GenericJpaPlatform.

Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

Since:
2.0
Version:
3.0
See Also:
Annotation, JpaPlatform, GenericJpaPlatform

Method Summary
 Annotation buildAnnotation(JavaResourceAnnotatedElement parent, AnnotatedElement annotatedElement)
          Build and return an annotation for the specified annotated element.
 Annotation buildAnnotation(JavaResourceAnnotatedElement parent, org.eclipse.jdt.core.IAnnotation jdtAnnotation)
          Build and return an annotation for the specified JDT annotation on the specified annotated element.
 Annotation buildNullAnnotation(JavaResourceAnnotatedElement parent)
          Build and return a null annotation for the specified element.
 java.lang.String getAnnotationName()
          Return the name of the annotation the definition will build in the various #build...(...) methods.
 

Method Detail

getAnnotationName

java.lang.String getAnnotationName()
Return the name of the annotation the definition will build in the various #build...(...) methods.


buildAnnotation

Annotation buildAnnotation(JavaResourceAnnotatedElement parent,
                           AnnotatedElement annotatedElement)
Build and return an annotation for the specified annotated element.


buildAnnotation

Annotation buildAnnotation(JavaResourceAnnotatedElement parent,
                           org.eclipse.jdt.core.IAnnotation jdtAnnotation)
Build and return an annotation for the specified JDT annotation on the specified annotated element.


buildNullAnnotation

Annotation buildNullAnnotation(JavaResourceAnnotatedElement parent)
Build and return a null annotation for the specified element. Only certain annotations are required to have null implementations; typically the annotations with reasonably complex default behavior. The null annotation is used by the corresponding default context model. The null annotation simplifies the context model code, allowing the context model to simply set various bits of state (e.g. name) and the null annotation will create a new real annotation and forward the new state to it. This reduces the number of null checks in the context model (hopefully).