[hibernate-commits] Hibernate SVN: r15638 - in validator/trunk: hibernate-validator/src/main/java/org/hibernate/validation/impl and 3 other directories.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Tue Dec 2 09:47:56 EST 2008
Author: epbernard
Date: 2008-12-02 09:47:55 -0500 (Tue, 02 Dec 2008)
New Revision: 15638
Modified:
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/ValidatorImpl.java
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/impl/ConstraintViolationImpl.java
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/bootstrap/ValidationTest.java
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/ValidatorImplTest.java
validator/trunk/validation-api/src/main/java/javax/validation/ConstraintViolation.java
Log:
BVAL-76 add ConstraintViolation getRawMessage() and rename getMessage() to getInterpolatedMessage()
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/ValidatorImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/ValidatorImpl.java 2008-12-02 14:28:28 UTC (rev 15637)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/ValidatorImpl.java 2008-12-02 14:47:55 UTC (rev 15638)
@@ -164,13 +164,15 @@
if ( !constraintDescriptor.getConstraintImplementation().isValid( value, contextImpl ) ) {
for ( ConstraintContextImpl.ErrorMessage error : contextImpl.getErrorMessages() ) {
- String message = messageResolver.interpolate(
- error.getMessage(),
+ final String message = error.getMessage();
+ String interpolatedMessage = messageResolver.interpolate(
+ message,
constraintDescriptor,
leafBeanInstance
);
ConstraintViolationImpl<T> failingConstraintViolation = new ConstraintViolationImpl<T>(
message,
+ interpolatedMessage,
context.getRootBean(),
metaDataProvider.getBeanClass(),
leafBeanInstance,
@@ -299,13 +301,15 @@
if ( !wrapper.descriptor.getConstraintImplementation().isValid( wrapper.value, contextImpl ) ) {
for ( ConstraintContextImpl.ErrorMessage error : contextImpl.getErrorMessages() ) {
- String message = messageResolver.interpolate(
- error.getMessage(),
+ final String message = error.getMessage();
+ String interpolatedMessage = messageResolver.interpolate(
+ message,
wrapper.descriptor,
wrapper.value
);
ConstraintViolationImpl<T> failingConstraintViolation = new ConstraintViolationImpl<T>(
message,
+ interpolatedMessage,
object,
beanType,
object,
@@ -366,13 +370,15 @@
ConstraintContextImpl contextImpl = new ConstraintContextImpl(constraintDescriptor);
if ( !constraintDescriptor.getConstraintImplementation().isValid( object, contextImpl ) ) {
for ( ConstraintContextImpl.ErrorMessage error : contextImpl.getErrorMessages() ) {
- String message = messageResolver.interpolate(
- error.getMessage(),
+ final String message = error.getMessage();
+ String interpolatedMessage = messageResolver.interpolate(
+ message,
constraintDescriptor,
object
);
ConstraintViolationImpl<T> failingConstraintViolation = new ConstraintViolationImpl<T>(
message,
+ interpolatedMessage,
null,
null,
null,
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/impl/ConstraintViolationImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/impl/ConstraintViolationImpl.java 2008-12-02 14:28:28 UTC (rev 15637)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/impl/ConstraintViolationImpl.java 2008-12-02 14:47:55 UTC (rev 15638)
@@ -27,7 +27,7 @@
* @author Hardy Ferentschik
*/
public class ConstraintViolationImpl<T> implements ConstraintViolation<T> {
- private String message;
+ private String interpolatedMessage;
private T rootBean;
private Class<T> beanClass;
private Object value;
@@ -35,11 +35,14 @@
private HashSet<String> groups;
private Object leafBeanInstance;
private final ConstraintDescriptor constraintDescriptor;
+ private String rawMessage;
- public ConstraintViolationImpl(String message, T rootBean, Class<T> beanClass, Object leafBeanInstance, Object value,
+ public ConstraintViolationImpl(String rawMessage, String interpolatedMessage, T rootBean, Class<T> beanClass,
+ Object leafBeanInstance, Object value,
String propertyPath, String group, ConstraintDescriptor constraintDescriptor) {
- this.message = message;
+ this.rawMessage = rawMessage;
+ this.interpolatedMessage = interpolatedMessage;
this.rootBean = rootBean;
this.beanClass = beanClass;
this.value = value;
@@ -53,10 +56,14 @@
/**
* {@inheritDoc}
*/
- public String getMessage() {
- return message;
+ public String getInterpolatedMessage() {
+ return interpolatedMessage;
}
+ public String getRawMessage() {
+ return rawMessage;
+ }
+
/**
* {@inheritDoc}
*/
@@ -118,7 +125,7 @@
if ( beanClass != null ? !beanClass.equals( that.beanClass ) : that.beanClass != null ) {
return false;
}
- if ( message != null ? !message.equals( that.message ) : that.message != null ) {
+ if ( interpolatedMessage != null ? !interpolatedMessage.equals( that.interpolatedMessage ) : that.interpolatedMessage != null ) {
return false;
}
if ( propertyPath != null ? !propertyPath.equals( that.propertyPath ) : that.propertyPath != null ) {
@@ -136,7 +143,7 @@
@Override
public int hashCode() {
- int result = message != null ? message.hashCode() : 0;
+ int result = interpolatedMessage != null ? interpolatedMessage.hashCode() : 0;
result = 31 * result + ( rootBean != null ? rootBean.hashCode() : 0 );
result = 31 * result + ( beanClass != null ? beanClass.hashCode() : 0 );
result = 31 * result + ( value != null ? value.hashCode() : 0 );
Modified: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/bootstrap/ValidationTest.java
===================================================================
--- validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/bootstrap/ValidationTest.java 2008-12-02 14:28:28 UTC (rev 15637)
+++ validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/bootstrap/ValidationTest.java 2008-12-02 14:47:55 UTC (rev 15638)
@@ -108,7 +108,7 @@
Set<ConstraintViolation<Customer>> constraintViolations = validator.validate( customer );
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
ConstraintViolation<Customer> constraintViolation = constraintViolations.iterator().next();
- assertEquals( "Wrong message", "may not be null", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "may not be null", constraintViolation.getInterpolatedMessage() );
//FIXME nothing guarantee that a builder can be reused
// now we modify the builder, get a new factory and valiator and try again
@@ -128,7 +128,7 @@
constraintViolations = validator.validate( customer );
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
constraintViolation = constraintViolations.iterator().next();
- assertEquals( "Wrong message", "my custom message", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "my custom message", constraintViolation.getInterpolatedMessage() );
}
@Test
@@ -146,7 +146,7 @@
Set<ConstraintViolation<Customer>> constraintViolations = validator.validate( customer );
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
ConstraintViolation<Customer> constraintViolation = constraintViolations.iterator().next();
- assertEquals( "Wrong message", "may not be null", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "may not be null", constraintViolation.getInterpolatedMessage() );
//FIXME nothing guarantee that a builder can be reused
// now we modify the builder, get a new factory and valiator and try again
Modified: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/ValidatorImplTest.java
===================================================================
--- validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/ValidatorImplTest.java 2008-12-02 14:28:28 UTC (rev 15637)
+++ validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/ValidatorImplTest.java 2008-12-02 14:47:55 UTC (rev 15638)
@@ -132,7 +132,7 @@
constraintViolations = validator.validate( book, "first", "second", "last" );
ConstraintViolation constraintViolation = constraintViolations.iterator().next();
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
- assertEquals( "Wrong message", "may not be empty", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "may not be empty", constraintViolation.getInterpolatedMessage() );
assertEquals( "Wrong bean class", Book.class, constraintViolation.getBeanClass() );
assertEquals( "Wrong root entity", book, constraintViolation.getRootBean() );
assertEquals( "Wrong value", book.getTitle(), constraintViolation.getInvalidValue() );
@@ -144,7 +144,7 @@
constraintViolations = validator.validate( book, "first", "second", "last" );
constraintViolation = constraintViolations.iterator().next();
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
- assertEquals( "Wrong message", "length must be between 0 and 30", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "length must be between 0 and 30", constraintViolation.getInterpolatedMessage() );
assertEquals( "Wrong bean class", Book.class, constraintViolation.getBeanClass() );
assertEquals( "Wrong root entity", book, constraintViolation.getRootBean() );
assertEquals( "Wrong value", book.getSubtitle(), constraintViolation.getInvalidValue() );
@@ -156,7 +156,7 @@
constraintViolations = validator.validate( book, "first", "second", "last" );
constraintViolation = constraintViolations.iterator().next();
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
- assertEquals( "Wrong message", "length must be between 0 and 20", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "length must be between 0 and 20", constraintViolation.getInterpolatedMessage() );
assertEquals( "Wrong bean class", Author.class, constraintViolation.getBeanClass() );
assertEquals( "Wrong root entity", book, constraintViolation.getRootBean() );
assertEquals( "Wrong value", author.getCompany(), constraintViolation.getInvalidValue() );
@@ -187,7 +187,7 @@
constraintViolations = validator.validate( book, "default" );
ConstraintViolation constraintViolation = constraintViolations.iterator().next();
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
- assertEquals( "Wrong message", "may not be null", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "may not be null", constraintViolation.getInterpolatedMessage() );
assertEquals( "Wrong bean class", Book.class, constraintViolation.getBeanClass() );
assertEquals( "Wrong root entity", book, constraintViolation.getRootBean() );
assertEquals( "Wrong value", book.getTitle(), constraintViolation.getInvalidValue() );
@@ -329,7 +329,7 @@
constraintViolations = validator.validate( customer );
ConstraintViolation constraintViolation = constraintViolations.iterator().next();
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
- assertEquals( "Wrong message", "may not be null", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "may not be null", constraintViolation.getInterpolatedMessage() );
assertEquals( "Wrong bean class", Order.class, constraintViolation.getBeanClass() );
assertEquals( "Wrong root entity", customer, constraintViolation.getRootBean() );
assertEquals( "Wrong value", order1.getOrderNumber(), constraintViolation.getInvalidValue() );
@@ -381,7 +381,7 @@
Set<ConstraintViolation<Actor>> constraintViolations = validator.validate( clint );
ConstraintViolation constraintViolation = constraintViolations.iterator().next();
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
- assertEquals( "Wrong message", "may not be empty", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "may not be empty", constraintViolation.getInterpolatedMessage() );
assertEquals( "Wrong bean class", Actor.class, constraintViolation.getBeanClass() );
assertEquals( "Wrong root entity", clint, constraintViolation.getRootBean() );
assertEquals( "Wrong value", morgan.getLastName(), constraintViolation.getInvalidValue() );
@@ -401,7 +401,7 @@
ConstraintViolation constraintViolation = constraintViolations.iterator().next();
assertEquals( "Wrong number of constraints", 1, constraintViolations.size() );
- assertEquals( "Wrong message", "may not be null", constraintViolation.getMessage() );
+ assertEquals( "Wrong message", "may not be null", constraintViolation.getInterpolatedMessage() );
assertEquals( "Wrong bean class", null, constraintViolation.getBeanClass() );
assertEquals( "Wrong root entity", null, constraintViolation.getRootBean() );
assertEquals( "Wrong value", order.getOrderNumber(), constraintViolation.getInvalidValue() );
Modified: validator/trunk/validation-api/src/main/java/javax/validation/ConstraintViolation.java
===================================================================
--- validator/trunk/validation-api/src/main/java/javax/validation/ConstraintViolation.java 2008-12-02 14:28:28 UTC (rev 15637)
+++ validator/trunk/validation-api/src/main/java/javax/validation/ConstraintViolation.java 2008-12-02 14:47:55 UTC (rev 15638)
@@ -29,11 +29,16 @@
public interface ConstraintViolation<T> {
/**
- * @return The error message for this constraint violation.
+ * @return The interpolated error message for this constraint violation.
*/
- String getMessage();
+ String getInterpolatedMessage();
/**
+ * @return The non-interpolated error message for this constraint violation.
+ */
+ String getRawMessage();
+
+ /**
* @return The root bean being validated.
*/
T getRootBean();
More information about the hibernate-commits
mailing list