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