@Target({FIELD,METHOD,TYPE})
@Retention(RUNTIME)
@Documented
@API(status=EXPERIMENTAL,
since="5.4")
public @interface Order
@Order
is an annotation that is used to configure the
order in which the annotated element (i.e., field,
method, or class) should be evaluated or executed relative to other elements
of the same category.
When used with
@RegisterExtension
or
@ExtendWith
,
the category applies to extension fields. When used with
MethodOrderer.OrderAnnotation
, the category applies to test methods.
When used with ClassOrderer.OrderAnnotation
, the category applies to
test classes.
If @Order
is not explicitly declared on an element, the
DEFAULT
order value will be assigned to the element.
- Since:
- 5.4
- See Also:
MethodOrderer.OrderAnnotation
,ClassOrderer.OrderAnnotation
,@RegisterExtension
,@ExtendWith
-
Required Element Summary
Modifier and TypeRequired ElementDescriptionint
The order value for the annotated element (i.e., field, method, or class). -
Field Summary
Modifier and TypeFieldDescriptionstatic int
Default order value for elements not explicitly annotated with@Order
, equal to the value ofInteger.MAX_VALUE / 2
.
-
Field Details
-
DEFAULT
Default order value for elements not explicitly annotated with@Order
, equal to the value ofInteger.MAX_VALUE / 2
.- Since:
- 5.6
- See Also:
value()
, Constant Field Values
-
-
Element Details
-
value
int valueThe order value for the annotated element (i.e., field, method, or class).Elements are ordered based on priority where a lower value has greater priority than a higher value. For example,
Integer.MAX_VALUE
has the lowest priority.- See Also:
DEFAULT
-