6
6
*/
7
7
package org .hibernate .validator .internal .engine .constraintvalidation ;
8
8
9
+ import static org .hibernate .validator .constraints .CompositionType .ALL_FALSE ;
10
+ import static org .hibernate .validator .constraints .CompositionType .AND ;
11
+ import static org .hibernate .validator .constraints .CompositionType .OR ;
12
+ import static org .hibernate .validator .internal .util .CollectionHelper .newArrayList ;
13
+ import static org .hibernate .validator .internal .util .CollectionHelper .newHashSet ;
14
+
9
15
import java .lang .annotation .Annotation ;
10
16
import java .lang .reflect .Type ;
11
17
import java .util .Collections ;
12
18
import java .util .List ;
13
19
import java .util .Set ;
20
+
14
21
import javax .validation .ConstraintValidator ;
15
22
import javax .validation .ConstraintViolation ;
16
23
23
30
import org .hibernate .validator .internal .util .logging .LoggerFactory ;
24
31
import org .hibernate .validator .spi .valuehandling .ValidatedValueUnwrapper ;
25
32
26
- import static org .hibernate .validator .constraints .CompositionType .ALL_FALSE ;
27
- import static org .hibernate .validator .constraints .CompositionType .AND ;
28
- import static org .hibernate .validator .constraints .CompositionType .OR ;
29
- import static org .hibernate .validator .internal .util .CollectionHelper .newArrayList ;
30
- import static org .hibernate .validator .internal .util .CollectionHelper .newHashSet ;
31
-
32
33
/**
33
34
* Due to constraint composition a single constraint annotation can lead to a whole constraint tree being validated.
34
35
* This class encapsulates such a tree.
@@ -104,6 +105,9 @@ private <T, V> void validateConstraints(ValidationContext<T> validationContext,
104
105
// After all children are validated the actual ConstraintValidator of the constraint itself is executed
105
106
if ( mainConstraintNeedsEvaluation ( validationContext , constraintViolations ) ) {
106
107
108
+ // find the right constraint validator
109
+ ConstraintValidator <A , V > validator = getInitializedConstraintValidator ( validationContext , valueContext );
110
+
107
111
if ( log .isTraceEnabled () ) {
108
112
log .tracef (
109
113
"Validating value %s against constraint defined by %s." ,
@@ -112,9 +116,6 @@ private <T, V> void validateConstraints(ValidationContext<T> validationContext,
112
116
);
113
117
}
114
118
115
- // find the right constraint validator
116
- ConstraintValidator <A , V > validator = getInitializedConstraintValidator ( validationContext , valueContext );
117
-
118
119
// create a constraint validator context
119
120
ConstraintValidatorContextImpl constraintValidatorContext = new ConstraintValidatorContextImpl (
120
121
validationContext .getParameterNames (),
0 commit comments