You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bval.apache.org by mb...@apache.org on 2011/02/15 23:25:20 UTC

svn commit: r1071095 - in /incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic: DynamicMetaGraphManagerImpl.java DynamicValidatorContext.java

Author: mbenson
Date: Tue Feb 15 22:25:20 2011
New Revision: 1071095

URL: http://svn.apache.org/viewvc?rev=1071095&view=rev
Log:
return boolean change indicator from dynamic constraint application

Modified:
    incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java
    incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicValidatorContext.java

Modified: incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java
URL: http://svn.apache.org/viewvc/incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java?rev=1071095&r1=1071094&r2=1071095&view=diff
==============================================================================
--- incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java (original)
+++ incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicMetaGraphManagerImpl.java Tue Feb 15 22:25:20 2011
@@ -719,8 +719,9 @@ final class DynamicMetaGraphManagerImpl 
      * @param beanType
      * @param propertyPath
      * @param annotation
+     * @return whether applying the specified annotation resulted in a change 
      */
-    void constrain(Class<?> beanType, String propertyPath, Annotation annotation) {
+    boolean constrain(Class<?> beanType, String propertyPath, Annotation annotation) {
         final boolean setManager = DynamicModelManager.THREAD_BOUND_MANAGER.get() == null;
 
         if (setManager) {
@@ -733,7 +734,7 @@ final class DynamicMetaGraphManagerImpl 
                     MetaProperty property = (MetaProperty) meta;
                     MetaBean owner = property.getParentMetaBean();
                     try {
-                        annotationProcessor.processAnnotation(annotation, property, owner.getBeanClass(),
+                        return annotationProcessor.processAnnotation(annotation, property, owner.getBeanClass(),
                             new PropertyAccess(owner.getBeanClass(), property.getName()), new AppendValidationToMeta(
                                 property));
                     } catch (ValidationException e) {
@@ -741,10 +742,12 @@ final class DynamicMetaGraphManagerImpl 
                     } catch (Exception e) {
                         throw new ValidationException(e);
                     }
-                } // else ignore
+                } else {
+                    return false;
+                }
             } else {
                 Collection<Annotation> constraints = DynamicModelManager.get().getRequiredDynamicConstraints(meta);
-                ConstraintAppender.FACTORY.constraintAppender(annotation).append(annotation, constraints);
+                return ConstraintAppender.FACTORY.constraintAppender(annotation).append(annotation, constraints);
             }
         } finally {
             if (setManager) {

Modified: incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicValidatorContext.java
URL: http://svn.apache.org/viewvc/incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicValidatorContext.java?rev=1071095&r1=1071094&r2=1071095&view=diff
==============================================================================
--- incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicValidatorContext.java (original)
+++ incubator/bval/sandbox/lang3-work/bval-jsr303d/src/main/java/org/apache/bval/jsr303/dynamic/DynamicValidatorContext.java Tue Feb 15 22:25:20 2011
@@ -97,10 +97,9 @@ public class DynamicValidatorContext ext
      * 
      * @param beanType
      * @param constraintCollectionManipulator
-     * @return <code>this</code> following the chained invocation pattern
-     * @return <code>this</code> following the chained invocation pattern
+     * @return whether applying the specified annotation resulted in a change 
      */
-    public final DynamicValidatorContext constrain(Class<?> beanType, Annotation constraint) {
+    public final boolean constrain(Class<?> beanType, Annotation constraint) {
         return constrain(beanType, null, constraint);
     }
 
@@ -110,11 +109,10 @@ public class DynamicValidatorContext ext
      * @param beanType
      * @param propertyPath
      * @param constraintCollectionManipulator
-     * @return <code>this</code> following the chained invocation pattern
+     * @return whether applying the specified annotation resulted in a change 
      */
-    public DynamicValidatorContext constrain(Class<?> beanType, String propertyPath, Annotation annotation) {
-        metaGraphManager.constrain(beanType, propertyPath, annotation);
-        return this;
+    public boolean constrain(Class<?> beanType, String propertyPath, Annotation annotation) {
+        return metaGraphManager.constrain(beanType, propertyPath, annotation);
     }
 
     /**