1 /*
2 * Jakarta Bean Validation API
3 *
4 * License: Apache License, Version 2.0
5 * See the license.txt file in the root directory or <http://www.apache.org/licenses/LICENSE-2.0>.
6 */
7 package javax.validation;
8
9 /**
10 * Enum of possible kinds of elements encountered in Jakarta Bean Validation.
11 * <p>
12 * Mostly elements that can be constrained and described in the metadata
13 * but also elements that can be part of a {@link Path} and represented
14 * by a {@link Path.Node}
15 *
16 * @author Emmanuel Bernard
17 * @author Gunnar Morling
18 * @author Guillaume Smet
19 *
20 * @since 1.1
21 */
22 public enum ElementKind {
23 /**
24 * A Java Bean or object.
25 */
26 BEAN,
27
28 /**
29 * A property of a Java Bean.
30 */
31 PROPERTY,
32
33 /**
34 * A method.
35 */
36 METHOD,
37
38 /**
39 * A constructor.
40 */
41 CONSTRUCTOR,
42
43 /**
44 * A parameter of a method or constructor.
45 */
46 PARAMETER,
47
48 /**
49 * Element holding cross-parameter constraints of a method or constructor.
50 */
51 CROSS_PARAMETER,
52
53 /**
54 * The return value of a method or constructor.
55 */
56 RETURN_VALUE,
57
58 /**
59 * An element stored in a container, e.g. a key or value of a {@code Map} or an element
60 * of a {@code List}.
61 *
62 * @since 2.0
63 */
64 CONTAINER_ELEMENT
65 }
66