22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package java.lang.annotation;
27
28 /**
29 * Thrown to indicate that a program has attempted to access an element of
30 * an annotation type that was added to the annotation type definition after
31 * the annotation was compiled (or serialized). This exception will not be
32 * thrown if the new element has a default value.
33 * This exception can be thrown by the {@linkplain
34 * java.lang.reflect.AnnotatedElement API used to read annotations
35 * reflectively}.
36 *
37 * @author Josh Bloch
38 * @see java.lang.reflect.AnnotatedElement
39 * @since 1.5
40 */
41 public class IncompleteAnnotationException extends RuntimeException {
42 private static final long serialVersionUID = 8445097402741811912L;
43
44 private Class<? extends Annotation> annotationType;
45 private String elementName;
46
47 /**
48 * Constructs an IncompleteAnnotationException to indicate that
49 * the named element was missing from the specified annotation type.
50 *
51 * @param annotationType the Class object for the annotation type
52 * @param elementName the name of the missing element
53 * @throws NullPointerException if either parameter is {@code null}
54 */
55 public IncompleteAnnotationException(
56 Class<? extends Annotation> annotationType,
57 String elementName) {
58 super(annotationType.getName() + " missing element " +
59 elementName.toString());
60
61 this.annotationType = annotationType;
|
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package java.lang.annotation;
27
28 /**
29 * Thrown to indicate that a program has attempted to access an element of
30 * an annotation type that was added to the annotation type definition after
31 * the annotation was compiled (or serialized). This exception will not be
32 * thrown if the new element has a default value.
33 * This exception can be thrown by the {@linkplain
34 * java.lang.reflect.AnnotatedElement API used to read annotations
35 * reflectively}.
36 *
37 * @author Josh Bloch
38 * @see java.lang.reflect.AnnotatedElement
39 * @since 1.5
40 */
41 public class IncompleteAnnotationException extends RuntimeException {
42 @java.io.Serial
43 private static final long serialVersionUID = 8445097402741811912L;
44
45 private Class<? extends Annotation> annotationType;
46 private String elementName;
47
48 /**
49 * Constructs an IncompleteAnnotationException to indicate that
50 * the named element was missing from the specified annotation type.
51 *
52 * @param annotationType the Class object for the annotation type
53 * @param elementName the name of the missing element
54 * @throws NullPointerException if either parameter is {@code null}
55 */
56 public IncompleteAnnotationException(
57 Class<? extends Annotation> annotationType,
58 String elementName) {
59 super(annotationType.getName() + " missing element " +
60 elementName.toString());
61
62 this.annotationType = annotationType;
|