Repository: bval Updated Branches: refs/heads/bv2 b9db3f598 -> 381ce9275
Revert "fixing ValidationInterceptorPriorityTest" This reverts commit 861d64d4fca5f789690b9eba40966479cdc6d8e6. Project: http://git-wip-us.apache.org/repos/asf/bval/repo Commit: http://git-wip-us.apache.org/repos/asf/bval/commit/381ce927 Tree: http://git-wip-us.apache.org/repos/asf/bval/tree/381ce927 Diff: http://git-wip-us.apache.org/repos/asf/bval/diff/381ce927 Branch: refs/heads/bv2 Commit: 381ce9275bc59c8a884e929538d79706aff7ac51 Parents: b9db3f5 Author: Matt Benson <[email protected]> Authored: Wed Feb 28 10:40:53 2018 -0600 Committer: Matt Benson <[email protected]> Committed: Wed Feb 28 10:49:24 2018 -0600 ---------------------------------------------------------------------- .../ComputeConstraintValidatorClass.java | 32 ++++++-------------- .../apache/bval/jsr/descriptor/ConstraintD.java | 2 +- .../java/org/apache/bval/jsr/metadata/Meta.java | 15 +-------- 3 files changed, 12 insertions(+), 37 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/bval/blob/381ce927/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ComputeConstraintValidatorClass.java ---------------------------------------------------------------------- diff --git a/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ComputeConstraintValidatorClass.java b/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ComputeConstraintValidatorClass.java index a6493c5..d2595ea 100644 --- a/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ComputeConstraintValidatorClass.java +++ b/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ComputeConstraintValidatorClass.java @@ -21,7 +21,6 @@ import java.lang.reflect.Array; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import java.lang.reflect.WildcardType; -import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Objects; @@ -99,16 +98,15 @@ class ComputeConstraintValidatorClass<A extends Annotation> private final ApacheValidatorFactory validatorFactory; private final Class<?> validatedType; - private final Collection<ValidationTarget> validationTargets; + private final ValidationTarget validationTarget; private final A constraint; private final boolean composed; - ComputeConstraintValidatorClass(ApacheValidatorFactory validatorFactory, - Collection<ValidationTarget> validationTargets, + ComputeConstraintValidatorClass(ApacheValidatorFactory validatorFactory, ValidationTarget validationTarget, A constraint, Class<?> validatedType) { super(); this.validatorFactory = Validate.notNull(validatorFactory, "validatorFactory"); - this.validationTargets = Validate.notNull(validationTargets, "validationTargets"); + this.validationTarget = Validate.notNull(validationTarget, "validationTarget"); this.constraint = Validate.notNull(constraint, "constraint"); this.validatedType = Validate.notNull(validatedType, "validatedType"); this.composed = validatorFactory.getAnnotationsManager().isComposed(constraint); @@ -122,24 +120,14 @@ class ComputeConstraintValidatorClass<A extends Annotation> } private Class<? extends ConstraintValidator<A, ?>> findValidator(Set<ConstraintValidatorInfo<A>> infos) { - RuntimeException error = null; - for (ValidationTarget vt : validationTargets) { // TODO: to rework, perf are not correct - try { - switch (vt) { - case PARAMETERS: - return findCrossParameterValidator(infos); - case ANNOTATED_ELEMENT: - return findAnnotatedElementValidator(infos); - default: - } - } catch (final RuntimeException re) { - error = re; - } - } - if (error != null) { - throw error; + switch (validationTarget) { + case PARAMETERS: + return findCrossParameterValidator(infos); + case ANNOTATED_ELEMENT: + return findAnnotatedElementValidator(infos); + default: + return null; } - return null; } private Class<? extends ConstraintValidator<A, ?>> findCrossParameterValidator( http://git-wip-us.apache.org/repos/asf/bval/blob/381ce927/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ConstraintD.java ---------------------------------------------------------------------- diff --git a/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ConstraintD.java b/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ConstraintD.java index bea951d..ef933a6 100644 --- a/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ConstraintD.java +++ b/bval-jsr/src/main/java/org/apache/bval/jsr/descriptor/ConstraintD.java @@ -105,7 +105,7 @@ public class ConstraintD<A extends Annotation> implements ConstraintDescriptor<A Validate.notNull(validatorFactory, "validatorFactory"); composingConstraints = computeComposingConstraints(validatorFactory); constraintValidatorClasses = computeConstraintValidatorClasses(validatorFactory); - constraintValidatorClass = new ComputeConstraintValidatorClass<>(validatorFactory, meta.getValidationTargets(), + constraintValidatorClass = new ComputeConstraintValidatorClass<>(validatorFactory, meta.getValidationTarget(), annotation, validatedType).get(); } http://git-wip-us.apache.org/repos/asf/bval/blob/381ce927/bval-jsr/src/main/java/org/apache/bval/jsr/metadata/Meta.java ---------------------------------------------------------------------- diff --git a/bval-jsr/src/main/java/org/apache/bval/jsr/metadata/Meta.java b/bval-jsr/src/main/java/org/apache/bval/jsr/metadata/Meta.java index 7d4082b..17b75a9 100644 --- a/bval-jsr/src/main/java/org/apache/bval/jsr/metadata/Meta.java +++ b/bval-jsr/src/main/java/org/apache/bval/jsr/metadata/Meta.java @@ -29,9 +29,6 @@ import java.lang.reflect.Member; import java.lang.reflect.Method; import java.lang.reflect.Parameter; import java.lang.reflect.Type; -import java.util.Arrays; -import java.util.Collection; -import java.util.Collections; import java.util.Objects; import javax.validation.constraintvalidation.ValidationTarget; @@ -241,11 +238,6 @@ public abstract class Meta<E extends AnnotatedElement> { } @Override - public Collection<ValidationTarget> getValidationTargets() { - return Arrays.asList(ValidationTarget.values()); - } - - @Override public Type getType() { return getHost().getType(); } @@ -351,13 +343,8 @@ public abstract class Meta<E extends AnnotatedElement> { public abstract AnnotatedType getAnnotatedType(); public abstract String getName(); - - public abstract Meta<?> getParent(); - public Collection<ValidationTarget> getValidationTargets() { - // todo: cache for perf? - return Collections.singleton(getValidationTarget()); - } + public abstract Meta<?> getParent(); public ValidationTarget getValidationTarget() { return ValidationTarget.ANNOTATED_ELEMENT;
