You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bval.apache.org by mb...@apache.org on 2018/02/21 23:21:43 UTC

[2/5] bval git commit: validate length of supportedTargets()

validate length of supportedTargets()


Project: http://git-wip-us.apache.org/repos/asf/bval/repo
Commit: http://git-wip-us.apache.org/repos/asf/bval/commit/744b6bf8
Tree: http://git-wip-us.apache.org/repos/asf/bval/tree/744b6bf8
Diff: http://git-wip-us.apache.org/repos/asf/bval/diff/744b6bf8

Branch: refs/heads/bv2
Commit: 744b6bf8033a67aad778f78a6351d0ccf45b5ab9
Parents: c6c0c48
Author: Matt Benson <mb...@apache.org>
Authored: Wed Feb 21 16:41:24 2018 -0600
Committer: Matt Benson <mb...@apache.org>
Committed: Wed Feb 21 16:41:24 2018 -0600

----------------------------------------------------------------------
 .../src/main/java/org/apache/bval/jsr/ConstraintCached.java  | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/bval/blob/744b6bf8/bval-jsr/src/main/java/org/apache/bval/jsr/ConstraintCached.java
----------------------------------------------------------------------
diff --git a/bval-jsr/src/main/java/org/apache/bval/jsr/ConstraintCached.java b/bval-jsr/src/main/java/org/apache/bval/jsr/ConstraintCached.java
index a1f3924..3a89560 100644
--- a/bval-jsr/src/main/java/org/apache/bval/jsr/ConstraintCached.java
+++ b/bval-jsr/src/main/java/org/apache/bval/jsr/ConstraintCached.java
@@ -28,10 +28,12 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
+import java.util.Optional;
 import java.util.Set;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
+import javax.validation.ConstraintDefinitionException;
 import javax.validation.ConstraintValidator;
 import javax.validation.constraintvalidation.SupportedValidationTarget;
 import javax.validation.constraintvalidation.ValidationTarget;
@@ -41,6 +43,7 @@ import org.apache.bval.jsr.metadata.CompositeValidatorMappingProvider;
 import org.apache.bval.jsr.metadata.DualValidationMappingProvider;
 import org.apache.bval.jsr.metadata.ValidatorMappingProvider;
 import org.apache.bval.jsr.util.ToUnmodifiable;
+import org.apache.bval.util.Exceptions;
 import org.apache.bval.util.Lazy;
 import org.apache.bval.util.ObjectUtils;
 import org.apache.bval.util.Validate;
@@ -67,9 +70,12 @@ public class ConstraintCached {
             super();
             this.type = Validate.notNull(type);
             final SupportedValidationTarget svt = type.getAnnotation(SupportedValidationTarget.class);
-
+            
             supportedTargets = svt == null ? DEFAULT_VALIDATION_TARGETS
                 : Collections.unmodifiableSet(EnumSet.copyOf(Arrays.asList(svt.value())));
+
+            Exceptions.raiseIf(supportedTargets.isEmpty(), ConstraintDefinitionException::new,
+                "Illegally specified 0-length %s value on %s", SupportedValidationTarget.class.getSimpleName(), type);
         }
 
         public Class<? extends ConstraintValidator<T, ?>> getType() {