1 package com.fasterxml.classmate;
2
3 /**
4  * Enumeration that defines different settings for handling behavior
5  * of individual annotations
6  */

7 public enum AnnotationInclusion
8 {
9     /**
10      * Value that indicates that annotation is to be ignored, not included
11      * in resolved bean information.
12      * Applicable to all member types.
13      */

14     DONT_INCLUDE,
15
16     /**
17      * Value that indicates that annotation is to be included in results, but
18      * only if directly associated with included member (or attached mix-in);
19      * will not inherit from supertypes.
20      * Applicable only to member methods; if used with other members will
21      * mean basic inclusion.
22      */

23     INCLUDE_BUT_DONT_INHERIT,
24
25     /**
26      * Value that indicates that annotation is to be included in results, and
27      * values from overridden members are inherited only if the annotation is
28      * marked with the {@link java.lang.annotation.Inherited} annotation.
29      * Applicable only to member methods; if used with other members will
30      * mean basic inclusion.
31      */

32     INCLUDE_AND_INHERIT_IF_INHERITED,
33
34     /**
35      * Value that indicates that annotation is to be included in results; and
36      * values from overridden members are also inherited if not overridden
37      * by members of subtypes.
38      * Note that inheritance only matters with member methods; for other types
39      * it just means "include".
40      */

41     INCLUDE_AND_INHERIT
42     ;
43
44 }
45