diff --git a/annotation-processor/src/main/java/org/hibernate/validator/ap/ConstraintAnnotationVisitor.java b/annotation-processor/src/main/java/org/hibernate/validator/ap/ConstraintAnnotationVisitor.java
index ec03ed9a28..b843ac8b89 100644
--- a/annotation-processor/src/main/java/org/hibernate/validator/ap/ConstraintAnnotationVisitor.java
+++ b/annotation-processor/src/main/java/org/hibernate/validator/ap/ConstraintAnnotationVisitor.java
@@ -109,6 +109,23 @@ public Void visitVariableAsField(VariableElement annotatedField, List
+ * Checks whether the given annotations are correctly specified at the given
+ * method parameter. The following checks are performed:
+ *
+ * mirrors) {
+ checkConstraints( annotatedField, mirrors );
+ return null;
+ }
+
/**
*
* Checks whether the given annotations are correctly specified at the given
diff --git a/annotation-processor/src/main/java/org/hibernate/validator/ap/checks/ConstraintCheckFactory.java b/annotation-processor/src/main/java/org/hibernate/validator/ap/checks/ConstraintCheckFactory.java
index 25427aa99d..0c21fda94e 100644
--- a/annotation-processor/src/main/java/org/hibernate/validator/ap/checks/ConstraintCheckFactory.java
+++ b/annotation-processor/src/main/java/org/hibernate/validator/ap/checks/ConstraintCheckFactory.java
@@ -34,6 +34,11 @@ public class ConstraintCheckFactory {
*/
private final Map fieldChecks;
+ /**
+ * Holds the checks to be executed for method parameter elements.
+ */
+ private final Map parameterChecks;
+
/**
* Holds the checks to be executed for method elements.
*/
@@ -56,6 +61,34 @@ public class ConstraintCheckFactory {
public ConstraintCheckFactory(Types typeUtils, ConstraintHelper constraintHelper, AnnotationApiHelper annotationApiHelper, boolean methodConstraintsSupported) {
this.constraintHelper = constraintHelper;
+ parameterChecks = CollectionHelper.newHashMap();
+
+ parameterChecks.put(
+ AnnotationType.CONSTRAINT_ANNOTATION,
+ new SingleValuedChecks(
+ new AnnotationParametersSizeLengthCheck( annotationApiHelper ),
+ new AnnotationParametersPatternCheck( annotationApiHelper ),
+ new AnnotationParametersScriptAssertCheck( annotationApiHelper ),
+ new AnnotationParametersDigitsCheck( annotationApiHelper ),
+ new AnnotationParametersDecimalMinMaxCheck( annotationApiHelper )
+ )
+ );
+ parameterChecks.put(
+ AnnotationType.MULTI_VALUED_CONSTRAINT_ANNOTATION,
+ new MultiValuedChecks(
+ constraintHelper,
+ new AnnotationParametersSizeLengthCheck( annotationApiHelper ),
+ new AnnotationParametersPatternCheck( annotationApiHelper ),
+ new AnnotationParametersScriptAssertCheck( annotationApiHelper ),
+ new AnnotationParametersDigitsCheck( annotationApiHelper ),
+ new AnnotationParametersDecimalMinMaxCheck( annotationApiHelper )
+ )
+ );
+ parameterChecks.put(
+ AnnotationType.GRAPH_VALIDATION_ANNOTATION, NULL_CHECKS
+ );
+ parameterChecks.put( AnnotationType.NO_CONSTRAINT_ANNOTATION, NULL_CHECKS );
+
fieldChecks = CollectionHelper.newHashMap();
fieldChecks.put(
AnnotationType.CONSTRAINT_ANNOTATION,
@@ -209,6 +242,8 @@ public ConstraintChecks getConstraintChecks(Element annotatedElement, Annotation
AnnotationType annotationType = constraintHelper.getAnnotationType( annotation );
switch ( annotatedElement.getKind() ) {
+ case PARAMETER:
+ return parameterChecks.get( annotationType );
case FIELD:
return fieldChecks.get( annotationType );
case METHOD:
diff --git a/annotation-processor/src/main/java/org/hibernate/validator/ap/checks/SingleValuedChecks.java b/annotation-processor/src/main/java/org/hibernate/validator/ap/checks/SingleValuedChecks.java
index dbf6c2f547..fba0b7164c 100644
--- a/annotation-processor/src/main/java/org/hibernate/validator/ap/checks/SingleValuedChecks.java
+++ b/annotation-processor/src/main/java/org/hibernate/validator/ap/checks/SingleValuedChecks.java
@@ -55,7 +55,10 @@ public Set execute(Element element, AnnotationMirror annot
//the given element
for ( ConstraintCheck oneCheck : checks ) {
- if ( element.getKind() == ElementKind.FIELD ) {
+ if ( element.getKind() == ElementKind.PARAMETER ) {
+ theValue.addAll( oneCheck.checkField( (VariableElement) element, annotation ) );
+ }
+ else if ( element.getKind() == ElementKind.FIELD ) {
theValue.addAll( oneCheck.checkField( (VariableElement) element, annotation ) );
}
else if ( element.getKind() == ElementKind.METHOD ) {
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/AnnotationParametersValidationTest.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/AnnotationParametersValidationTest.java
index 969491008e..c441c49c44 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/AnnotationParametersValidationTest.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/AnnotationParametersValidationTest.java
@@ -23,6 +23,7 @@
import org.hibernate.validator.ap.testmodel.annotationparameters.ValidScriptAssertParameters;
import org.hibernate.validator.ap.testmodel.annotationparameters.ValidSizeParameters;
import org.hibernate.validator.ap.util.DiagnosticExpectation;
+
import org.testng.annotations.Test;
import javax.tools.Diagnostic.Kind;
@@ -59,7 +60,14 @@ public void testInvalidSizeParameters() {
new DiagnosticExpectation( Kind.ERROR, 17 ),
new DiagnosticExpectation( Kind.ERROR, 20 ),
new DiagnosticExpectation( Kind.ERROR, 23 ),
- new DiagnosticExpectation( Kind.ERROR, 26 )
+ new DiagnosticExpectation( Kind.ERROR, 26 ),
+ new DiagnosticExpectation( Kind.ERROR, 30 ),
+ new DiagnosticExpectation( Kind.ERROR, 31 ),
+ new DiagnosticExpectation( Kind.ERROR, 32 ),
+ new DiagnosticExpectation( Kind.ERROR, 38 ),
+ new DiagnosticExpectation( Kind.ERROR, 39 ),
+ new DiagnosticExpectation( Kind.ERROR, 40 ),
+ new DiagnosticExpectation( Kind.ERROR, 45 )
);
}
@@ -87,7 +95,14 @@ public void testInvalidLengthParameters() {
new DiagnosticExpectation( Kind.ERROR, 16 ),
new DiagnosticExpectation( Kind.ERROR, 19 ),
new DiagnosticExpectation( Kind.ERROR, 22 ),
- new DiagnosticExpectation( Kind.ERROR, 25 )
+ new DiagnosticExpectation( Kind.ERROR, 25 ),
+ new DiagnosticExpectation( Kind.ERROR, 29 ),
+ new DiagnosticExpectation( Kind.ERROR, 30 ),
+ new DiagnosticExpectation( Kind.ERROR, 31 ),
+ new DiagnosticExpectation( Kind.ERROR, 37 ),
+ new DiagnosticExpectation( Kind.ERROR, 38 ),
+ new DiagnosticExpectation( Kind.ERROR, 39 ),
+ new DiagnosticExpectation( Kind.ERROR, 44 )
);
}
@@ -150,7 +165,14 @@ public void testInvalidPatternParameters() {
new DiagnosticExpectation( Kind.ERROR, 16 ),
new DiagnosticExpectation( Kind.ERROR, 19 ),
new DiagnosticExpectation( Kind.ERROR, 22 ),
- new DiagnosticExpectation( Kind.ERROR, 25 )
+ new DiagnosticExpectation( Kind.ERROR, 25 ),
+ new DiagnosticExpectation( Kind.ERROR, 29 ),
+ new DiagnosticExpectation( Kind.ERROR, 30 ),
+ new DiagnosticExpectation( Kind.ERROR, 31 ),
+ new DiagnosticExpectation( Kind.ERROR, 37 ),
+ new DiagnosticExpectation( Kind.ERROR, 38 ),
+ new DiagnosticExpectation( Kind.ERROR, 39 ),
+ new DiagnosticExpectation( Kind.ERROR, 44 )
);
}
@@ -178,7 +200,14 @@ public void testInvalidDigitsParameters() {
new DiagnosticExpectation( Kind.ERROR, 17 ),
new DiagnosticExpectation( Kind.ERROR, 20 ),
new DiagnosticExpectation( Kind.ERROR, 23 ),
- new DiagnosticExpectation( Kind.ERROR, 26 )
+ new DiagnosticExpectation( Kind.ERROR, 26 ),
+ new DiagnosticExpectation( Kind.ERROR, 30 ),
+ new DiagnosticExpectation( Kind.ERROR, 31 ),
+ new DiagnosticExpectation( Kind.ERROR, 32 ),
+ new DiagnosticExpectation( Kind.ERROR, 38 ),
+ new DiagnosticExpectation( Kind.ERROR, 39 ),
+ new DiagnosticExpectation( Kind.ERROR, 40 ),
+ new DiagnosticExpectation( Kind.ERROR, 45 )
);
}
@@ -210,7 +239,14 @@ public void testInvalidDecimalMinMaxParameters() {
new DiagnosticExpectation( Kind.ERROR, 26 ),
new DiagnosticExpectation( Kind.ERROR, 27 ),
new DiagnosticExpectation( Kind.ERROR, 30 ),
- new DiagnosticExpectation( Kind.ERROR, 31 )
+ new DiagnosticExpectation( Kind.ERROR, 31 ),
+ new DiagnosticExpectation( Kind.ERROR, 35 ),
+ new DiagnosticExpectation( Kind.ERROR, 36 ),
+ new DiagnosticExpectation( Kind.ERROR, 37 ),
+ new DiagnosticExpectation( Kind.ERROR, 43 ),
+ new DiagnosticExpectation( Kind.ERROR, 44 ),
+ new DiagnosticExpectation( Kind.ERROR, 45 ),
+ new DiagnosticExpectation( Kind.ERROR, 50 )
);
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidDecimalMinMaxParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidDecimalMinMaxParameters.java
index eab8875313..d82dd4dd13 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidDecimalMinMaxParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidDecimalMinMaxParameters.java
@@ -6,29 +6,49 @@
*/
package org.hibernate.validator.ap.testmodel.annotationparameters;
+import java.math.BigDecimal;
import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
-import java.math.BigDecimal;
/**
* @author Marko Bekhta
*/
public class InvalidDecimalMinMaxParameters {
- @DecimalMax( value = "a" )
- @DecimalMin( value = "a" )
+ @DecimalMax(value = "a")
+ @DecimalMin(value = "a")
private BigDecimal decimal1;
- @DecimalMax( value = "123.12.00" )
- @DecimalMin( value = "123.12.00" )
+ @DecimalMax(value = "123.12.00")
+ @DecimalMin(value = "123.12.00")
private BigDecimal decimal2;
- @DecimalMax( value = "123E-3-3" )
- @DecimalMin( value = "123E-3-3" )
+ @DecimalMax(value = "123E-3-3")
+ @DecimalMin(value = "123E-3-3")
private BigDecimal decimal3;
@DecimalMax.List({ @DecimalMax(value = "123E-3-3") })
@DecimalMin.List({ @DecimalMin(value = "123E-3-3") })
private BigDecimal decimal4;
+ public InvalidDecimalMinMaxParameters(
+ @DecimalMax(value = "a") BigDecimal decimal1,
+ @DecimalMax(value = "0.0.0E+7") BigDecimal decimal2,
+ @DecimalMax(value = "1234.5E-4-4") BigDecimal decimal3
+ ) {
+
+ }
+
+ public void doSomething(
+ @DecimalMax(value = "a") BigDecimal decimal1,
+ @DecimalMax(value = "0.0.0E+7") BigDecimal decimal2,
+ @DecimalMax(value = "1234.5E-4-4") BigDecimal decimal3
+ ) {
+
+ }
+
+ @DecimalMax(value = "1234.5E-4-4")
+ public BigDecimal doSomething() {
+ return BigDecimal.ONE;
+ }
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidDigitsParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidDigitsParameters.java
index e864da30e3..ea3d0927dd 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidDigitsParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidDigitsParameters.java
@@ -6,24 +6,44 @@
*/
package org.hibernate.validator.ap.testmodel.annotationparameters;
-import javax.validation.constraints.Digits;
import java.math.BigDecimal;
+import javax.validation.constraints.Digits;
/**
* @author Marko Bekhta
*/
public class InvalidDigitsParameters {
- @Digits( integer = -3, fraction = 3 )
+ @Digits(integer = -3, fraction = 3)
private BigDecimal decimal1;
- @Digits( integer = 5, fraction = -3 )
+ @Digits(integer = 5, fraction = -3)
private BigDecimal decimal2;
- @Digits( integer = -5, fraction = -3 )
+ @Digits(integer = -5, fraction = -3)
private BigDecimal decimal3;
@Digits.List({ @Digits(integer = -5, fraction = -3), @Digits(integer = 5, fraction = -3) })
private BigDecimal decimal4;
+ public InvalidDigitsParameters(
+ @Digits(integer = -1, fraction = 3) BigDecimal decimal1,
+ @Digits(integer = -5, fraction = -3) BigDecimal decimal2,
+ @Digits(integer = 3, fraction = -3) BigDecimal decimal3
+ ) {
+
+ }
+
+ public void doSomething(
+ @Digits(integer = -1, fraction = 3) BigDecimal decimal1,
+ @Digits(integer = -5, fraction = -3) BigDecimal decimal2,
+ @Digits(integer = 3, fraction = -3) BigDecimal decimal3
+ ) {
+
+ }
+
+ @Digits(integer = -1, fraction = 3)
+ public BigDecimal doSomething() {
+ return BigDecimal.ONE;
+ }
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidLengthParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidLengthParameters.java
index 0aaa974806..2d3e1f73c8 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidLengthParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidLengthParameters.java
@@ -13,16 +13,37 @@
*/
public class InvalidLengthParameters {
- @Length( min = -1 )
+ @Length(min = -1)
private String string1;
- @Length( max = -10 )
+ @Length(max = -10)
private String string2;
- @Length( min = 15, max = 10 )
+ @Length(min = 15, max = 10)
private String string3;
@Length.List({ @Length(min = 15, max = 10), @Length(max = -10) })
private String string4;
+ public InvalidLengthParameters(
+ @Length(min = -1) String strings1,
+ @Length(max = -10) String strings2,
+ @Length(min = 15, max = 10) String strings3
+ ) {
+
+ }
+
+ public void doSomething(
+ @Length(min = -1) String strings1,
+ @Length(max = -10) String strings2,
+ @Length(min = 15, max = 10) String strings3
+ ) {
+
+ }
+
+ @Length(min = -10)
+ public String doSomething() {
+ return "";
+ }
+
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidPatternParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidPatternParameters.java
index 55a6fc195b..ca6876c932 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidPatternParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidPatternParameters.java
@@ -13,16 +13,36 @@
*/
public class InvalidPatternParameters {
- @Pattern( regexp = "\\" )
+ @Pattern(regexp = "\\")
private String strings1;
- @Pattern( regexp = "[a" )
+ @Pattern(regexp = "[a")
private String strings2;
- @Pattern( regexp = "+" )
+ @Pattern(regexp = "+")
private String strings3;
@Pattern.List({ @Pattern(regexp = "+"), @Pattern(regexp = "[a") })
private String strings4;
+ public InvalidPatternParameters(
+ @Pattern(regexp = "\\") String strings1,
+ @Pattern(regexp = "[test") String strings2,
+ @Pattern(regexp = "+") String strings3
+ ) {
+
+ }
+
+ public void doSomething(
+ @Pattern(regexp = "\\") String strings1,
+ @Pattern(regexp = "[test") String strings2,
+ @Pattern(regexp = "+") String strings3
+ ) {
+
+ }
+
+ @Pattern(regexp = "\\")
+ public String doSomething() {
+ return "";
+ }
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidScriptAssertParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidScriptAssertParameters.java
index af5c7f0977..8d3b236edc 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidScriptAssertParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidScriptAssertParameters.java
@@ -13,43 +13,43 @@
*/
public class InvalidScriptAssertParameters {
- @ScriptAssert( lang = " ", script = "some script" )
+ @ScriptAssert(lang = " ", script = "some script")
public static class Case1 {
}
- @ScriptAssert( lang = " ", script = "some script", alias = "some alias" )
+ @ScriptAssert(lang = " ", script = "some script", alias = "some alias")
public static class Case2 {
}
- @ScriptAssert( lang = " ", script = "some script", alias = " " )
+ @ScriptAssert(lang = " ", script = "some script", alias = " ")
public static class Case3 {
}
- @ScriptAssert( lang = "some lang", script = " " )
+ @ScriptAssert(lang = "some lang", script = " ")
public static class Case4 {
}
- @ScriptAssert( lang = "some lang", script = " ", alias = "some alias" )
+ @ScriptAssert(lang = "some lang", script = " ", alias = "some alias")
public static class Case5 {
}
- @ScriptAssert( lang = "some lang", script = " ", alias = " " )
+ @ScriptAssert(lang = "some lang", script = " ", alias = " ")
public static class Case6 {
}
- @ScriptAssert( lang = "some lang", script = "some script", alias = " " )
+ @ScriptAssert(lang = "some lang", script = "some script", alias = " ")
public static class Case7 {
}
- @ScriptAssert( lang = " ", script = " " )
+ @ScriptAssert(lang = " ", script = " ")
public static class Case8 {
}
- @ScriptAssert( lang = " ", script = " ", alias = "some alias" )
+ @ScriptAssert(lang = " ", script = " ", alias = "some alias")
public static class Case9 {
}
- @ScriptAssert( lang = " ", script = " ", alias = " " )
+ @ScriptAssert(lang = " ", script = " ", alias = " ")
public static class Case10 {
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidSizeParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidSizeParameters.java
index dc1cb7990c..ee5a598134 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidSizeParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/InvalidSizeParameters.java
@@ -6,24 +6,44 @@
*/
package org.hibernate.validator.ap.testmodel.annotationparameters;
-import javax.validation.constraints.Size;
import java.util.Collection;
+import javax.validation.constraints.Size;
/**
* @author Marko Bekhta
*/
public class InvalidSizeParameters {
- @Size( min = -1 )
+ @Size(min = -1)
private Collection strings1;
- @Size( max = -10 )
+ @Size(max = -10)
private Collection strings2;
- @Size( min = 15, max = 10 )
+ @Size(min = 15, max = 10)
private Collection strings3;
@Size.List({ @Size(min = -1), @Size(max = -15), @Size(min = 15, max = 10) })
private Collection strings4;
+ public InvalidSizeParameters(
+ @Size(min = -1) Collection strings1,
+ @Size(max = -10) Collection strings2,
+ @Size(min = 15, max = 10) Collection strings3
+ ) {
+
+ }
+
+ public void doSomething(
+ @Size(min = -1) Collection strings1,
+ @Size(max = -10) Collection strings2,
+ @Size(min = 15, max = 10) Collection strings3
+ ) {
+
+ }
+
+ @Size(min = -10)
+ public Collection doSomething() {
+ return java.util.Collections.emptyList();
+ }
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidDecimalMinMaxParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidDecimalMinMaxParameters.java
index b18801c1d6..23b973b336 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidDecimalMinMaxParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidDecimalMinMaxParameters.java
@@ -6,73 +6,94 @@
*/
package org.hibernate.validator.ap.testmodel.annotationparameters;
+import java.math.BigDecimal;
import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
-import java.math.BigDecimal;
/**
* @author Marko Bekhta
*/
public class ValidDecimalMinMaxParameters {
- @DecimalMax( value = "0" )
- @DecimalMin( value = "0" )
+ @DecimalMax(value = "0")
+ @DecimalMin(value = "0")
private BigDecimal decimal1;
- @DecimalMax( value = "0.00" )
- @DecimalMin( value = "0.00" )
+ @DecimalMax(value = "0.00")
+ @DecimalMin(value = "0.00")
private BigDecimal decimal2;
- @DecimalMax( value = "123" )
- @DecimalMin( value = "123" )
+ @DecimalMax(value = "123")
+ @DecimalMin(value = "123")
private BigDecimal decimal3;
- @DecimalMax( value = "-123" )
- @DecimalMin( value = "-123" )
+ @DecimalMax(value = "-123")
+ @DecimalMin(value = "-123")
private BigDecimal decimal4;
- @DecimalMax( value = "1.23E3" )
- @DecimalMin( value = "1.23E3" )
+ @DecimalMax(value = "1.23E3")
+ @DecimalMin(value = "1.23E3")
private BigDecimal decimal5;
- @DecimalMax( value = "1.23E+3" )
- @DecimalMin( value = "1.23E+3" )
+ @DecimalMax(value = "1.23E+3")
+ @DecimalMin(value = "1.23E+3")
private BigDecimal decimal6;
- @DecimalMax( value = "12.3E+7" )
- @DecimalMin( value = "12.3E+7" )
+ @DecimalMax(value = "12.3E+7")
+ @DecimalMin(value = "12.3E+7")
private BigDecimal decimal7;
- @DecimalMax( value = "12.0" )
- @DecimalMin( value = "12.0" )
+ @DecimalMax(value = "12.0")
+ @DecimalMin(value = "12.0")
private BigDecimal decimal8;
- @DecimalMax( value = "12.3" )
- @DecimalMin( value = "12.3" )
+ @DecimalMax(value = "12.3")
+ @DecimalMin(value = "12.3")
private BigDecimal decimal9;
- @DecimalMax( value = "0.00123" )
- @DecimalMin( value = "0.00123" )
+ @DecimalMax(value = "0.00123")
+ @DecimalMin(value = "0.00123")
private BigDecimal decimal10;
- @DecimalMax( value = "-1.23E-12" )
- @DecimalMin( value = "-1.23E-12" )
+ @DecimalMax(value = "-1.23E-12")
+ @DecimalMin(value = "-1.23E-12")
private BigDecimal decimal11;
- @DecimalMax( value = "1234.5E-4" )
- @DecimalMin( value = "1234.5E-4" )
+ @DecimalMax(value = "1234.5E-4")
+ @DecimalMin(value = "1234.5E-4")
private BigDecimal decimal12;
- @DecimalMax( value = "0E+7" )
- @DecimalMin( value = "0E+7" )
+ @DecimalMax(value = "0E+7")
+ @DecimalMin(value = "0E+7")
private BigDecimal decimal13;
- @DecimalMax( value = "-0" )
- @DecimalMin( value = "-0" )
+ @DecimalMax(value = "-0")
+ @DecimalMin(value = "-0")
private BigDecimal decimal14;
@DecimalMax.List({ @DecimalMax(value = "-0"), @DecimalMax(value = "0E+7") })
@DecimalMin.List({ @DecimalMin(value = "-0"), @DecimalMin(value = "0E+7") })
private BigDecimal decimal15;
+ public ValidDecimalMinMaxParameters(
+ @DecimalMax(value = "-0") BigDecimal decimal1,
+ @DecimalMax(value = "0E+7") BigDecimal decimal2,
+ @DecimalMax(value = "1234.5E-4") BigDecimal decimal3
+ ) {
+
+ }
+
+ public void doSomething(
+ @DecimalMax(value = "-0") BigDecimal decimal1,
+ @DecimalMax(value = "0E+7") BigDecimal decimal2,
+ @DecimalMax(value = "1234.5E-4") BigDecimal decimal3
+ ) {
+
+ }
+
+ @DecimalMax(value = "1234.5E-4")
+ public BigDecimal doSomething() {
+ return BigDecimal.ONE;
+ }
+
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidDigitsParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidDigitsParameters.java
index f4917bf2d7..845f971d29 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidDigitsParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidDigitsParameters.java
@@ -6,24 +6,45 @@
*/
package org.hibernate.validator.ap.testmodel.annotationparameters;
-import javax.validation.constraints.Digits;
import java.math.BigDecimal;
+import javax.validation.constraints.Digits;
/**
* @author Marko Bekhta
*/
public class ValidDigitsParameters {
- @Digits( integer = 3, fraction = 3 )
+ @Digits(integer = 3, fraction = 3)
private BigDecimal decimal1;
- @Digits( integer = 5, fraction = 3 )
+ @Digits(integer = 5, fraction = 3)
private BigDecimal decimal2;
- @Digits( integer = 0, fraction = 3 )
+ @Digits(integer = 0, fraction = 3)
private BigDecimal decimal3;
@Digits.List({ @Digits(integer = 0, fraction = 3), @Digits(integer = 5, fraction = 3), @Digits(integer = 3, fraction = 3) })
private BigDecimal decimal4;
+ public ValidDigitsParameters(
+ @Digits(integer = 0, fraction = 3) BigDecimal decimal1,
+ @Digits(integer = 5, fraction = 3) BigDecimal decimal2,
+ @Digits(integer = 3, fraction = 3) BigDecimal decimal3
+ ) {
+
+ }
+
+ public void doSomething(
+ @Digits(integer = 0, fraction = 3) BigDecimal decimal1,
+ @Digits(integer = 5, fraction = 3) BigDecimal decimal2,
+ @Digits(integer = 3, fraction = 3) BigDecimal decimal3
+ ) {
+
+ }
+
+ @Digits(integer = 0, fraction = 3)
+ public BigDecimal doSomething() {
+ return BigDecimal.ONE;
+ }
+
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidLengthParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidLengthParameters.java
index 7fd31e1c63..77912de379 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidLengthParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidLengthParameters.java
@@ -16,16 +16,28 @@ public class ValidLengthParameters {
@Length
private String string1;
- @Length( min = 10 )
+ @Length(min = 10)
private String string2;
- @Length( max = 10 )
+ @Length(max = 10)
private String string3;
- @Length( min = 10, max = 15 )
+ @Length(min = 10, max = 15)
private String string4;
@Length.List({ @Length(min = 10, max = 15), @Length(max = 10), @Length(min = 10), @Length })
private String string5;
+ public ValidLengthParameters(@Length(min = 10) String string) {
+
+ }
+
+ public void doSomething(@Length(min = 10) String string) {
+
+ }
+
+ @Length(min = 10)
+ public String doSomething() {
+ return "";
+ }
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidPatternParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidPatternParameters.java
index 9b1a096a39..eab9cc9087 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidPatternParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidPatternParameters.java
@@ -13,16 +13,37 @@
*/
public class ValidPatternParameters {
- @Pattern( regexp = "test" )
+ @Pattern(regexp = "test")
private String strings1;
- @Pattern( regexp = "[test]" )
+ @Pattern(regexp = "[test]")
private String strings2;
- @Pattern( regexp = "\\." )
+ @Pattern(regexp = "\\.")
private String strings3;
@Pattern.List({ @Pattern(regexp = "\\."), @Pattern(regexp = "[test]"), @Pattern(regexp = "test") })
private String strings4;
+ public ValidPatternParameters(
+ @Pattern(regexp = "\\.") String strings1,
+ @Pattern(regexp = "[test]") String strings2,
+ @Pattern(regexp = "test") String strings3
+ ) {
+
+ }
+
+ public void doSomething(
+ @Pattern(regexp = "\\.") String strings1,
+ @Pattern(regexp = "[test]") String strings2,
+ @Pattern(regexp = "test") String strings3
+ ) {
+
+ }
+
+ @Pattern(regexp = "\\.")
+ public String doSomething() {
+ return "";
+ }
+
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidScriptAssertParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidScriptAssertParameters.java
index 7ec08a7eaa..059d76e82a 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidScriptAssertParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidScriptAssertParameters.java
@@ -13,18 +13,20 @@
*/
public class ValidScriptAssertParameters {
- @ScriptAssert( lang = "some lang", script = "some script" )
+ @ScriptAssert(lang = "some lang", script = "some script")
public static class Case1 {
}
- @ScriptAssert( lang = "some lang", script = "some script", alias = "some alias" )
+ @ScriptAssert(lang = "some lang", script = "some script", alias = "some alias")
public static class Case2 {
}
- @ScriptAssert.List({ @ScriptAssert(lang = "some lang", script = "some script", alias = "some alias"),
- @ScriptAssert(lang = "some lang", script = "some script") })
+ @ScriptAssert.List({
+ @ScriptAssert(lang = "some lang", script = "some script", alias = "some alias"),
+ @ScriptAssert(lang = "some lang", script = "some script")
+ })
public static class Case3 {
}
diff --git a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidSizeParameters.java b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidSizeParameters.java
index dd90f4f854..8e0300b1bc 100644
--- a/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidSizeParameters.java
+++ b/annotation-processor/src/test/java/org/hibernate/validator/ap/testmodel/annotationparameters/ValidSizeParameters.java
@@ -6,8 +6,9 @@
*/
package org.hibernate.validator.ap.testmodel.annotationparameters;
-import javax.validation.constraints.Size;
import java.util.Collection;
+import java.util.Collections;
+import javax.validation.constraints.Size;
/**
* @author Marko Bekhta
@@ -17,16 +18,29 @@ public class ValidSizeParameters {
@Size
private Collection strings1;
- @Size( min = 10 )
+ @Size(min = 10)
private Collection strings2;
- @Size( max = 10 )
+ @Size(max = 10)
private Collection strings3;
- @Size( min = 10, max = 15 )
+ @Size(min = 10, max = 15)
private Collection strings4;
@Size.List({ @Size, @Size(min = 10), @Size(max = 15), @Size(min = 10, max = 15) })
private Collection strings5;
+ public ValidSizeParameters(@Size(min = 10) Collection string) {
+
+ }
+
+ public void doSomething(@Size(min = 10) Collection string) {
+
+ }
+
+ @Size(min = 10)
+ public Collection doSomething() {
+ return Collections.emptyList();
+ }
+
}