You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by br...@apache.org on 2003/06/26 11:11:24 UTC
cvs commit: cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl AssertValidationRule.java EmailValidationRule.java LengthValidationRule.java RangeValidationRule.java ValueCountValidationRule.java
bruno 2003/06/26 02:11:24
Modified: src/blocks/woody/java/org/apache/cocoon/woody/datatype
ValidationRule.java
src/blocks/woody/java/org/apache/cocoon/woody/datatype/typeimpl
AbstractDatatypeBuilder.java
src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl
AssertValidationRule.java EmailValidationRule.java
LengthValidationRule.java RangeValidationRule.java
ValueCountValidationRule.java
Log:
Change in ValidationRule interface
Revision Changes Path
1.2 +5 -4 cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/ValidationRule.java
Index: ValidationRule.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/ValidationRule.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ValidationRule.java 22 Apr 2003 12:04:18 -0000 1.1
+++ ValidationRule.java 26 Jun 2003 09:11:24 -0000 1.2
@@ -67,9 +67,10 @@
public ValidationError validate(Object value, ExpressionContext expressionContext);
/**
- * Returns true if this ValidationRule supports the given Datatype.
- * Implementations will want to check both {@link Datatype#getTypeClass} and
- * {@link Datatype#isArrayType}.
+ * Returns true if this ValidationRule supports validating objects of the same class
+ * as the one specified. If the flag 'arrayType' is true, this method will return true
+ * if this validation rule can validate arrays of these objects (i.e. the object passed
+ * to the validate method will then be an array).
*/
- public boolean supportsType(Datatype datatype);
+ public boolean supportsType(Class clazz, boolean arrayType);
}
1.2 +1 -1 cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/typeimpl/AbstractDatatypeBuilder.java
Index: AbstractDatatypeBuilder.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/typeimpl/AbstractDatatypeBuilder.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- AbstractDatatypeBuilder.java 22 Apr 2003 12:04:18 -0000 1.1
+++ AbstractDatatypeBuilder.java 26 Jun 2003 09:11:24 -0000 1.2
@@ -114,7 +114,7 @@
Element[] validationElements = DomHelper.getChildElements(validationElement, Constants.WD_NS);
for (int i = 0; i < validationElements.length; i++) {
ValidationRule rule = datatypeManager.createValidationRule(validationElements[i]);
- if (!rule.supportsType(datatype)) {
+ if (!rule.supportsType(datatype.getTypeClass(), datatype.isArrayType())) {
throw new Exception("Validation rule \"" + validationElements[i].getLocalName() + "\" cannot be used with strings, error at " + DomHelper.getLocation(validationElements[i]));
}
datatype.addValidationRule(rule);
1.2 +1 -2 cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/AssertValidationRule.java
Index: AssertValidationRule.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/AssertValidationRule.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- AssertValidationRule.java 22 Apr 2003 12:04:19 -0000 1.1
+++ AssertValidationRule.java 26 Jun 2003 09:11:24 -0000 1.2
@@ -51,7 +51,6 @@
package org.apache.cocoon.woody.datatype.validationruleimpl;
import org.apache.cocoon.woody.datatype.ValidationError;
-import org.apache.cocoon.woody.datatype.Datatype;
import org.apache.cocoon.woody.formmodel.CannotYetResolveWarning;
import org.outerj.expression.ExpressionContext;
import org.outerj.expression.ExpressionException;
@@ -87,7 +86,7 @@
return hasFailMessage() ? getFailMessage() : new ValidationError("Assertion validation rule failed.");
}
- public boolean supportsType(Datatype datatype) {
+ public boolean supportsType(Class clazz, boolean arrayType) {
return true;
}
}
1.2 +2 -3 cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/EmailValidationRule.java
Index: EmailValidationRule.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/EmailValidationRule.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- EmailValidationRule.java 22 Apr 2003 12:04:19 -0000 1.1
+++ EmailValidationRule.java 26 Jun 2003 09:11:24 -0000 1.2
@@ -51,7 +51,6 @@
package org.apache.cocoon.woody.datatype.validationruleimpl;
import org.apache.cocoon.woody.datatype.ValidationError;
-import org.apache.cocoon.woody.datatype.Datatype;
import org.outerj.expression.ExpressionContext;
/**
@@ -68,8 +67,8 @@
return hasFailMessage() ? getFailMessage() : new ValidationError("validation.string.invalidemail");
}
- public boolean supportsType(Datatype datatype) {
- return datatype.getTypeClass().isAssignableFrom(String.class) && !datatype.isArrayType();
+ public boolean supportsType(Class clazz, boolean arrayType) {
+ return clazz.isAssignableFrom(String.class) && !arrayType;
}
private boolean isEmail(String email) {
1.2 +2 -3 cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/LengthValidationRule.java
Index: LengthValidationRule.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/LengthValidationRule.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- LengthValidationRule.java 22 Apr 2003 12:04:19 -0000 1.1
+++ LengthValidationRule.java 26 Jun 2003 09:11:24 -0000 1.2
@@ -51,7 +51,6 @@
package org.apache.cocoon.woody.datatype.validationruleimpl;
import org.apache.cocoon.woody.datatype.ValidationError;
-import org.apache.cocoon.woody.datatype.Datatype;
import org.apache.cocoon.woody.formmodel.CannotYetResolveWarning;
import org.outerj.expression.ExpressionContext;
import org.outerj.expression.Expression;
@@ -141,7 +140,7 @@
return null;
}
- public boolean supportsType(Datatype datatype) {
- return datatype.getTypeClass().isAssignableFrom(String.class) && !datatype.isArrayType();
+ public boolean supportsType(Class clazz, boolean arrayType) {
+ return clazz.isAssignableFrom(String.class) && !arrayType;
}
}
1.2 +2 -3 cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/RangeValidationRule.java
Index: RangeValidationRule.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/RangeValidationRule.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- RangeValidationRule.java 22 Apr 2003 12:04:19 -0000 1.1
+++ RangeValidationRule.java 26 Jun 2003 09:11:24 -0000 1.2
@@ -51,7 +51,6 @@
package org.apache.cocoon.woody.datatype.validationruleimpl;
import org.apache.cocoon.woody.datatype.ValidationError;
-import org.apache.cocoon.woody.datatype.Datatype;
import org.apache.cocoon.woody.formmodel.CannotYetResolveWarning;
import org.outerj.expression.ExpressionContext;
import org.outerj.expression.Expression;
@@ -129,7 +128,7 @@
return null;
}
- public boolean supportsType(Datatype datatype) {
- return (datatype.getTypeClass().isAssignableFrom(Long.class) || datatype.getTypeClass().isAssignableFrom(BigDecimal.class)) && !datatype.isArrayType();
+ public boolean supportsType(Class clazz, boolean arrayType) {
+ return (clazz.isAssignableFrom(Long.class) || clazz.isAssignableFrom(BigDecimal.class)) && !arrayType;
}
}
1.2 +2 -3 cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/ValueCountValidationRule.java
Index: ValueCountValidationRule.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/datatype/validationruleimpl/ValueCountValidationRule.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ValueCountValidationRule.java 22 Apr 2003 12:04:19 -0000 1.1
+++ ValueCountValidationRule.java 26 Jun 2003 09:11:24 -0000 1.2
@@ -51,7 +51,6 @@
package org.apache.cocoon.woody.datatype.validationruleimpl;
import org.apache.cocoon.woody.datatype.ValidationError;
-import org.apache.cocoon.woody.datatype.Datatype;
import org.apache.cocoon.woody.formmodel.CannotYetResolveWarning;
import org.outerj.expression.ExpressionContext;
import org.outerj.expression.Expression;
@@ -143,7 +142,7 @@
return null;
}
- public boolean supportsType(Datatype datatype) {
- return datatype.isArrayType();
+ public boolean supportsType(Class clazz, boolean arrayType) {
+ return arrayType;
}
}