Author: cbrisson
Date: Wed Nov  9 10:29:33 2016
New Revision: 1768903

URL: http://svn.apache.org/viewvc?rev=1768903&view=rev
Log:
[tools] use static logging in Tool objects

Modified:
    velocity/tools/trunk/velocity-tools-generic/pom.xml
    
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/ClassTool.java
    
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/FieldTool.java
    
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LinkTool.java
    
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LogTool.java
    
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LoopTool.java
    
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/MarkupTool.java
    
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/RenderTool.java
    
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/SortTool.java
    velocity/tools/trunk/velocity-tools-view/pom.xml
    
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/AbstractSearchTool.java
    
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/BrowserTool.java
    
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/CookieTool.java
    
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/ImportSupport.java
    
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UAParser.java
    
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UiDependencyTool.java
    
velocity/tools/trunk/velocity-tools-view/src/test/java/org/apache/velocity/tools/view/BrowserToolTests.java
    
velocity/tools/trunk/velocity-tools-xml/src/main/java/org/apache/velocity/tools/generic/XmlTool.java

Modified: velocity/tools/trunk/velocity-tools-generic/pom.xml
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/pom.xml?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- velocity/tools/trunk/velocity-tools-generic/pom.xml (original)
+++ velocity/tools/trunk/velocity-tools-generic/pom.xml Wed Nov  9 10:29:33 2016
@@ -64,21 +64,4 @@
           <scope>test</scope>
       </dependency>
   </dependencies>
-  <build>
-    <plugins>
-      <!-- to be able to share some test classes with other subprojects -->
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
-        <version>3.0.2</version>
-        <executions>
-          <execution>
-            <goals>
-              <goal>test-jar</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
 </project>

Modified: 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/ClassTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/ClassTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/ClassTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/ClassTool.java
 Wed Nov  9 10:29:33 2016
@@ -33,6 +33,7 @@ import java.util.HashSet;
 import java.util.Set;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.tools.ClassUtils;
 import org.apache.velocity.tools.config.DefaultKey;
@@ -72,7 +73,8 @@ public class ClassTool extends SafeConfi
     public static final String INSPECT_KEY = "inspect";
     public static final String SHOW_DEPRECATED_KEY = "showDeprecated";
 
-    protected Logger log;
+    protected static Logger log = LoggerFactory.getLogger(ClassTool.class);
+    
     protected Class type;
     protected List<MethodSub> methods;
     protected List<ConstructorSub> constructors;
@@ -102,7 +104,6 @@ public class ClassTool extends SafeConfi
         }
 
         // manually duplicate configuration of the parent tool
-        this.log = tool.log;
         this.showDeprecated = tool.showDeprecated;
         setSafeMode(tool.isSafeMode());
         setLockConfig(tool.isConfigLocked());
@@ -110,7 +111,6 @@ public class ClassTool extends SafeConfi
 
     protected void configure(ValueParser values)
     {
-        this.log = (Logger)values.getValue("log");
         this.showDeprecated =
             values.getBoolean(SHOW_DEPRECATED_KEY, showDeprecated);
 
@@ -129,10 +129,7 @@ public class ClassTool extends SafeConfi
         }
         catch (Exception e)
         {
-            if (this.log != null)
-            {
-                this.log.error("Could not load Class for {}", name);
-            }
+            log.error("Could not load Class for {}", name);
             return null;
         }
     }

Modified: 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/FieldTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/FieldTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/FieldTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/FieldTool.java
 Wed Nov  9 10:29:33 2016
@@ -25,6 +25,7 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.tools.ClassUtils;
 import org.apache.velocity.tools.config.DefaultKey;
@@ -92,15 +93,13 @@ public class FieldTool extends SafeConfi
      */
     public static final String STORE_DYNAMIC_KEY = "storeDynamicLookups";
 
-    protected Logger log;
+    protected static Logger log = LoggerFactory.getLogger(FieldTool.class);
+    
     protected HashMap storage = new HashMap();
     protected boolean storeDynamicLookups = true;
 
     protected void configure(ValueParser values)
     {
-        // see if there's a log in there
-        this.log = (Logger)values.getValue("log");
-
         // retrieve any classnames to be inspected and inspect them
         // *before* setting the storeDynamicLookups property!
         String[] classnames = values.getStrings(INCLUDE_KEY);
@@ -148,10 +147,7 @@ public class FieldTool extends SafeConfi
             }
             catch (Exception e)
             {
-                if (log != null)
-                {
-                    log.debug("Unable to retrieve value of field at {}", name, 
e);
-                }
+                log.debug("Unable to retrieve value of field at {}", name, e);
             }
         }
         // otherwise, we should have stored the value directly
@@ -232,22 +228,21 @@ public class FieldTool extends SafeConfi
             if (Modifier.isStatic(mod) && Modifier.isPublic(mod))
             {
                 // make it easy to debug key collisions
-                if (log != null && log.isDebugEnabled() &&
-                    results.containsKey(field.getName()))
+                if (log.isDebugEnabled() && 
results.containsKey(field.getName()))
                 {
-                    log.debug("FieldTool: {} is being overridden by {}", 
field.getName(), clazz.getName());
+                    log.debug("{} is being overridden by {}", field.getName(), 
clazz.getName());
                 }
                 // if the field is final
                 if (Modifier.isFinal(mod))
                 {
                     // just get the value now
-                    results.put(field.getName(), retrieve(field, clazz, log));
+                    results.put(field.getName(), retrieve(field, clazz));
                 }
                 else
                 {
                     // put a wrapper with easy access
                     results.put(field.getName(),
-                                new MutableField(field, clazz, log));
+                                new MutableField(field, clazz));
                 }
             }
         }
@@ -256,11 +251,10 @@ public class FieldTool extends SafeConfi
 
     /**
      * Retrieves and returns the value of the specified {@link Field}
-     * in the specified {@link Class}.  If Logger is provided, then
-     * access errors will be logged, otherwise this will fail silently
-     * and return {@code null}.
+     * in the specified {@link Class}. Returns {@code null} in case of failure.
+     * 
      */
-    protected static Object retrieve(Field field, Class clazz, Logger log)
+    protected static Object retrieve(Field field, Class clazz)
     {
         try
         {
@@ -268,10 +262,7 @@ public class FieldTool extends SafeConfi
         }
         catch(IllegalAccessException iae)
         {
-            if (log != null)
-            {
-                log.warn("IllegalAccessException while trying to access {}", 
field.getName(), iae);
-            }
+            log.warn("IllegalAccessException while trying to access {}", 
field.getName(), iae);
             return null;
         }
     }
@@ -326,16 +317,14 @@ public class FieldTool extends SafeConfi
     /**
      * Holds a {@link Field} and {@link Class} reference for later
      * retrieval of the value of a field that is not final and may
-     * change at different lookups.  If a Logger is passed in,
-     * then this will log errors, otherwise it will fail silently.
+     * change at different lookups.
      */
     public static class MutableField
     {
         private final Class clazz;
         private final Field field;
-        private final Logger log;
 
-        public MutableField(Field f, Class c, Logger l)
+        public MutableField(Field f, Class c)
         {
             if (f == null || c == null)
             {
@@ -344,12 +333,11 @@ public class FieldTool extends SafeConfi
 
             field = f;
             clazz = c;
-            log = l;
         }
 
         public Object getValue()
         {
-            return FieldTool.retrieve(field, clazz, log);
+            return FieldTool.retrieve(field, clazz);
         }
     }
 

Modified: 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LinkTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LinkTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LinkTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LinkTool.java
 Wed Nov  9 10:29:33 2016
@@ -29,6 +29,7 @@ import java.util.List;
 import java.util.Map;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.tools.Scope;
 import org.apache.velocity.tools.ToolContext;
@@ -106,7 +107,7 @@ public class LinkTool extends SafeConfig
     public static final String CHARSET_KEY = "charset";
     public static final String XHTML_MODE_KEY = "xhtml";
 
-    protected Logger LOG = null;
+    protected static Logger LOG = LoggerFactory.getLogger(LinkTool.class);
     protected String scheme;
     protected String user;
     protected String host;
@@ -214,11 +215,6 @@ public class LinkTool extends SafeConfig
         }
     }
 
-    public void setLog(Logger log)
-    {
-        this.LOG = log;
-    }
-
     /**
      * Equivalent to clone, but with no checked exceptions.
      * If for some unfathomable reason clone() doesn't work,
@@ -249,10 +245,7 @@ public class LinkTool extends SafeConfig
         catch (CloneNotSupportedException e)
         {
             String msg = "Could not properly clone " + getClass();
-            if (LOG != null)
-            {
-                LOG.error(msg, e);
-            }
+            LOG.error(msg, e);
             throw new RuntimeException(msg, e);
         }
     }
@@ -359,10 +352,7 @@ public class LinkTool extends SafeConfig
             }
             catch (NumberFormatException nfe)
             {
-                if (LOG != null)
-                {
-                    LOG.debug("Could not convert '{}' to int", obj, nfe);
-                }
+                LOG.error("Could not convert '{}' to int", obj, nfe);
                 this.port = -2; // use this to mean error
             }
         }
@@ -917,10 +907,7 @@ public class LinkTool extends SafeConfig
             }
             catch (Exception e)
             {
-                if (LOG != null)
-                {
-                    LOG.debug("Could not convert '{}' to URI", obj, e);
-                }
+                LOG.error("Could not convert '{}' to URI", obj, e);
                 return null;
             }
         }
@@ -965,10 +952,7 @@ public class LinkTool extends SafeConfig
         }
         catch (Exception e)
         {
-            if (LOG != null)
-            {
-                LOG.debug("Could not create URI", e);
-            }
+            LOG.error("Could not create URI", e);
         }
         return null;
     }
@@ -1760,10 +1744,7 @@ public class LinkTool extends SafeConfig
         }
         catch (UnsupportedEncodingException uee)
         {
-            if (LOG != null)
-            {
-                LOG.debug("Character encoding '{}' is unsupported", charset, 
uee);
-            }
+            LOG.error("Character encoding '{}' is unsupported", charset, uee);
             return null;
         }
     }
@@ -1786,10 +1767,7 @@ public class LinkTool extends SafeConfig
         }
         catch (UnsupportedEncodingException uee)
         {
-            if (LOG != null)
-            {
-                LOG.debug("Character encoding '{}' is unsupported", charset, 
uee);
-            }
+            LOG.error("Character encoding '{}' is unsupported", charset, uee);
             return null;
         }
     }

Modified: 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LogTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LogTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LogTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LogTool.java
 Wed Nov  9 10:29:33 2016
@@ -23,6 +23,7 @@ import org.apache.velocity.tools.config.
 import org.apache.velocity.tools.config.ValidScope;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * <p>
@@ -40,9 +41,8 @@ import org.slf4j.Logger;
  * </pre>
  * </p>
  *
- * <p>
+ * <p>You can optionnaly specify the logger name in the config (the default is 
to re-use the engine logger):
  * <pre>
- * Example tools.xml config:
  * &lt;tools&gt;
  *   &lt;toolbox scope="application"&gt;
  *     &lt;tool class="org.apache.velocity.tools.generic.LogTool"/&gt;
@@ -58,13 +58,23 @@ import org.slf4j.Logger;
 @ValidScope(Scope.APPLICATION)
 public class LogTool
 {
+    public static final String LOGGER_NAME_KEY = "loggerName";
+    
     private Logger LOG = null;
 
-    public void setLog(Logger log)
+    /**
+     * configure the logger
+     */
+    public void configure(ValueParser values)
     {
-        this.LOG = log;
+        String loggerName = values.getString(LOGGER_NAME_KEY);
+        if (loggerName == null)
+        {
+            loggerName = "Velocity";
+        }
+        LOG = LoggerFactory.getLogger(loggerName);
     }
-
+    
     public void error(String message)
     {
         LOG.error(message);

Modified: 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LoopTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LoopTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LoopTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/LoopTool.java
 Wed Nov  9 10:29:33 2016
@@ -26,11 +26,15 @@ import java.util.List;
 import java.util.Map;
 import java.util.NoSuchElementException;
 import java.util.Stack;
+
 import org.apache.velocity.tools.ClassUtils;
 import org.apache.velocity.tools.Scope;
 import org.apache.velocity.tools.config.DefaultKey;
 import org.apache.velocity.tools.config.ValidScope;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 /**
  * <p>
  * A convenience tool to use with #foreach loops. It wraps a list
@@ -95,6 +99,8 @@ public class LoopTool
     private Stack<ManagedIterator> iterators = new Stack<ManagedIterator>();
     private ManagedIterator last;
     private Map<String,Object> lastSyncedValues;
+
+    protected static Logger LOG = LoggerFactory.getLogger(LoopTool.class);
     
     /**
      * <p>Tells the LoopTool to watch the specified Array, Collection, Map,
@@ -586,7 +592,7 @@ public class LoopTool
         }
         catch (Exception e)
         {
-            //TODO: pick up a log so we can log this
+            LOG.error("Exception while getting Iterator:", e);
         }
         return null;
     }

Modified: 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/MarkupTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/MarkupTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/MarkupTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/MarkupTool.java
 Wed Nov  9 10:29:33 2016
@@ -25,6 +25,7 @@ import java.util.List;
 import java.util.Map;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.tools.config.DefaultKey;
 
@@ -71,21 +72,16 @@ public class MarkupTool extends SafeConf
 
     private String tab = DEFAULT_TAB;
     private String delim = DEFAULT_DELIMITER;
-    private Logger LOG = null;
+    private static Logger LOG = LoggerFactory.getLogger(MarkupTool.class);
 
     /**
      * Configuration
      */
-    public void setLog(Logger log)
-    {
-        this.LOG = log;
-    }
-
     public void setTab(String tab)
     {
         if (isConfigLocked())
         {
-            LOG.error("MarkupTool: setTab() failure: configuration is locked");
+            LOG.error("setTab() failure: configuration is locked");
         }
         else
         {

Modified: 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/RenderTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/RenderTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/RenderTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/RenderTool.java
 Wed Nov  9 10:29:33 2016
@@ -22,6 +22,7 @@ package org.apache.velocity.tools.generi
 import java.io.StringWriter;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.VelocityContext;
 import org.apache.velocity.app.Velocity;
@@ -117,7 +118,8 @@ public class RenderTool extends SafeConf
 
     public static final String KEY_FORCE_THREAD_SAFE = "forceThreadSafe";
 
-    protected Logger LOG = null;
+    protected static Logger LOG = LoggerFactory.getLogger(RenderTool.class);
+    
     private VelocityEngine engine = null;
     private Context context;
     private int parseDepth = DEFAULT_PARSE_DEPTH;
@@ -164,14 +166,6 @@ public class RenderTool extends SafeConf
     }
 
     /**
-     * Allow user to specify a logger.
-     */
-    public void setLog(Logger log)
-    {
-        this.LOG = log;
-    }
-
-    /**
      * Set the maximum number of loops allowed when recursing.
      *
      * @since VelocityTools 1.2
@@ -184,10 +178,7 @@ public class RenderTool extends SafeConf
         }
         else if (this.parseDepth != depth)
         {
-            if (LOG != null)
-            {
-                LOG.debug("RenderTool: Attempt was made to alter parse depth 
while config was locked.");
-            }
+            LOG.error("Attempt was made to alter parse depth while config was 
locked.");
         }
     }
 
@@ -207,10 +198,7 @@ public class RenderTool extends SafeConf
         }
         else if (this.context != context)
         {
-            if (LOG != null)
-            {
-                LOG.debug("RenderTool: Attempt was made to set a new context 
while config was locked.");
-            }
+            LOG.error("Attempt was made to set a new context while config was 
locked.");
         }
     }
 
@@ -237,10 +225,7 @@ public class RenderTool extends SafeConf
         }
         else if (this.catchExceptions != catchExceptions)
         {
-            if (LOG != null)
-            {
-                LOG.debug("RenderTool: Attempt was made to alter catchE while 
config was locked.");
-            }
+            LOG.error("Attempt was made to alter catchE while config was 
locked.");
         }
     }
 
@@ -312,10 +297,7 @@ public class RenderTool extends SafeConf
             }
             catch (Exception e)
             {
-                if (LOG != null)
-                {
-                    LOG.debug("RenderTool.eval(): failed due to ", e);
-                }
+                LOG.error("evaluation failed:", e);
                 return null;
             }
         }
@@ -386,12 +368,9 @@ public class RenderTool extends SafeConf
             else
             {
                 // abort, log and return what we have so far
-                if (LOG != null)
-                {
-                    LOG.debug("RenderTool.recurse() exceeded the maximum parse 
depth" +
-                              " of {} on the following template: {}",
-                              parseDepth, vtl);
-                }
+                LOG.error("recursion exceeded the maximum parse depth" +
+                          " of {} on the following template: {}",
+                          parseDepth, vtl);
                 return result;
             }
         }

Modified: 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/SortTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/SortTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/SortTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-generic/src/main/java/org/apache/velocity/tools/generic/SortTool.java
 Wed Nov  9 10:29:33 2016
@@ -26,8 +26,11 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
+
 import org.apache.commons.beanutils.PropertyUtils;
 import org.apache.velocity.tools.config.DefaultKey;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * SortTool allows a user to sort a collection (or array, iterator, etc)
@@ -115,6 +118,8 @@ import org.apache.velocity.tools.config.
 @DefaultKey("sorter")
 public class SortTool
 {
+    protected static Logger LOG = LoggerFactory.getLogger(SortTool.class);
+    
     /**
      * Sorts a Collection using a Comparator. A defensive copy is made
      * of the Collection beforehand, so the original Collection is left
@@ -200,6 +205,7 @@ public class SortTool
         else
         {
             // the object type is not supported
+            LOG.error("object type not supported: {}", o == null ? "null" : 
o.getClass().getName());
             return null;
         }
     }
@@ -243,6 +249,7 @@ public class SortTool
             return sort((Map)object, properties);
         }
         // the object type is not supported
+        LOG.error("object type not supported: {}", object == null ? "null" : 
object.getClass().getName());
         return null;
     }
 
@@ -277,7 +284,7 @@ public class SortTool
         }
         catch (Exception e)
         {
-            //TODO: log this
+            LOG.error("exception encountered while sorting: {}", 
e.getMessage());
             return null;
         }
     }

Modified: velocity/tools/trunk/velocity-tools-view/pom.xml
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-view/pom.xml?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- velocity/tools/trunk/velocity-tools-view/pom.xml (original)
+++ velocity/tools/trunk/velocity-tools-view/pom.xml Wed Nov  9 10:29:33 2016
@@ -82,13 +82,5 @@
             <version>3.4</version>
             <scope>test</scope>
         </dependency>
-        <!-- to reuse the MockLogger from velocity-tools-generic -->
-        <dependency>
-            <groupId>org.apache.velocity</groupId>
-            <artifactId>velocity-tools-generic</artifactId>
-            <version>${project.version}</version>
-            <type>test-jar</type>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 </project>

Modified: 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/AbstractSearchTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/AbstractSearchTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/AbstractSearchTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/AbstractSearchTool.java
 Wed Nov  9 10:29:33 2016
@@ -24,6 +24,7 @@ import java.util.List;
 import javax.servlet.http.HttpServletRequest;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.tools.Scope;
 import org.apache.velocity.tools.config.DefaultKey;
@@ -131,19 +132,11 @@ public abstract class AbstractSearchTool
     protected static final String STORED_RESULTS_KEY =
         StoredResults.class.getName();
 
-    protected Logger LOG;
+    protected static Logger LOG = 
LoggerFactory.getLogger(AbstractSearchTool.class);
+
     private String criteriaKey = DEFAULT_CRITERIA_KEY;
     private Object criteria;
 
-    public void setLog(Logger log)
-    {
-        if (log == null)
-        {
-            throw new NullPointerException("log should not be set to null");
-        }
-        this.LOG = log;
-    }
-
     /**
      * Sets the criteria *if* it is set in the request parameters.
      */
@@ -239,10 +232,7 @@ public abstract class AbstractSearchTool
             }
             catch (Throwable t)
             {
-                if (LOG != null)
-                {
-                    LOG.error("AbstractSearchTool: executeQuery({}) failed", 
findMe, t);
-                }
+                LOG.error("executeQuery({}) failed", findMe, t);
             }
 
             /* because we can't trust executeQuery() not to return null

Modified: 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/BrowserTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/BrowserTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/BrowserTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/BrowserTool.java
 Wed Nov  9 10:29:33 2016
@@ -23,11 +23,11 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.*;
 
-import org.apache.velocity.exception.VelocityException;
 import org.apache.velocity.tools.ConversionUtils;
 import static org.apache.velocity.tools.view.UAParser.*;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.tools.Scope;
 import org.apache.velocity.tools.config.DefaultKey;
@@ -102,7 +102,7 @@ public class BrowserTool extends Browser
 {
     private static final long serialVersionUID = 1734529350532353339L;
 
-    protected Logger LOG = null;
+    protected static Logger LOG = LoggerFactory.getLogger(BrowserTool.class);
 
     /* User-Agent */
     private String userAgentString = null;
@@ -138,19 +138,6 @@ public class BrowserTool extends Browser
     }
 
     /**
-     * Set log.
-     */
-    public void setLog(Logger log)
-    {
-        if (log == null)
-        {
-            throw new NullPointerException("BrowserTool: log should not be set 
to null");
-        }
-        this.LOG = log;
-    }
-
-
-    /**
      * Sets the User-Agent string to be parsed for info.  If null, the string
      * will be empty and everything will return false or null.  Otherwise,
      * it will set the whole string to lower case before storing to simplify
@@ -173,7 +160,7 @@ public class BrowserTool extends Browser
         {
             userAgentString = ua;
             lowercaseUserAgentString = ua.toLowerCase();
-            userAgent = UAParser.parseUserAgent(ua, LOG);
+            userAgent = UAParser.parseUserAgent(ua);
         }
     }
 

Modified: 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/CookieTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/CookieTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/CookieTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/CookieTool.java
 Wed Nov  9 10:29:33 2016
@@ -26,6 +26,7 @@ import javax.servlet.http.HttpServletReq
 import javax.servlet.http.HttpServletResponse;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.tools.config.DefaultKey;
 import org.apache.velocity.tools.config.ValidScope;
@@ -58,9 +59,10 @@ import org.apache.velocity.tools.Scope;
 @ValidScope(Scope.REQUEST)
 public class CookieTool
 {
+    protected static Logger log = LoggerFactory.getLogger(CookieTool.class);
+
     protected HttpServletRequest request;
     protected HttpServletResponse response;
-    protected Logger log;
     private List<Cookie> jar;
 
     // --------------------------------------- Setup Methods -------------
@@ -93,15 +95,6 @@ public class CookieTool
         this.response = response;
     }
 
-    /**
-     * Sets the {@link Log} used for logging messages when Cookie
-     * creation fails due to an invalid name.
-     */
-    public void setLog(Logger log)
-    {
-        this.log = log;
-    }
-
     // --------------------------------------- Setup Methods -------------
 
     /**
@@ -219,7 +212,7 @@ public class CookieTool
         }
         catch (IllegalArgumentException iae)
         {
-            log.debug("CookieTool: Could not create cookie with name \"{}\"", 
name, iae);
+            log.error("Could not create cookie with name \"{}\"", name, iae);
             return null;
         }
     }

Modified: 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/ImportSupport.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/ImportSupport.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/ImportSupport.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/ImportSupport.java
 Wed Nov  9 10:29:33 2016
@@ -41,6 +41,7 @@ import javax.servlet.http.HttpServletRes
 import javax.servlet.http.HttpServletResponseWrapper;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * <p>Provides methods to import arbitrary local or remote resources as 
strings.</p>
@@ -58,7 +59,8 @@ public abstract class ImportSupport
     /** Default character encoding for response. */
     protected static final String DEFAULT_ENCODING = "UTF-8";
 
-    protected Logger LOG;
+    protected static Logger LOG = LoggerFactory.getLogger(ImportSupport.class);
+    
     protected ServletContext application;
     protected HttpServletRequest request;
     protected HttpServletResponse response;
@@ -66,15 +68,6 @@ public abstract class ImportSupport
 
     // --------------------------------------- Setup Methods -------------
 
-    public void setLog(Logger log)
-    {
-        if (log == null)
-        {
-            throw new NullPointerException("log should not be set to null");
-        }
-        this.LOG = log;
-    }
-
     /**
      * Sets the current {@link HttpServletRequest}. This is required
      * for this tool to operate and will throw a NullPointerException
@@ -172,7 +165,7 @@ public abstract class ImportSupport
                     }
                     catch (IOException ioe)
                     {
-                        LOG.error("ImportSupport : Could not close reader.", 
ioe);
+                        LOG.error("Could not close reader.", ioe);
                     }
                 }
                }
@@ -323,7 +316,7 @@ public abstract class ImportSupport
                     }
                     catch (IOException ioe)
                     {
-                        LOG.error("ImportSupport : Could not close 
InputStream", ioe);
+                        LOG.error("Could not close InputStream", ioe);
                     }
                 }
 
@@ -344,7 +337,7 @@ public abstract class ImportSupport
                     }
                     catch (IOException ioe)
                     {
-                        LOG.error("ImportSupport : Could not close 
InputStream", ioe);
+                        LOG.error("Could not close InputStream", ioe);
                     }
                 }
 

Modified: 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UAParser.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UAParser.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UAParser.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UAParser.java
 Wed Nov  9 10:29:33 2016
@@ -4,7 +4,9 @@ import org.apache.velocity.exception.Vel
 import org.apache.velocity.shaded.commons.lang3.tuple.ImmutablePair;
 import org.apache.velocity.shaded.commons.lang3.tuple.Pair;
 import org.apache.velocity.tools.ClassUtils;
+
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.BufferedReader;
 import java.io.IOException;
@@ -22,12 +24,7 @@ public class UAParser
     {
     }
 
-    public void setLog(Logger log)
-    {
-        this.LOG = log;
-    }
-
-    protected org.slf4j.Logger LOG = null;
+    protected static Logger LOG = LoggerFactory.getLogger(BrowserTool.class);
 
     public static class UAEntity
     {
@@ -248,12 +245,6 @@ public class UAParser
     /* the big hairy parsing method */
     public static UserAgent parseUserAgent(String userAgentString)
     {
-        return parseUserAgent(userAgentString, null);
-    }
-
-    /* the big hairy parsing method */
-    public static UserAgent parseUserAgent(String userAgentString, Logger log)
-    {
         UserAgent ua = null;
         try
         {
@@ -597,7 +588,7 @@ public class UAParser
         }
         catch (Exception e)
         {
-            if (log != null) log.error("BrowserTool: Could not parse browser 
for User-Agent: {}", userAgentString, e);
+            LOG.error("Could not parse browser for User-Agent: {}", 
userAgentString, e);
             ua = null;
         }
         return ua;

Modified: 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UiDependencyTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UiDependencyTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UiDependencyTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-view/src/main/java/org/apache/velocity/tools/view/UiDependencyTool.java
 Wed Nov  9 10:29:33 2016
@@ -31,6 +31,8 @@ import javax.servlet.ServletContext;
 import javax.servlet.http.HttpServletRequest;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import org.xml.sax.Attributes;
 import org.xml.sax.SAXException;
 
@@ -133,12 +135,11 @@ public class UiDependencyTool {
     private Map<String,Group> groups = null;
     private List<Type> types = DEFAULT_TYPES;
     private Map<String,List<String>> dependencies;
-    private Logger LOG;
+    private static Logger LOG = 
LoggerFactory.getLogger(UiDependencyTool.class);
     private String context = "";
 
     public void configure(Map params) {
         ServletContext app = 
(ServletContext)params.get(ViewContext.SERVLET_CONTEXT_KEY);
-        LOG = (Logger)params.get(ToolContext.LOG_KEY);
 
         HttpServletRequest request = 
(HttpServletRequest)params.get(ViewContext.REQUEST);
         context = request.getContextPath();
@@ -442,7 +443,7 @@ public class UiDependencyTool {
      */
     protected Group makeGroup(String name) {
         LOG.trace("UiDependencyTool: Creating group '{}'", name);
-        Group group = new Group(name, LOG);
+        Group group = new Group(name);
         groups.put(name, group);
         return group;
     }
@@ -531,11 +532,9 @@ public class UiDependencyTool {
         private Map<String,Integer> typeCounts = new 
LinkedHashMap<String,Integer>();
         private Map<String,List<String>> dependencies = new 
LinkedHashMap<String,List<String>>();
         private List<String> groups;
-        private Logger LOG;
 
-        public Group(String name, Logger log) {
+        public Group(String name) {
             this.name = name;
-            this.LOG = log;
         }
 
         public void addFile(String type, String value) {

Modified: 
velocity/tools/trunk/velocity-tools-view/src/test/java/org/apache/velocity/tools/view/BrowserToolTests.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-view/src/test/java/org/apache/velocity/tools/view/BrowserToolTests.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-view/src/test/java/org/apache/velocity/tools/view/BrowserToolTests.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-view/src/test/java/org/apache/velocity/tools/view/BrowserToolTests.java
 Wed Nov  9 10:29:33 2016
@@ -33,9 +33,7 @@ import java.util.TreeMap;
 
 import static org.apache.velocity.tools.view.UAParser.UAEntity;
 
-import org.apache.velocity.tools.generic.MockLogger;
 import org.junit.Test;
-import org.slf4j.Logger;
 
 /**
  * <p>Tests for BrowserTool</p>
@@ -136,7 +134,6 @@ public class BrowserToolTests {
     public @Test void testBrowserParsing() throws Exception
     {
         BrowserTool tool = new BrowserTool();
-        tool.setLog(new MockLogger(false, false));
         Map uas = readUAs("browsers.txt");
         checkBrowsers(tool, uas);
     }
@@ -144,7 +141,6 @@ public class BrowserToolTests {
     public @Test void testDeviceParsing() throws Exception
     {
         BrowserTool tool = new BrowserTool();
-        tool.setLog(new MockLogger(false, false));
         Map uas = readUAs("devices.txt");
         checkDevices(tool, uas);
     }
@@ -152,7 +148,6 @@ public class BrowserToolTests {
     public @Test void testOperatingSystemParsing() throws Exception
     {
         BrowserTool tool = new BrowserTool();
-        tool.setLog(new MockLogger(false, false));
         Map uas = readUAs("operating_systems.txt");
         checkOperatingSystems(tool, uas);
     }

Modified: 
velocity/tools/trunk/velocity-tools-xml/src/main/java/org/apache/velocity/tools/generic/XmlTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/trunk/velocity-tools-xml/src/main/java/org/apache/velocity/tools/generic/XmlTool.java?rev=1768903&r1=1768902&r2=1768903&view=diff
==============================================================================
--- 
velocity/tools/trunk/velocity-tools-xml/src/main/java/org/apache/velocity/tools/generic/XmlTool.java
 (original)
+++ 
velocity/tools/trunk/velocity-tools-xml/src/main/java/org/apache/velocity/tools/generic/XmlTool.java
 Wed Nov  9 10:29:33 2016
@@ -19,7 +19,6 @@ package org.apache.velocity.tools.generi
  * under the License.
  */
 
-import java.io.StringWriter;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Collections;
@@ -33,9 +32,9 @@ import org.dom4j.Node;
 import org.dom4j.Element;
 import org.dom4j.Document;
 import org.dom4j.DocumentHelper;
-import org.dom4j.io.XMLWriter;
 import org.dom4j.io.SAXReader;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.velocity.tools.ConversionUtils;
 import org.apache.velocity.tools.ToolContext;
@@ -80,7 +79,7 @@ public class XmlTool extends SafeConfig
 {
     public static final String FILE_KEY = "file";
 
-    protected Logger LOG = null;
+    protected static Logger LOG = LoggerFactory.getLogger(XmlTool.class);
 
     private List<Node> nodes;
 
@@ -105,8 +104,6 @@ public class XmlTool extends SafeConfig
      */
     protected void configure(ValueParser parser)
     {
-        this.LOG = (Logger)parser.getValue(ToolContext.LOG_KEY);
-
         String file = parser.getString(FILE_KEY);
         if (file != null)
         {
@@ -201,10 +198,7 @@ public class XmlTool extends SafeConfig
         }
         catch (Exception e)
         {
-            if (LOG != null)
-            {
-                LOG.debug("XmlTool - Failed to read XML from : {}", o, e);
-            }
+            LOG.error("XmlTool - Failed to read XML from : {}", o, e);
             return null;
         }
     }
@@ -230,10 +224,7 @@ public class XmlTool extends SafeConfig
         }
         catch (Exception e)
         {
-            if (LOG != null)
-            {
-                LOG.debug("XmlTool - Failed to parse XML from : {}", o, e);
-            }
+            LOG.error("XmlTool - Failed to parse XML from : {}", o, e);
             return null;
         }
     }



Reply via email to