Author: mbenson
Date: Wed Jun 22 21:06:16 2011
New Revision: 1138632

URL: http://svn.apache.org/viewvc?rev=1138632&view=rev
Log:
was marking properties cascaded that shouldn't have been

Modified:
    
incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java
    
incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/test/java/org/apache/bval/jsr303/dynamic/DynamicValidationTest.java

Modified: 
incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java?rev=1138632&r1=1138631&r2=1138632&view=diff
==============================================================================
--- 
incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java
 (original)
+++ 
incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java
 Wed Jun 22 21:06:16 2011
@@ -608,12 +608,9 @@ final class DynamicMetaGraphManagerImpl 
                                     new AppendValidationToMeta(result));
                             }
                         }
-                        if (!mergeProperties.isEmpty()) {
-                            for (MetaProperty property : 
result.getProperties()) {
-                                String propertyName = property.getName();
-                                if (!mergeProperties.contains(propertyName)) {
-                                    continue;
-                                }
+                        for (MetaProperty property : result.getProperties()) {
+                            String propertyName = property.getName();
+                            if (mergeProperties.contains(propertyName)) {
                                 Collection<Annotation> constraints =
                                     
property.getFeature(DYNAMIC_CONSTRAINT_COLLECTION, EMPTY_DYNAMIC_ANNOTATIONS);
                                 for (Annotation constraint : constraints) {
@@ -622,6 +619,12 @@ final class DynamicMetaGraphManagerImpl 
                                         new AppendValidationToMeta(property));
                                 }
                             }
+                            //erase "empty" property MetaBeans:
+                            MetaBean propBean = property.getMetaBean();
+                            if (propBean == null || propBean.hasProperties() 
|| ArrayUtils.isNotEmpty(propBean.getValidations())) {
+                                continue;
+                            }
+                            property.setMetaBean(null);
                         }
                         // mark as fresh result:
                         result.putFeature(COMPUTE_RELATIONSHIPS, true);

Modified: 
incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/test/java/org/apache/bval/jsr303/dynamic/DynamicValidationTest.java
URL: 
http://svn.apache.org/viewvc/incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/test/java/org/apache/bval/jsr303/dynamic/DynamicValidationTest.java?rev=1138632&r1=1138631&r2=1138632&view=diff
==============================================================================
--- 
incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/test/java/org/apache/bval/jsr303/dynamic/DynamicValidationTest.java
 (original)
+++ 
incubator/bval/sandbox/lang3-work/bval-jsr303-dynamic/provider/src/test/java/org/apache/bval/jsr303/dynamic/DynamicValidationTest.java
 Wed Jun 22 21:06:16 2011
@@ -215,6 +215,7 @@ public class DynamicValidationTest exten
         PropertyDescriptor propertyDescriptor = 
authorDescriptor.getConstraintsForProperty("addresses[0].addressline2");
         assertNotNull(propertyDescriptor);
         assertEquals(String.class, propertyDescriptor.getElementClass());
+        assertFalse(propertyDescriptor.isCascaded());
 
         for (ConstraintDescriptor<?> desc : 
propertyDescriptor.getConstraintDescriptors()) {
             
assertFalse(Pattern.class.equals(desc.getAnnotation().annotationType()));
@@ -238,6 +239,7 @@ public class DynamicValidationTest exten
         propertyDescriptor =
             
validator.getConstraintsForClass(Author.class).getConstraintsForProperty("addresses[0].addressline2");
         assertNotNull(propertyDescriptor);
+        assertFalse(propertyDescriptor.isCascaded());
         Iterator<ConstraintDescriptor<?>> iter = 
propertyDescriptor.getConstraintDescriptors().iterator();
         ConstraintDescriptor<?> constraintDescriptor = null;
         while (iter.hasNext()) {


Reply via email to