[hibernate-commits] Hibernate SVN: r15986 - beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Tue Feb 17 07:24:58 EST 2009
Author: epbernard
Date: 2009-02-17 07:24:58 -0500 (Tue, 17 Feb 2009)
New Revision: 15986
Added:
beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints/Pattern.java
Log:
BVAL-119 @Pattern
Added: beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints/Pattern.java
===================================================================
--- beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints/Pattern.java (rev 0)
+++ beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints/Pattern.java 2009-02-17 12:24:58 UTC (rev 15986)
@@ -0,0 +1,90 @@
+package javax.validation.constraints;
+
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Documented;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
+
+/**
+ * The annotated String must match the following regular expression.
+ * The regular expression follows the Java regular expression conventions
+ * see {@link java.util.regex.Pattern}.
+ *
+ * Accepts String.
+ *
+ * @author Emmanuel Bernard
+ */
+ at Target({ METHOD, FIELD, ANNOTATION_TYPE })
+ at Retention(RUNTIME)
+ at Documented
+public @interface Pattern {
+ /**
+ * regular expression to match
+ */
+ String regexp();
+
+ /**
+ * Flags considered when resolving the regular expression
+ */
+ Flag[] flags() default {};
+
+ /**
+ * error message template
+ */
+ String message() default "{validator.past}";
+
+ /**
+ * groups the constraint belongs to
+ */
+ Class<?>[] groups() default { };
+
+ /**
+ * Possible Regexp flags
+ */
+ public static enum Flag {
+ /**
+ * Enables Unix lines mode
+ * @see java.util.regex.Pattern#UNIX_LINES
+ */
+ UNIX_LINES,
+
+ /**
+ * Enables case-insensitive matching
+ * @see java.util.regex.Pattern#CASE_INSENSITIVE
+ */
+ CASE_INSENSITIVE,
+
+ /**
+ * Permits whitespace and comments in pattern
+ * @see java.util.regex.Pattern#COMMENTS
+ */
+ COMMENTS,
+
+ /**
+ * Enables multiline mode
+ * @see java.util.regex.Pattern#MULTILINE
+ */
+ MULTILINE,
+
+ /**
+ * Enables dotall mode
+ * @see java.util.regex.Pattern#DOTALL
+ */
+ DOTALL,
+
+ /**
+ * Enables Unicode-aware case folding
+ * @see java.util.regex.Pattern#UNICODE_CASE
+ */
+ UNICODE_CASE,
+
+ /**
+ * Enables canonical equivalence
+ * @see java.util.regex.Pattern#CANON_EQ
+ */
+ CANON_EQ,
+ }
+}
More information about the hibernate-commits
mailing list