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/02/19 19:34:59 UTC

svn commit: r1072408 - /commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/RulesBinderImpl.java

Author: simonetripodi
Date: Sat Feb 19 18:34:58 2011
New Revision: 1072408

URL: http://svn.apache.org/viewvc?rev=1072408&view=rev
Log:
small documentation on how the FIleName:LineNumber resolution works

Modified:
    commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/RulesBinderImpl.java

Modified: commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/RulesBinderImpl.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/RulesBinderImpl.java?rev=1072408&r1=1072407&r2=1072408&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/RulesBinderImpl.java (original)
+++ commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/RulesBinderImpl.java Sat Feb 19 18:34:58 2011
@@ -67,20 +67,24 @@ public final class RulesBinderImpl imple
      */
     public void addError(String messagePattern, Object... arguments) {
         StackTraceElement[] stackTrace = new Exception().getStackTrace();
+        // let's check if it is an AbstractRulesModule extension first
         StackTraceElement element = stackTrace[3];
         Class<?> moduleClass = null;
 
         try {
+            // check if the set ClassLoader resolves the Class in the StackTrace
             moduleClass = Class.forName(element.getClassName(), false, this.classLoader);
         } catch (ClassNotFoundException e) {
             try {
+                // try otherwise with current ClassLoader
                 moduleClass = Class.forName(element.getClassName(), false, this.getClass().getClassLoader());
             } catch (ClassNotFoundException e1) {
-                // swallow, don't write the file name:line number
+                // Class in the StackTrace can't be found, don't write the file name:line number detail in the message
             }
         }
 
         if (moduleClass != null) {
+            // if it is not an AbstractRulesModule, then a RulesModule implementation
             if (!AbstractRulesModule.class.isAssignableFrom(moduleClass)) {
                 element = stackTrace[2];
             }