Author: epbernard
Date: 2009-05-27 05:58:33 -0400 (Wed, 27 May 2009)
New Revision: 16623
Modified:
beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints/Pattern.java
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/constraints/PatternValidator.java
Log:
BVAL-156 Pattern.flag supports an int
Modified:
beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints/Pattern.java
===================================================================
---
beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints/Pattern.java 2009-05-27
07:16:01 UTC (rev 16622)
+++
beanvalidation/trunk/validation-api/src/main/java/javax/validation/constraints/Pattern.java 2009-05-27
09:58:33 UTC (rev 16623)
@@ -64,47 +64,62 @@
* Possible Regexp flags
*/
public static enum Flag {
+
/**
* Enables Unix lines mode
* @see java.util.regex.Pattern#UNIX_LINES
*/
- UNIX_LINES,
+ UNIX_LINES(java.util.regex.Pattern.UNIX_LINES),
/**
* Enables case-insensitive matching
* @see java.util.regex.Pattern#CASE_INSENSITIVE
*/
- CASE_INSENSITIVE,
+ CASE_INSENSITIVE(java.util.regex.Pattern.CASE_INSENSITIVE),
/**
* Permits whitespace and comments in pattern
* @see java.util.regex.Pattern#COMMENTS
*/
- COMMENTS,
+ COMMENTS(java.util.regex.Pattern.COMMENTS),
/**
* Enables multiline mode
* @see java.util.regex.Pattern#MULTILINE
*/
- MULTILINE,
+ MULTILINE(java.util.regex.Pattern.MULTILINE),
/**
* Enables dotall mode
* @see java.util.regex.Pattern#DOTALL
*/
- DOTALL,
+ DOTALL(java.util.regex.Pattern.DOTALL),
/**
* Enables Unicode-aware case folding
* @see java.util.regex.Pattern#UNICODE_CASE
*/
- UNICODE_CASE,
+ UNICODE_CASE(java.util.regex.Pattern.UNICODE_CASE),
/**
* Enables canonical equivalence
* @see java.util.regex.Pattern#CANON_EQ
*/
- CANON_EQ
+ CANON_EQ(java.util.regex.Pattern.CANON_EQ);
+
+ //JDK flag value
+ private int value;
+
+ private Flag(int value) {
+ this.value = value;
+ }
+
+ /**
+ * @return flag value as defined in {@link java.util.regex.Pattern}
+ */
+ public int getValue() {
+ return value;
+ }
}
/**
Modified:
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/constraints/PatternValidator.java
===================================================================
---
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/constraints/PatternValidator.java 2009-05-27
07:16:01 UTC (rev 16622)
+++
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/constraints/PatternValidator.java 2009-05-27
09:58:33 UTC (rev 16623)
@@ -35,7 +35,7 @@
Pattern.Flag flags[] = parameters.flags();
int intFlag = 0;
for ( Pattern.Flag flag : flags ) {
- intFlag = intFlag | mapFlagToInt( flag );
+ intFlag = intFlag | flag.getValue();
}
try {
@@ -53,39 +53,4 @@
Matcher m = pattern.matcher( value );
return m.matches();
}
-
- private int mapFlagToInt(Pattern.Flag flag) {
- int intFlag = 0;
- switch ( flag ) {
- case UNIX_LINES: {
- intFlag = java.util.regex.Pattern.UNIX_LINES;
- break;
- }
- case CASE_INSENSITIVE: {
- intFlag = java.util.regex.Pattern.CASE_INSENSITIVE;
- break;
- }
- case COMMENTS: {
- intFlag = java.util.regex.Pattern.COMMENTS;
- break;
- }
- case MULTILINE: {
- intFlag = java.util.regex.Pattern.MULTILINE;
- break;
- }
- case DOTALL: {
- intFlag = java.util.regex.Pattern.DOTALL;
- break;
- }
- case UNICODE_CASE: {
- intFlag = java.util.regex.Pattern.UNICODE_CASE;
- break;
- }
- case CANON_EQ: {
- intFlag = java.util.regex.Pattern.CANON_EQ;
- break;
- }
- }
- return intFlag;
- }
}
Show replies by date