[hibernate-commits] Hibernate SVN: r17638 - validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Wed Oct 7 04:31:14 EDT 2009


Author: hardy.ferentschik
Date: 2009-10-07 04:31:13 -0400 (Wed, 07 Oct 2009)
New Revision: 17638

Modified:
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanDescriptorImpl.java
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanMetaDataImpl.java
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/ElementDescriptorImpl.java
   validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/PropertyDescriptorImpl.java
Log:
HV-249

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanDescriptorImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanDescriptorImpl.java	2009-10-06 20:42:51 UTC (rev 17637)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanDescriptorImpl.java	2009-10-07 08:31:13 UTC (rev 17638)
@@ -26,11 +26,9 @@
  * @author Hardy Ferentschik
  */
 public class BeanDescriptorImpl<T> extends ElementDescriptorImpl implements BeanDescriptor {
-	private final BeanMetaData<T> metaDataBean;
 
 	public BeanDescriptorImpl(BeanMetaData<T> beanMetaData) {
-		super( beanMetaData.getBeanClass() );
-		this.metaDataBean = beanMetaData;
+		super( beanMetaData.getBeanClass(), beanMetaData );
 	}
 
 	public boolean isBeanConstrained() {

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanMetaDataImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanMetaDataImpl.java	2009-10-06 20:42:51 UTC (rev 17637)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanMetaDataImpl.java	2009-10-07 08:31:13 UTC (rev 17638)
@@ -350,7 +350,8 @@
 			propertyDescriptor = new PropertyDescriptorImpl(
 					ReflectionHelper.getType( member ),
 					isCascaded,
-					name
+					name,
+					this
 			);
 			propertyDescriptors.put( name, propertyDescriptor );
 		}

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/ElementDescriptorImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/ElementDescriptorImpl.java	2009-10-06 20:42:51 UTC (rev 17637)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/ElementDescriptorImpl.java	2009-10-07 08:31:13 UTC (rev 17638)
@@ -18,12 +18,14 @@
 package org.hibernate.validator.metadata;
 
 import java.lang.annotation.ElementType;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
+import javax.validation.groups.Default;
 import javax.validation.metadata.ConstraintDescriptor;
 import javax.validation.metadata.ElementDescriptor;
 import javax.validation.metadata.Scope;
@@ -39,10 +41,12 @@
  * @author Hardy Ferentschik
  */
 public class ElementDescriptorImpl implements ElementDescriptor {
+	protected final BeanMetaData<?> metaDataBean;
 	private final Class<?> type;
 	private final Set<ConstraintDescriptorImpl<?>> constraintDescriptors = new HashSet<ConstraintDescriptorImpl<?>>();
 
-	public ElementDescriptorImpl(Class<?> type) {
+	public ElementDescriptorImpl(Class<?> type, BeanMetaData<?> metaDataBean) {
+		this.metaDataBean = metaDataBean;
 		this.type = type;
 	}
 
@@ -83,7 +87,15 @@
 		}
 
 		public ConstraintFinder unorderedAndMatchingGroups(Class<?>... classes) {
-			this.groups = Arrays.asList( classes );
+			this.groups = new ArrayList<Class<?>>();
+			for ( Class<?> clazz : classes ) {
+				if ( Default.class.equals( clazz ) && metaDataBean.defaultGroupSequenceIsRedefined() ) {
+					this.groups.addAll( metaDataBean.getDefaultGroupSequence() );
+				}
+				else {
+					groups.add( clazz );
+				}
+			}
 			return this;
 		}
 

Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/PropertyDescriptorImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/PropertyDescriptorImpl.java	2009-10-06 20:42:51 UTC (rev 17637)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/PropertyDescriptorImpl.java	2009-10-07 08:31:13 UTC (rev 17638)
@@ -30,8 +30,8 @@
 	private final String property;
 
 
-	public PropertyDescriptorImpl(Class<?> returnType, boolean cascaded, String property) {
-		super( returnType );
+	public PropertyDescriptorImpl(Class<?> returnType, boolean cascaded, String property, BeanMetaData<?> beanMetaData) {
+		super( returnType, beanMetaData );
 		this.cascaded = cascaded;
 		this.property = property;
 	}



More information about the hibernate-commits mailing list