[hibernate-commits] Hibernate SVN: r17610 - in validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator: metadata and 1 other directory.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Fri Oct 2 06:38:01 EDT 2009


Author: hardy.ferentschik
Date: 2009-10-02 06:38:01 -0400 (Fri, 02 Oct 2009)
New Revision: 17610

Added:
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/MessageAndPath.java
Modified:
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ConstraintTree.java
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ConstraintValidatorContextImpl.java
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/GlobalExecutionContext.java
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ResourceBundleMessageInterpolator.java
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/ConstraintDescriptorImpl.java
Log:
Some cleanup and fixes from FindBugs report.

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ConstraintTree.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ConstraintTree.java	2009-10-01 16:08:48 UTC (rev 17609)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ConstraintTree.java	2009-10-02 10:38:01 UTC (rev 17610)
@@ -75,22 +75,10 @@
 		return new ConstraintTree<U>( composingDescriptor, this );
 	}
 
-	public boolean isRoot() {
-		return parent == null;
-	}
-
-	public ConstraintTree getParent() {
-		return parent;
-	}
-
 	public List<ConstraintTree<?>> getChildren() {
 		return children;
 	}
 
-	public boolean hasChildren() {
-		return children.size() > 0;
-	}
-
 	public ConstraintDescriptor<A> getDescriptor() {
 		return descriptor;
 	}
@@ -133,11 +121,9 @@
 		if ( reportAsSingleViolation() && constraintViolations.size() > 0 ) {
 			constraintViolations.clear();
 			final String message = ( String ) getDescriptor().getAttributes().get( "message" );
-			ConstraintValidatorContextImpl.ErrorMessage error = constraintValidatorContext.new ErrorMessage(
-					message, localExecutionContext.getPropertyPath()
-			);
+			MessageAndPath messageAndPath = new MessageAndPath( message, localExecutionContext.getPropertyPath() );
 			ConstraintViolation<T> violation = executionContext.createConstraintViolation(
-					localExecutionContext, error, descriptor
+					localExecutionContext, messageAndPath, descriptor
 			);
 			constraintViolations.add( violation );
 		}
@@ -175,7 +161,7 @@
 		Class<? extends ConstraintValidator<?, ?>> validatorClass = findMatchingValidatorClass( type );
 
 		// check if we have the default validator factory. If not we don't use caching (see HV-242)
-		if(! (constraintFactory instanceof ConstraintValidatorFactoryImpl)) {
+		if ( !( constraintFactory instanceof ConstraintValidatorFactoryImpl ) ) {
 			return createAndInitializeValidator( constraintFactory, validatorClass );
 		}
 

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ConstraintValidatorContextImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ConstraintValidatorContextImpl.java	2009-10-01 16:08:48 UTC (rev 17609)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ConstraintValidatorContextImpl.java	2009-10-02 10:38:01 UTC (rev 17610)
@@ -29,7 +29,7 @@
  */
 public class ConstraintValidatorContextImpl implements ConstraintValidatorContext {
 
-	private final List<ErrorMessage> errorMessages = new ArrayList<ErrorMessage>( 3 );
+	private final List<MessageAndPath> messageAndPaths = new ArrayList<MessageAndPath>( 3 );
 	private final PathImpl propertyPath;
 	private final ConstraintDescriptor<?> constraintDescriptor;
 	private boolean defaultDisabled;
@@ -56,38 +56,20 @@
 		return constraintDescriptor;
 	}
 
-	public List<ErrorMessage> getErrorMessages() {
-		if(defaultDisabled && errorMessages.size() == 0) {
+	public List<MessageAndPath> getMessageAndPathList() {
+		if(defaultDisabled && messageAndPaths.size() == 0) {
 			throw new ValidationException("At least one custom message must be created if the default error message gets disabled.");
 		}
 
-		List<ErrorMessage> returnedErrorMessages = new ArrayList<ErrorMessage>( errorMessages );
+		List<MessageAndPath> returnedMessageAndPaths = new ArrayList<MessageAndPath>( messageAndPaths );
 		if ( !defaultDisabled ) {
-			returnedErrorMessages.add(
-					new ErrorMessage( getDefaultConstraintMessageTemplate(), propertyPath )
+			returnedMessageAndPaths.add(
+					new MessageAndPath( getDefaultConstraintMessageTemplate(), propertyPath )
 			);
 		}
-		return returnedErrorMessages;
+		return returnedMessageAndPaths;
 	}
 
-	public class ErrorMessage {
-		private final String message;
-		private final Path propertyPath;
-
-		public ErrorMessage(String message, Path property) {
-			this.message = message;
-			this.propertyPath = property;
-		}
-
-		public String getMessage() {
-			return message;
-		}
-
-		public Path getPath() {
-			return propertyPath;
-		}
-	}
-
 	class ErrorBuilderImpl implements ConstraintViolationBuilder {
 		String messageTemplate;
 		PathImpl propertyPath;
@@ -110,7 +92,7 @@
 		}
 
 		public ConstraintValidatorContext addConstraintViolation() {
-			errorMessages.add( new ErrorMessage( messageTemplate, propertyPath ) );
+			messageAndPaths.add( new MessageAndPath( messageTemplate, propertyPath ) );
 			return ConstraintValidatorContextImpl.this;
 		}
 	}
@@ -131,7 +113,7 @@
 		}
 
 		public ConstraintValidatorContext addConstraintViolation() {
-			errorMessages.add( new ErrorMessage( messageTemplate, propertyPath ) );
+			messageAndPaths.add( new MessageAndPath( messageTemplate, propertyPath ) );
 			return ConstraintValidatorContextImpl.this;
 		}
 	}
@@ -156,7 +138,7 @@
 		}
 
 		public ConstraintValidatorContext addConstraintViolation() {
-			errorMessages.add( new ErrorMessage( messageTemplate, propertyPath ) );
+			messageAndPaths.add( new MessageAndPath( messageTemplate, propertyPath ) );
 			return ConstraintValidatorContextImpl.this;
 		}
 	}
@@ -188,7 +170,7 @@
 		}
 
 		public ConstraintValidatorContext addConstraintViolation() {
-			errorMessages.add( new ErrorMessage( messageTemplate, propertyPath ) );
+			messageAndPaths.add( new MessageAndPath( messageTemplate, propertyPath ) );
 			return ConstraintValidatorContextImpl.this;
 		}
 	}

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/GlobalExecutionContext.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/GlobalExecutionContext.java	2009-10-01 16:08:48 UTC (rev 17609)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/GlobalExecutionContext.java	2009-10-02 10:38:01 UTC (rev 17610)
@@ -145,8 +145,8 @@
 		return messageInterpolator;
 	}
 
-	public <U, V> ConstraintViolationImpl<T> createConstraintViolation(LocalExecutionContext<U, V> localContext, ConstraintValidatorContextImpl.ErrorMessage error, ConstraintDescriptor<?> descriptor) {
-		String messageTemplate = error.getMessage();
+	public <U, V> ConstraintViolationImpl<T> createConstraintViolation(LocalExecutionContext<U, V> localContext, MessageAndPath messageAndPath, ConstraintDescriptor<?> descriptor) {
+		String messageTemplate = messageAndPath.getMessage();
 		String interpolatedMessage = messageInterpolator.interpolate(
 				messageTemplate,
 				new MessageInterpolatorContext( descriptor, localContext.getCurrentBean() )
@@ -158,7 +158,7 @@
 				getRootBean(),
 				localContext.getCurrentBean(),
 				localContext.getCurrentValidatedValue(),
-				error.getPath(),
+				messageAndPath.getPath(),
 				descriptor,
 				localContext.getElementType()
 		);
@@ -166,9 +166,9 @@
 
 	public <U, V> List<ConstraintViolationImpl<T>> createConstraintViolations(LocalExecutionContext<U, V> localContext, ConstraintValidatorContextImpl constraintValidatorContext) {
 		List<ConstraintViolationImpl<T>> constraintViolations = new ArrayList<ConstraintViolationImpl<T>>();
-		for ( ConstraintValidatorContextImpl.ErrorMessage error : constraintValidatorContext.getErrorMessages() ) {
+		for ( MessageAndPath messageAndPath : constraintValidatorContext.getMessageAndPathList() ) {
 			ConstraintViolationImpl<T> violation = createConstraintViolation(
-					localContext, error, constraintValidatorContext.getConstraintDescriptor()
+					localContext, messageAndPath, constraintValidatorContext.getConstraintDescriptor()
 			);
 			constraintViolations.add( violation );
 		}

Added: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/MessageAndPath.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/MessageAndPath.java	                        (rev 0)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/MessageAndPath.java	2009-10-02 10:38:01 UTC (rev 17610)
@@ -0,0 +1,41 @@
+// $Id:$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, Red Hat, Inc. and/or its affiliates, and individual contributors
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+* http://www.apache.org/licenses/LICENSE-2.0
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.hibernate.validator.engine;
+
+import javax.validation.Path;
+
+/**
+ * @author Hardy Ferentschik
+ */
+public class MessageAndPath {
+	private final String message;
+	private final Path propertyPath;
+
+	public MessageAndPath(String message, Path property) {
+		this.message = message;
+		this.propertyPath = property;
+	}
+
+	public String getMessage() {
+		return message;
+	}
+
+	public Path getPath() {
+		return propertyPath;
+	}
+}

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ResourceBundleMessageInterpolator.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ResourceBundleMessageInterpolator.java	2009-10-01 16:08:48 UTC (rev 17609)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ResourceBundleMessageInterpolator.java	2009-10-02 10:38:01 UTC (rev 17610)
@@ -299,7 +299,7 @@
 		return escapedString;
 	}
 
-	class LocalisedMessage {
+	private static class LocalisedMessage {
 		private final String message;
 		private final Locale locale;
 

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/ConstraintDescriptorImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/ConstraintDescriptorImpl.java	2009-10-01 16:08:48 UTC (rev 17609)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/ConstraintDescriptorImpl.java	2009-10-02 10:38:01 UTC (rev 17610)
@@ -57,6 +57,8 @@
  * @author Hardy Ferentschik
  */
 public class ConstraintDescriptorImpl<T extends Annotation> implements ConstraintDescriptor<T>, Serializable {
+
+	private static final long serialVersionUID = -2563102960314069246L;
 	private static final Logger log = LoggerFactory.make();
 	private static final int OVERRIDES_PARAMETER_DEFAULT_INDEX = -1;
 	private static final String GROUPS = "groups";
@@ -84,10 +86,13 @@
 	 */
 	private final Map<String, Object> attributes;
 
+	/**
+	 * The specified payload of the constraint.
+	 */
 	private final Set<Class<? extends Payload>> payloads;
 
 	/**
-	 * The composing constraints for this constraints.
+	 * The composing constraints for this constraint.
 	 */
 	private final Set<ConstraintDescriptor<?>> composingConstraints;
 
@@ -99,6 +104,7 @@
 	/**
 	 * Handle to the built-in constraint implementations.
 	 */
+	//TODO Can be made transient since it is only used during object construction. It would be better if we would not have to pass it at all
 	private transient final ConstraintHelper constraintHelper;
 
 	public ConstraintDescriptorImpl(T annotation, ConstraintHelper constraintHelper, Class<?> implicitGroup) {



More information about the hibernate-commits mailing list