Class AnnotationFinder.Annotatable

    • Constructor Detail

      • Annotatable

        public Annotatable​(java.lang.reflect.AnnotatedElement element)
      • Annotatable

        public Annotatable()
    • Method Detail

      • getDeclaredAnnotations

        public java.lang.annotation.Annotation[] getDeclaredAnnotations()
      • getMetaAnnotationName

        public java.lang.String getMetaAnnotationName()
      • getAnnotations

        private java.lang.annotation.Annotation[] getAnnotations​(java.lang.reflect.AnnotatedElement element)
        Utility method to get around some errors caused by interactions between the Equinox class loaders and the OpenJPA transformation process. There is a window where the OpenJPA transformation process can cause an annotation being processed to get defined in a classloader during the actual defineClass call for that very class (e.g., recursively). This results in a LinkageError exception. If we see one of these, retry the request. Since the annotation will be defined on the second pass, this should succeed. If we get a second exception, then it's likely some other problem.
        Parameters:
        element - The AnnotatedElement we need information for.
        Returns:
        An array of the Annotations defined on the element.