You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by we...@apache.org on 2009/12/21 20:53:12 UTC

svn commit: r892945 - /myfaces/extensions/scripting/trunk/core/core/src/main/java/org/apache/myfaces/scripting/core/dependencyScan/DefaultDependencyScanner.java

Author: werpu
Date: Mon Dec 21 19:53:12 2009
New Revision: 892945

URL: http://svn.apache.org/viewvc?rev=892945&view=rev
Log:
https://issues.apache.org/jira/browse/EXTSCRIPT-39
cleaned up the param passing and added a logger for the two error cases

Modified:
    myfaces/extensions/scripting/trunk/core/core/src/main/java/org/apache/myfaces/scripting/core/dependencyScan/DefaultDependencyScanner.java

Modified: myfaces/extensions/scripting/trunk/core/core/src/main/java/org/apache/myfaces/scripting/core/dependencyScan/DefaultDependencyScanner.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/core/src/main/java/org/apache/myfaces/scripting/core/dependencyScan/DefaultDependencyScanner.java?rev=892945&r1=892944&r2=892945&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/core/src/main/java/org/apache/myfaces/scripting/core/dependencyScan/DefaultDependencyScanner.java (original)
+++ myfaces/extensions/scripting/trunk/core/core/src/main/java/org/apache/myfaces/scripting/core/dependencyScan/DefaultDependencyScanner.java Mon Dec 21 19:53:12 2009
@@ -19,6 +19,8 @@
 
 package org.apache.myfaces.scripting.core.dependencyScan;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.apache.tools.ant.taskdefs.Classloader;
 import org.objectweb.asm.ClassReader;
 
@@ -39,8 +41,8 @@
 public class DefaultDependencyScanner implements DependencyScanner {
 
     final ClassScanVisitor cp = new ClassScanVisitor();
-    Set<String> whiteList;
-    String className;
+    Log log = LogFactory.getLog(this.getClass().getName());
+
 
     /**
      * @param className
@@ -48,9 +50,7 @@
      */
     public synchronized final Set<String> fetchDependencies(String className, final Set<String> whiteList) {
         Set<String> retVal = new HashSet<String>();
-        this.whiteList = whiteList;
-        this.className = className;
-        investigateInheritanceHierarchy(retVal);
+        investigateInheritanceHierarchy(retVal, className, whiteList);
         return retVal;
     }
 
@@ -64,22 +64,21 @@
      *
      * @param retVal
      */
-    private void investigateInheritanceHierarchy(Set<String> retVal) {
+    private final void investigateInheritanceHierarchy(Set<String> retVal, String className, Set<String> whiteList) {
         //we now have to fetch the parent hierarchy
         ClassLoader loader = Thread.currentThread().getContextClassLoader();
         try {
             Class toCheck = loader.loadClass(className);
-            scanCurrentClass(retVal, className);
+            scanCurrentClass(retVal, className, whiteList);
             Class parent = toCheck.getSuperclass();
 
             while (parent != null && !ClassLogUtils.isStandard(parent.getName())) {
-                //retVal.add(parent.getName());
-                scanCurrentClass(retVal, parent.getName());
+                scanCurrentClass(retVal, parent.getName(), whiteList);
                 parent = parent.getSuperclass();
             }
 
         } catch (ClassNotFoundException e) {
-            e.printStackTrace(); 
+            log.error(e);
         }
     }
 
@@ -89,7 +88,7 @@
      * @param retVal
      * @param currentClassName
      */
-    private void scanCurrentClass(Set<String> retVal, String currentClassName) {
+    private final void scanCurrentClass(Set<String> retVal, String currentClassName, Set<String> whiteList) {
         cp.setDependencyTarget(retVal);
         cp.setWhiteList(whiteList);
         ClassReader cr = null;
@@ -98,7 +97,7 @@
             cr = new ClassReader(currentClassName);
             cr.accept(cp, 0);
         } catch (IOException e) {
-            e.printStackTrace();
+            log.error(e);
         }
     }