[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