You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by si...@apache.org on 2011/05/25 09:29:59 UTC

svn commit: r1127412 - in /commons/sandbox/digester3/trunk/src: main/java/org/apache/commons/digester3/annotations/ main/java/org/apache/commons/digester3/annotations/handlers/ test/java/org/apache/commons/digester3/annotations/ test/java/org/apache/co...

Author: simonetripodi
Date: Wed May 25 07:29:59 2011
New Revision: 1127412

URL: http://svn.apache.org/viewvc?rev=1127412&view=rev
Log:
FromAnnotationsRuleModule inherits from AbstractRulesModule so allows users a mix of APIs, to allow scan classes and fill potential lacks with rules bound by hand

Modified:
    commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/FromAnnotationsRuleModule.java
    commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/handlers/AbstractMethodHandler.java
    commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/AbstractAnnotatedPojoTestCase.java
    commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/employee/EmployeeTestCase.java
    commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/failingtests/FailingTestCase.java

Modified: commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/FromAnnotationsRuleModule.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/FromAnnotationsRuleModule.java?rev=1127412&r1=1127411&r2=1127412&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/FromAnnotationsRuleModule.java (original)
+++ commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/FromAnnotationsRuleModule.java Wed May 25 07:29:59 2011
@@ -29,7 +29,7 @@ import java.security.PrivilegedAction;
 
 import org.apache.commons.digester3.Rule;
 import org.apache.commons.digester3.annotations.reflect.MethodArgument;
-import org.apache.commons.digester3.binder.RulesBinder;
+import org.apache.commons.digester3.binder.AbstractRulesModule;
 import org.apache.commons.digester3.binder.RulesModule;
 
 /**
@@ -39,7 +39,7 @@ import org.apache.commons.digester3.bind
  * @since 3.0
  */
 public abstract class FromAnnotationsRuleModule
-    implements RulesModule
+    extends AbstractRulesModule
 {
 
     private static final String JAVA_PACKAGE = "java";
@@ -53,36 +53,28 @@ public abstract class FromAnnotationsRul
     /**
      * {@inheritDoc}
      */
-    public final void configure( RulesBinder rulesBinder )
+    @Override
+    protected final void configure()
     {
-        if ( this.rulesBinder != null )
+        if ( rulesBinder == null )
         {
-            throw new IllegalStateException( "Re-entry is not allowed." );
-        }
-
-        if ( rulesBinder instanceof WithMemoryRulesBinder )
-        {
-            this.rulesBinder = (WithMemoryRulesBinder) rulesBinder;
-        }
-        else
-        {
-            this.rulesBinder = new WithMemoryRulesBinder( rulesBinder );
+            rulesBinder = new WithMemoryRulesBinder( rulesBinder() );
         }
 
         try
         {
-            configure();
+            configureRules();
         }
         finally
         {
-            this.rulesBinder = null;
+            rulesBinder = null;
         }
     }
 
     /**
      * Configures a {@link Binder} via the exposed methods.
      */
-    protected abstract void configure();
+    protected abstract void configureRules();
 
     /**
      * 

Modified: commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/handlers/AbstractMethodHandler.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/handlers/AbstractMethodHandler.java?rev=1127412&r1=1127411&r2=1127412&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/handlers/AbstractMethodHandler.java (original)
+++ commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/annotations/handlers/AbstractMethodHandler.java Wed May 25 07:29:59 2011
@@ -17,18 +17,21 @@
  */
 package org.apache.commons.digester3.annotations.handlers;
 
-import static org.apache.commons.digester3.annotations.utils.AnnotationUtils.*;
+import static org.apache.commons.digester3.annotations.utils.AnnotationUtils.getAnnotationNamespaceURI;
+import static org.apache.commons.digester3.annotations.utils.AnnotationUtils.getAnnotationPattern;
+import static org.apache.commons.digester3.annotations.utils.AnnotationUtils.getAnnotationValue;
+import static org.apache.commons.digester3.annotations.utils.AnnotationUtils.getAnnotationsArrayValue;
 
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 
-import org.apache.commons.digester3.binder.RulesBinder;
 import org.apache.commons.digester3.annotations.AnnotationHandler;
 import org.apache.commons.digester3.annotations.DigesterRule;
 import org.apache.commons.digester3.annotations.DigesterRuleList;
 import org.apache.commons.digester3.annotations.FromAnnotationsRuleModule;
 import org.apache.commons.digester3.annotations.rules.CreationRule;
+import org.apache.commons.digester3.binder.RulesBinder;
 
 /**
  * Handler that takes care to create the
@@ -117,7 +120,7 @@ abstract class AbstractMethodHandler<A e
             {
 
                 @Override
-                protected void configure()
+                protected void configureRules()
                 {
                     bindRulesFrom( type );
                 }

Modified: commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/AbstractAnnotatedPojoTestCase.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/AbstractAnnotatedPojoTestCase.java?rev=1127412&r1=1127411&r2=1127412&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/AbstractAnnotatedPojoTestCase.java (original)
+++ commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/AbstractAnnotatedPojoTestCase.java Wed May 25 07:29:59 2011
@@ -53,7 +53,7 @@ public abstract class AbstractAnnotatedP
         {
 
             @Override
-            protected void configure()
+            protected void configureRules()
             {
                 bindRulesFrom( clazz );
             }

Modified: commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/employee/EmployeeTestCase.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/employee/EmployeeTestCase.java?rev=1127412&r1=1127411&r2=1127412&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/employee/EmployeeTestCase.java (original)
+++ commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/employee/EmployeeTestCase.java Wed May 25 07:29:59 2011
@@ -67,7 +67,7 @@ public final class EmployeeTestCase
         {
 
             @Override
-            protected void configure()
+            protected void configureRules()
             {
                 bindRulesFrom( Address.class );
             }

Modified: commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/failingtests/FailingTestCase.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/failingtests/FailingTestCase.java?rev=1127412&r1=1127411&r2=1127412&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/failingtests/FailingTestCase.java (original)
+++ commons/sandbox/digester3/trunk/src/test/java/org/apache/commons/digester3/annotations/failingtests/FailingTestCase.java Wed May 25 07:29:59 2011
@@ -36,7 +36,7 @@ public final class FailingTestCase
         {
 
             @Override
-            protected void configure()
+            protected void configureRules()
             {
                 useAnnotationHandlerFactory( new FailingDigesterLoaderHandlerFactory() );
                 bindRulesFrom( BeanWithFakeHandler.class );