You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by jo...@apache.org on 2017/09/04 21:01:50 UTC
svn commit: r1807299 [2/2] - in
/geronimo/specs/trunk/geronimo-validation_2.0_spec: ./
src/main/java/javax/validation/ src/main/java/javax/validation/bootstrap/
src/main/java/javax/validation/constraints/
src/main/java/javax/validation/executable/ src/...
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/NotEmpty.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/NotEmpty.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/NotEmpty.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/NotEmpty.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.constraints;
+
+import javax.validation.Constraint;
+import javax.validation.Payload;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
+import static java.lang.annotation.ElementType.CONSTRUCTOR;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+/**
+ * @since 2.0
+ */
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+@Retention(RUNTIME)
+@Documented
+@Constraint(validatedBy = {})
+@Repeatable(NotEmpty.List.class)
+public @interface NotEmpty {
+ String message() default "{javax.validation.constraints.NotEmpty.message}";
+
+ Class<?>[] groups() default {};
+
+ Class<? extends Payload>[] payload() default {};
+
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+ @Retention(RUNTIME)
+ @Documented
+ @interface List {
+ NotEmpty[] value();
+ }
+}
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/NotNull.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/NotNull.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/NotNull.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/NotNull.java Mon Sep 4 21:01:48 2017
@@ -19,6 +19,7 @@ package javax.validation.constraints;
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
@@ -27,6 +28,7 @@ import static java.lang.annotation.Eleme
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
@@ -34,10 +36,11 @@ import static java.lang.annotation.Reten
*
* @version $Rev$ $Date$
*/
-@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {})
+@Repeatable(NotNull.List.class)
public @interface NotNull {
String message() default "{javax.validation.constraints.NotNull.message}";
@@ -45,11 +48,10 @@ public @interface NotNull {
Class<? extends Payload>[] payload() default {};
- @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@interface List {
NotNull[] value();
}
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Null.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Null.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Null.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Null.java Mon Sep 4 21:01:48 2017
@@ -19,6 +19,7 @@ package javax.validation.constraints;
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
@@ -27,6 +28,7 @@ import static java.lang.annotation.Eleme
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
@@ -34,10 +36,11 @@ import static java.lang.annotation.Reten
*
* @version $Rev$ $Date$
*/
-@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {})
+@Repeatable(Null.List.class)
public @interface Null {
String message() default "{javax.validation.constraints.Null.message}";
@@ -45,11 +48,10 @@ public @interface Null {
Class<? extends Payload>[] payload() default {};
- @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@interface List {
Null[] value();
}
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Past.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Past.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Past.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Past.java Mon Sep 4 21:01:48 2017
@@ -19,6 +19,7 @@ package javax.validation.constraints;
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
@@ -27,20 +28,44 @@ import static java.lang.annotation.Eleme
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
+ * <p>
* Verify that the annotated value of the annotated element is in the past or {@code null}.
- * Supported types are {@link java.util.Calendar} and {@link java.util.Date}
+ * </p>
+ * <p>
+ * Supports:
+ * <ul>
+ * <li>{@code java.util.Date}</li>
+ * <li>{@code java.util.Calendar}</li>
+ * <li>{@code java.time.Instant}</li>
+ * <li>{@code java.time.LocalDate}</li>
+ * <li>{@code java.time.LocalDateTime}</li>
+ * <li>{@code java.time.LocalTime}</li>
+ * <li>{@code java.time.MonthDay}</li>
+ * <li>{@code java.time.OffsetDateTime}</li>
+ * <li>{@code java.time.OffsetTime}</li>
+ * <li>{@code java.time.Year}</li>
+ * <li>{@code java.time.YearMonth}</li>
+ * <li>{@code java.time.ZonedDateTime}</li>
+ * <li>{@code java.time.chrono.HijrahDate}</li>
+ * <li>{@code java.time.chrono.JapaneseDate}</li>
+ * <li>{@code java.time.chrono.MinguoDate}</li>
+ * <li>{@code java.time.chrono.ThaiBuddhistDate}</li>
+ * </ul>
+ * </p>
*
* Other types might be supported in a non-portable manner.
*
* @version $Rev$ $Date$
*/
-@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {})
+@Repeatable(Past.List.class)
public @interface Past {
String message() default "{javax.validation.constraints.Past.message}";
@@ -48,11 +73,10 @@ public @interface Past {
Class<? extends Payload>[] payload() default {};
- @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@interface List {
Past[] value();
}
}
-
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/PastOrPresent.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/PastOrPresent.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/PastOrPresent.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/PastOrPresent.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,82 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.constraints;
+
+import javax.validation.Constraint;
+import javax.validation.Payload;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
+import static java.lang.annotation.ElementType.CONSTRUCTOR;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+/**
+ * <p>
+ * Verify that the value of the annotated element is in the past, present or {@code null}.
+ * </p>
+ * <p>
+ * Supports:
+ * <ul>
+ * <li>{@code java.util.Date}</li>
+ * <li>{@code java.util.Calendar}</li>
+ * <li>{@code java.time.Instant}</li>
+ * <li>{@code java.time.LocalDate}</li>
+ * <li>{@code java.time.LocalDateTime}</li>
+ * <li>{@code java.time.LocalTime}</li>
+ * <li>{@code java.time.MonthDay}</li>
+ * <li>{@code java.time.OffsetDateTime}</li>
+ * <li>{@code java.time.OffsetTime}</li>
+ * <li>{@code java.time.Year}</li>
+ * <li>{@code java.time.YearMonth}</li>
+ * <li>{@code java.time.ZonedDateTime}</li>
+ * <li>{@code java.time.chrono.HijrahDate}</li>
+ * <li>{@code java.time.chrono.JapaneseDate}</li>
+ * <li>{@code java.time.chrono.MinguoDate}</li>
+ * <li>{@code java.time.chrono.ThaiBuddhistDate}</li>
+ * </ul>
+ * </p>
+ *
+ * Other types might be supported in a non-portable manner.
+ *
+ * @since 2.0
+ */
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+@Retention(RUNTIME)
+@Documented
+@Constraint(validatedBy = {})
+@Repeatable(PastOrPresent.List.class)
+public @interface PastOrPresent {
+ String message() default "{javax.validation.constraints.PastOrPresent.message}";
+
+ Class<?>[] groups() default {};
+
+ Class<? extends Payload>[] payload() default {};
+
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+ @Retention(RUNTIME)
+ @Documented
+ @interface List {
+ PastOrPresent[] value();
+ }
+}
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Pattern.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Pattern.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Pattern.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Pattern.java Mon Sep 4 21:01:48 2017
@@ -19,6 +19,7 @@ package javax.validation.constraints;
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
@@ -27,6 +28,7 @@ import static java.lang.annotation.Eleme
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
@@ -35,10 +37,11 @@ import static java.lang.annotation.Reten
*
* @version $Rev$ $Date$
*/
-@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {})
+@Repeatable(Pattern.List.class)
public @interface Pattern {
String regexp();
@@ -78,11 +81,10 @@ public @interface Pattern {
}
}
- @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@interface List {
Pattern[] value();
}
}
-
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Positive.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Positive.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Positive.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Positive.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.constraints;
+
+import javax.validation.Constraint;
+import javax.validation.Payload;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
+import static java.lang.annotation.ElementType.CONSTRUCTOR;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+/**
+ * @since 2.0
+ */
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+@Retention(RUNTIME)
+@Documented
+@Constraint(validatedBy = {})
+@Repeatable(Positive.List.class)
+public @interface Positive {
+ String message() default "{javax.validation.constraints.Positive.message}";
+
+ Class<?>[] groups() default {};
+
+ Class<? extends Payload>[] payload() default {};
+
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+ @Retention(RUNTIME)
+ @Documented
+ @interface List {
+ Positive[] value();
+ }
+}
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/PositiveOrZero.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/PositiveOrZero.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/PositiveOrZero.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/PositiveOrZero.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.constraints;
+
+import javax.validation.Constraint;
+import javax.validation.Payload;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
+import static java.lang.annotation.ElementType.CONSTRUCTOR;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+/**
+ * @since 2.0
+ */
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+@Retention(RUNTIME)
+@Documented
+@Constraint(validatedBy = {})
+@Repeatable(PositiveOrZero.List.class)
+public @interface PositiveOrZero {
+ String message() default "{javax.validation.constraints.PositiveOrZero.message}";
+
+ Class<?>[] groups() default {};
+
+ Class<? extends Payload>[] payload() default {};
+
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+ @Retention(RUNTIME)
+ @Documented
+ @interface List {
+ PositiveOrZero[] value();
+ }
+}
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Size.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Size.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Size.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/constraints/Size.java Mon Sep 4 21:01:48 2017
@@ -19,6 +19,7 @@ package javax.validation.constraints;
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
@@ -27,6 +28,7 @@ import static java.lang.annotation.Eleme
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE_USE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
@@ -36,10 +38,11 @@ import static java.lang.annotation.Reten
*
* @version $Rev$ $Date$
*/
-@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {})
+@Repeatable(Size.List.class)
public @interface Size {
String message() default "{javax.validation.constraints.Size.message}";
@@ -51,11 +54,10 @@ public @interface Size {
int max() default Integer.MAX_VALUE;
- @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
+ @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@interface List {
Size[] value();
}
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ExecutableType.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ExecutableType.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ExecutableType.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ExecutableType.java Mon Sep 4 21:01:48 2017
@@ -20,4 +20,3 @@ package javax.validation.executable;
public enum ExecutableType {
IMPLICIT, NONE, CONSTRUCTORS, NON_GETTER_METHODS, GETTER_METHODS, ALL
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ExecutableValidator.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ExecutableValidator.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ExecutableValidator.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ExecutableValidator.java Mon Sep 4 21:01:48 2017
@@ -36,4 +36,3 @@ public interface ExecutableValidator {
T createdObject,
Class<?>... groups);
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ValidateOnExecution.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ValidateOnExecution.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ValidateOnExecution.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/executable/ValidateOnExecution.java Mon Sep 4 21:01:48 2017
@@ -25,10 +25,12 @@ import static java.lang.annotation.Eleme
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import java.lang.annotation.Documented;
+
/** @since 1.1 */
@Target({ CONSTRUCTOR, METHOD, TYPE, PACKAGE })
@Retention(RUNTIME)
+@Documented
public @interface ValidateOnExecution {
ExecutableType[] type() default { ExecutableType.IMPLICIT };
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/groups/ConvertGroup.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/groups/ConvertGroup.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/groups/ConvertGroup.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/groups/ConvertGroup.java Mon Sep 4 21:01:48 2017
@@ -17,6 +17,7 @@
package javax.validation.groups;
import java.lang.annotation.Documented;
+import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
@@ -24,18 +25,19 @@ import static java.lang.annotation.Eleme
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
-import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.ElementType.TYPE_USE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/** @since 1.1 */
-@Target({ TYPE, METHOD, FIELD, CONSTRUCTOR, PARAMETER })
+@Target({ METHOD, FIELD, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
+@Repeatable(ConvertGroup.List.class)
public @interface ConvertGroup {
- Class<?> from();
+ Class<?> from() default Default.class;
Class<?> to();
- @Target({ TYPE, METHOD, FIELD, CONSTRUCTOR, PARAMETER })
+ @Target({ METHOD, FIELD, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@interface List {
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/groups/Default.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/groups/Default.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/groups/Default.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/groups/Default.java Mon Sep 4 21:01:48 2017
@@ -23,4 +23,3 @@ package javax.validation.groups;
*/
public interface Default {
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/BeanDescriptor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/BeanDescriptor.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/BeanDescriptor.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/BeanDescriptor.java Mon Sep 4 21:01:48 2017
@@ -33,4 +33,3 @@ public interface BeanDescriptor extends
ConstructorDescriptor getConstraintsForConstructor(Class<?>... parameterTypes);
Set<ConstructorDescriptor> getConstrainedConstructors();
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ConstraintDescriptor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ConstraintDescriptor.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ConstraintDescriptor.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ConstraintDescriptor.java Mon Sep 4 21:01:48 2017
@@ -43,9 +43,15 @@ public interface ConstraintDescriptor<T
boolean isReportAsSingleViolation();
- // @since 1.1
-
+ /** @since 1.1 */
String getMessageTemplate();
+
+ /** @since 1.1 */
ConstraintTarget getValidationAppliesTo();
-}
+ /** @since 2.0 */
+ ValidateUnwrappedValue getValueUnwrapping();
+
+ /** @since 2.0 */
+ <U> U unwrap(Class<U> type);
+}
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ContainerDescriptor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ContainerDescriptor.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ContainerDescriptor.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ContainerDescriptor.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.metadata;
+
+import java.util.Set;
+
+/**
+ * @since 2.0
+ */
+public interface ContainerDescriptor {
+
+ Set<ContainerElementTypeDescriptor> getConstrainedContainerElementTypes();
+}
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ContainerElementTypeDescriptor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ContainerElementTypeDescriptor.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ContainerElementTypeDescriptor.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ContainerElementTypeDescriptor.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.metadata;
+
+/**
+ * @since 2.0
+ */
+public interface ContainerElementTypeDescriptor extends ElementDescriptor, CascadableDescriptor, ContainerDescriptor {
+
+ Class<?> getContainerClass();
+
+ Integer getTypeArgumentIndex();
+}
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ExecutableDescriptor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ExecutableDescriptor.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ExecutableDescriptor.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ExecutableDescriptor.java Mon Sep 4 21:01:48 2017
@@ -27,4 +27,3 @@ public interface ExecutableDescriptor ex
boolean hasConstrainedParameters();
boolean hasConstrainedReturnValue();
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ParameterDescriptor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ParameterDescriptor.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ParameterDescriptor.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ParameterDescriptor.java Mon Sep 4 21:01:48 2017
@@ -17,7 +17,7 @@
package javax.validation.metadata;
/** @since 1.1 */
-public interface ParameterDescriptor extends ElementDescriptor, CascadableDescriptor {
+public interface ParameterDescriptor extends ElementDescriptor, CascadableDescriptor, ContainerDescriptor {
int getIndex();
String getName();
}
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/PropertyDescriptor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/PropertyDescriptor.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/PropertyDescriptor.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/PropertyDescriptor.java Mon Sep 4 21:01:48 2017
@@ -19,7 +19,6 @@ package javax.validation.metadata;
/**
* @version $Rev$ $Date$
*/
-public interface PropertyDescriptor extends ElementDescriptor, CascadableDescriptor {
+public interface PropertyDescriptor extends ElementDescriptor, CascadableDescriptor, ContainerDescriptor {
String getPropertyName();
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ReturnValueDescriptor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ReturnValueDescriptor.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ReturnValueDescriptor.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ReturnValueDescriptor.java Mon Sep 4 21:01:48 2017
@@ -17,5 +17,5 @@
package javax.validation.metadata;
/** @since 1.1 */
-public interface ReturnValueDescriptor extends ElementDescriptor, CascadableDescriptor {
+public interface ReturnValueDescriptor extends ElementDescriptor, CascadableDescriptor, ContainerDescriptor {
}
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/Scope.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/Scope.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/Scope.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/Scope.java Mon Sep 4 21:01:48 2017
@@ -23,4 +23,3 @@ public enum Scope {
LOCAL_ELEMENT,
HIERARCHY
}
-
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ValidateUnwrappedValue.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ValidateUnwrappedValue.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ValidateUnwrappedValue.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/metadata/ValidateUnwrappedValue.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.metadata;
+
+/**
+ * @since 2.0
+ */
+public enum ValidateUnwrappedValue {
+ DEFAULT, UNWRAP, SKIP;
+}
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/BootstrapState.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/BootstrapState.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/BootstrapState.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/BootstrapState.java Mon Sep 4 21:01:48 2017
@@ -26,4 +26,3 @@ public interface BootstrapState {
ValidationProviderResolver getDefaultValidationProviderResolver();
}
-
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/ConfigurationState.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/ConfigurationState.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/ConfigurationState.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/ConfigurationState.java Mon Sep 4 21:01:48 2017
@@ -16,10 +16,13 @@
*/
package javax.validation.spi;
+import javax.validation.ClockProvider;
import javax.validation.ConstraintValidatorFactory;
import javax.validation.MessageInterpolator;
import javax.validation.ParameterNameProvider;
import javax.validation.TraversableResolver;
+import javax.validation.valueextraction.ValueExtractor;
+
import java.io.InputStream;
import java.util.Map;
import java.util.Set;
@@ -43,5 +46,10 @@ public interface ConfigurationState {
/** @since 1.1 */
ParameterNameProvider getParameterNameProvider();
-}
+ /** @since 2.0 */
+ Set<ValueExtractor<?>> getValueExtractors();
+
+ /** @since 2.0 */
+ ClockProvider getClockProvider();
+}
Modified: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/ValidationProvider.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/ValidationProvider.java?rev=1807299&r1=1807298&r2=1807299&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/ValidationProvider.java (original)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/spi/ValidationProvider.java Mon Sep 4 21:01:48 2017
@@ -30,4 +30,3 @@ public interface ValidationProvider<T ex
ValidatorFactory buildValidatorFactory(ConfigurationState configurationState);
}
-
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ExtractedValue.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ExtractedValue.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ExtractedValue.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ExtractedValue.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.valueextraction;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * @since 2.0
+ */
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.TYPE_USE)
+@Documented
+public @interface ExtractedValue {
+
+ Class<?> type() default void.class;
+}
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/UnwrapByDefault.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/UnwrapByDefault.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/UnwrapByDefault.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/UnwrapByDefault.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.valueextraction;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * @since 2.0
+ */
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.TYPE)
+@Documented
+public @interface UnwrapByDefault {
+}
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/Unwrapping.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/Unwrapping.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/Unwrapping.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/Unwrapping.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.valueextraction;
+
+import javax.validation.Payload;
+
+/**
+ * @since 2.0
+ */
+public interface Unwrapping {
+
+ interface Unwrap extends Payload {
+ }
+
+ interface Skip extends Payload {
+ }
+}
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractor.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractor.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractor.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractor.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.valueextraction;
+
+/**
+ * @since 2.0
+ */
+public interface ValueExtractor<T> {
+ void extractValues(T originalValue, ValueReceiver receiver);
+
+ interface ValueReceiver {
+ void value(String nodeName, Object object);
+
+ void iterableValue(String nodeName, Object object);
+
+ void indexedValue(String nodeName, int i, Object object);
+
+ void keyedValue(String nodeName, Object key, Object object);
+ }
+}
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractorDeclarationException.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractorDeclarationException.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractorDeclarationException.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractorDeclarationException.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.valueextraction;
+
+import javax.validation.ValidationException;
+
+/**
+ * @since 2.0
+ */
+@SuppressWarnings("serial")
+public class ValueExtractorDeclarationException extends ValidationException {
+
+ public ValueExtractorDeclarationException() {
+ super();
+ }
+
+ public ValueExtractorDeclarationException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+ public ValueExtractorDeclarationException(String message) {
+ super(message);
+ }
+
+ public ValueExtractorDeclarationException(Throwable cause) {
+ super(cause);
+ }
+
+}
Added: geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractorDefinitionException.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractorDefinitionException.java?rev=1807299&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractorDefinitionException.java (added)
+++ geronimo/specs/trunk/geronimo-validation_2.0_spec/src/main/java/javax/validation/valueextraction/ValueExtractorDefinitionException.java Mon Sep 4 21:01:48 2017
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package javax.validation.valueextraction;
+
+import javax.validation.ValidationException;
+
+/**
+ * @since 2.0
+ */
+@SuppressWarnings("serial")
+public class ValueExtractorDefinitionException extends ValidationException {
+
+ public ValueExtractorDefinitionException() {
+ super();
+ }
+
+ public ValueExtractorDefinitionException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+ public ValueExtractorDefinitionException(String message) {
+ super(message);
+ }
+
+ public ValueExtractorDefinitionException(Throwable cause) {
+ super(cause);
+ }
+
+}