2e0d2f
From bf0462e3c293863947dde1c22a62c3d4a187a70c Mon Sep 17 00:00:00 2001
2e0d2f
From: Marian Koncek <mkoncek@redhat.com>
2e0d2f
Date: Thu, 31 Oct 2019 14:35:40 +0100
2e0d2f
Subject: [PATCH 1/2] Port to apache-commons-lang3
2e0d2f
2e0d2f
---
2e0d2f
 pom.xml                                                     | 6 +++---
2e0d2f
 .../velocity/app/event/implement/EscapeHtmlReference.java   | 4 ++--
2e0d2f
 .../app/event/implement/EscapeJavaScriptReference.java      | 4 ++--
2e0d2f
 .../velocity/app/event/implement/EscapeSqlReference.java    | 5 +++--
2e0d2f
 .../velocity/app/event/implement/EscapeXmlReference.java    | 2 +-
2e0d2f
 src/java/org/apache/velocity/runtime/RuntimeInstance.java   | 2 +-
2e0d2f
 .../org/apache/velocity/runtime/VelocimacroFactory.java     | 2 +-
2e0d2f
 src/java/org/apache/velocity/runtime/directive/Block.java   | 2 +-
2e0d2f
 .../org/apache/velocity/runtime/directive/RuntimeMacro.java | 2 +-
2e0d2f
 src/java/org/apache/velocity/runtime/parser/Parser.java     | 2 +-
2e0d2f
 .../apache/velocity/runtime/parser/ParserTokenManager.java  | 2 +-
2e0d2f
 .../apache/velocity/runtime/parser/node/ASTDirective.java   | 2 +-
2e0d2f
 .../org/apache/velocity/runtime/parser/node/ASTMethod.java  | 4 ++--
2e0d2f
 .../velocity/runtime/parser/node/ASTStringLiteral.java      | 2 +-
2e0d2f
 .../org/apache/velocity/runtime/parser/node/NodeUtils.java  | 2 +-
2e0d2f
 .../velocity/runtime/parser/node/PropertyExecutor.java      | 2 +-
2e0d2f
 .../velocity/runtime/parser/node/SetPropertyExecutor.java   | 4 ++--
2e0d2f
 .../org/apache/velocity/runtime/parser/node/SimpleNode.java | 4 ++--
2e0d2f
 .../velocity/runtime/resource/ResourceManagerImpl.java      | 4 ++--
2e0d2f
 .../runtime/resource/loader/ClasspathResourceLoader.java    | 2 +-
2e0d2f
 .../runtime/resource/loader/DataSourceResourceLoader.java   | 2 +-
2e0d2f
 .../runtime/resource/loader/FileResourceLoader.java         | 2 +-
2e0d2f
 .../velocity/runtime/resource/loader/JarResourceLoader.java | 2 +-
2e0d2f
 .../runtime/resource/loader/StringResourceLoader.java       | 2 +-
2e0d2f
 .../velocity/runtime/resource/loader/URLResourceLoader.java | 2 +-
2e0d2f
 .../org/apache/velocity/util/introspection/ClassMap.java    | 2 +-
2e0d2f
 .../org/apache/velocity/io/UnicodeInputStreamTestCase.java  | 2 +-
2e0d2f
 src/test/org/apache/velocity/test/BaseTestCase.java         | 2 +-
2e0d2f
 .../org/apache/velocity/test/MethodCacheKeyTestCase.java    | 2 +-
2e0d2f
 29 files changed, 39 insertions(+), 38 deletions(-)
2e0d2f
2e0d2f
diff --git a/pom.xml b/pom.xml
2e0d2f
index 77a8e383..eee15b34 100644
2e0d2f
--- a/pom.xml
2e0d2f
+++ b/pom.xml
2e0d2f
@@ -148,9 +148,9 @@
2e0d2f
       <version>3.2.1</version>
2e0d2f
     </dependency>
2e0d2f
     <dependency>
2e0d2f
-      <groupId>commons-lang</groupId>
2e0d2f
-      <artifactId>commons-lang</artifactId>
2e0d2f
-      <version>2.4</version>
2e0d2f
+      <groupId>org.apache.commons</groupId>
2e0d2f
+      <artifactId>commons-lang3</artifactId>
2e0d2f
+      <version>3.9</version>
2e0d2f
     </dependency>
2e0d2f
     <dependency>
2e0d2f
       <groupId>oro</groupId>
2e0d2f
diff --git a/src/java/org/apache/velocity/app/event/implement/EscapeHtmlReference.java b/src/java/org/apache/velocity/app/event/implement/EscapeHtmlReference.java
2e0d2f
index 6d98b45c..e1469957 100644
2e0d2f
--- a/src/java/org/apache/velocity/app/event/implement/EscapeHtmlReference.java
2e0d2f
+++ b/src/java/org/apache/velocity/app/event/implement/EscapeHtmlReference.java
2e0d2f
@@ -19,7 +19,7 @@ package org.apache.velocity.app.event.implement;
2e0d2f
  * under the License.    
2e0d2f
  */
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.StringEscapeUtils;
2e0d2f
+import org.apache.commons.lang3.StringEscapeUtils;
2e0d2f
 
2e0d2f
 /**
2e0d2f
  * Escape all HTML entities.
2e0d2f
@@ -39,7 +39,7 @@ public class EscapeHtmlReference extends EscapeReference
2e0d2f
      */
2e0d2f
     protected String escape(Object text)
2e0d2f
     {
2e0d2f
-        return StringEscapeUtils.escapeHtml(text.toString());
2e0d2f
+        return StringEscapeUtils.escapeHtml4(text.toString());
2e0d2f
     }
2e0d2f
 
2e0d2f
     /**
2e0d2f
diff --git a/src/java/org/apache/velocity/app/event/implement/EscapeJavaScriptReference.java b/src/java/org/apache/velocity/app/event/implement/EscapeJavaScriptReference.java
2e0d2f
index ea49ddbf..12f38f47 100644
2e0d2f
--- a/src/java/org/apache/velocity/app/event/implement/EscapeJavaScriptReference.java
2e0d2f
+++ b/src/java/org/apache/velocity/app/event/implement/EscapeJavaScriptReference.java
2e0d2f
@@ -19,7 +19,7 @@ package org.apache.velocity.app.event.implement;
2e0d2f
  * under the License.    
2e0d2f
  */
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.StringEscapeUtils;
2e0d2f
+import org.apache.commons.lang3.StringEscapeUtils;
2e0d2f
 
2e0d2f
 /**
2e0d2f
  * Escapes the characters in a String to be suitable for use in JavaScript.
2e0d2f
@@ -39,7 +39,7 @@ public class EscapeJavaScriptReference extends EscapeReference
2e0d2f
      */
2e0d2f
     protected String escape(Object text)
2e0d2f
     {
2e0d2f
-        return StringEscapeUtils.escapeJavaScript(text.toString());
2e0d2f
+        return StringEscapeUtils.escapeEcmaScript(text.toString());
2e0d2f
     }
2e0d2f
 
2e0d2f
     /**
2e0d2f
diff --git a/src/java/org/apache/velocity/app/event/implement/EscapeSqlReference.java b/src/java/org/apache/velocity/app/event/implement/EscapeSqlReference.java
2e0d2f
index 585cb6c6..39e04f43 100644
2e0d2f
--- a/src/java/org/apache/velocity/app/event/implement/EscapeSqlReference.java
2e0d2f
+++ b/src/java/org/apache/velocity/app/event/implement/EscapeSqlReference.java
2e0d2f
@@ -19,7 +19,7 @@ package org.apache.velocity.app.event.implement;
2e0d2f
  * under the License.    
2e0d2f
  */
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.StringEscapeUtils;
2e0d2f
+import org.apache.commons.lang3.StringUtils;
2e0d2f
 
2e0d2f
 /**
2e0d2f
  * Escapes the characters in a String to be suitable to pass to an SQL query.
2e0d2f
@@ -39,7 +39,8 @@ public class EscapeSqlReference extends EscapeReference
2e0d2f
      */
2e0d2f
     protected String escape(Object text)
2e0d2f
     {
2e0d2f
-        return StringEscapeUtils.escapeSql(text.toString());
2e0d2f
+        // See https://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/StringEscapeUtils.html#escapeSql(java.lang.String)
2e0d2f
+        return StringUtils.replace(text.toString(), "'", "''");
2e0d2f
     }
2e0d2f
 
2e0d2f
     /**
2e0d2f
diff --git a/src/java/org/apache/velocity/app/event/implement/EscapeXmlReference.java b/src/java/org/apache/velocity/app/event/implement/EscapeXmlReference.java
2e0d2f
index 3d5b40f0..fbb525cb 100644
2e0d2f
--- a/src/java/org/apache/velocity/app/event/implement/EscapeXmlReference.java
2e0d2f
+++ b/src/java/org/apache/velocity/app/event/implement/EscapeXmlReference.java
2e0d2f
@@ -19,7 +19,7 @@ package org.apache.velocity.app.event.implement;
2e0d2f
  * under the License.    
2e0d2f
  */
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.StringEscapeUtils;
2e0d2f
+import org.apache.commons.lang3.StringEscapeUtils;
2e0d2f
 
2e0d2f
 /**
2e0d2f
  * Escape all XML entities.
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/RuntimeInstance.java b/src/java/org/apache/velocity/runtime/RuntimeInstance.java
2e0d2f
index 670c083d..f877114d 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/RuntimeInstance.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/RuntimeInstance.java
2e0d2f
@@ -32,7 +32,7 @@ import java.util.Map;
2e0d2f
 import java.util.Properties;
2e0d2f
 
2e0d2f
 import org.apache.commons.collections.ExtendedProperties;
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.Template;
2e0d2f
 import org.apache.velocity.app.event.EventCartridge;
2e0d2f
 import org.apache.velocity.app.event.EventHandler;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/VelocimacroFactory.java b/src/java/org/apache/velocity/runtime/VelocimacroFactory.java
2e0d2f
index 8756b66f..70e3d489 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/VelocimacroFactory.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/VelocimacroFactory.java
2e0d2f
@@ -26,7 +26,7 @@ import java.util.Map;
2e0d2f
 import java.util.Vector;
2e0d2f
 import java.util.ArrayList;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.StringUtils;
2e0d2f
+import org.apache.commons.lang3.StringUtils;
2e0d2f
 import org.apache.velocity.Template;
2e0d2f
 import org.apache.velocity.exception.VelocityException;
2e0d2f
 import org.apache.velocity.runtime.directive.Directive;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/directive/Block.java b/src/java/org/apache/velocity/runtime/directive/Block.java
2e0d2f
index f5fdfa85..b136543d 100755
2e0d2f
--- a/src/java/org/apache/velocity/runtime/directive/Block.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/directive/Block.java
2e0d2f
@@ -23,7 +23,7 @@ import java.io.IOException;
2e0d2f
 import java.io.StringWriter;
2e0d2f
 import java.io.Writer;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.context.InternalContextAdapter;
2e0d2f
 import org.apache.velocity.exception.TemplateInitException;
2e0d2f
 import org.apache.velocity.runtime.Renderable;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/directive/RuntimeMacro.java b/src/java/org/apache/velocity/runtime/directive/RuntimeMacro.java
2e0d2f
index 090b5522..d22ac4ed 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/directive/RuntimeMacro.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/directive/RuntimeMacro.java
2e0d2f
@@ -23,7 +23,7 @@ import java.io.IOException;
2e0d2f
 import java.io.Writer;
2e0d2f
 import java.util.List;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.context.InternalContextAdapter;
2e0d2f
 import org.apache.velocity.exception.MethodInvocationException;
2e0d2f
 import org.apache.velocity.exception.ParseErrorException;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/Parser.java b/src/java/org/apache/velocity/runtime/parser/Parser.java
2e0d2f
index 1253381f..b8e7112e 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/Parser.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/Parser.java
2e0d2f
@@ -10,7 +10,7 @@ import org.apache.velocity.runtime.directive.Directive;
2e0d2f
 import org.apache.velocity.runtime.directive.Macro;
2e0d2f
 import org.apache.velocity.runtime.directive.MacroParseException;
2e0d2f
 import org.apache.velocity.util.StringUtils;
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.runtime.RuntimeConstants;
2e0d2f
 
2e0d2f
 /**
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/ParserTokenManager.java b/src/java/org/apache/velocity/runtime/parser/ParserTokenManager.java
2e0d2f
index ce00d99d..9563a1fb 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/ParserTokenManager.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/ParserTokenManager.java
2e0d2f
@@ -9,7 +9,7 @@ import org.apache.velocity.runtime.directive.Directive;
2e0d2f
 import org.apache.velocity.runtime.directive.Macro;
2e0d2f
 import org.apache.velocity.runtime.directive.MacroParseException;
2e0d2f
 import org.apache.velocity.util.StringUtils;
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.runtime.RuntimeConstants;
2e0d2f
 
2e0d2f
 /** Token Manager. */
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/node/ASTDirective.java b/src/java/org/apache/velocity/runtime/parser/node/ASTDirective.java
2e0d2f
index 74727729..8fc59737 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/node/ASTDirective.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/node/ASTDirective.java
2e0d2f
@@ -22,7 +22,7 @@ package org.apache.velocity.runtime.parser.node;
2e0d2f
 import java.io.IOException;
2e0d2f
 import java.io.Writer;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.builder.ToStringBuilder;
2e0d2f
+import org.apache.commons.lang3.builder.ToStringBuilder;
2e0d2f
 import org.apache.velocity.context.InternalContextAdapter;
2e0d2f
 import org.apache.velocity.exception.MethodInvocationException;
2e0d2f
 import org.apache.velocity.exception.ParseErrorException;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/node/ASTMethod.java b/src/java/org/apache/velocity/runtime/parser/node/ASTMethod.java
2e0d2f
index 489429bb..df54dd93 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/node/ASTMethod.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/node/ASTMethod.java
2e0d2f
@@ -21,8 +21,8 @@ package org.apache.velocity.runtime.parser.node;
2e0d2f
 
2e0d2f
 import java.lang.reflect.InvocationTargetException;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.ArrayUtils;
2e0d2f
-import org.apache.commons.lang.StringUtils;
2e0d2f
+import org.apache.commons.lang3.ArrayUtils;
2e0d2f
+import org.apache.commons.lang3.StringUtils;
2e0d2f
 import org.apache.velocity.app.event.EventHandlerUtil;
2e0d2f
 import org.apache.velocity.context.InternalContextAdapter;
2e0d2f
 import org.apache.velocity.exception.MethodInvocationException;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/node/ASTStringLiteral.java b/src/java/org/apache/velocity/runtime/parser/node/ASTStringLiteral.java
2e0d2f
index 2267993c..82cca27a 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/node/ASTStringLiteral.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/node/ASTStringLiteral.java
2e0d2f
@@ -21,7 +21,7 @@ import java.io.IOException;
2e0d2f
 import java.io.StringReader;
2e0d2f
 import java.io.StringWriter;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.context.InternalContextAdapter;
2e0d2f
 import org.apache.velocity.exception.TemplateInitException;
2e0d2f
 import org.apache.velocity.exception.VelocityException;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/node/NodeUtils.java b/src/java/org/apache/velocity/runtime/parser/node/NodeUtils.java
2e0d2f
index 713a86ae..0ac03fbc 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/node/NodeUtils.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/node/NodeUtils.java
2e0d2f
@@ -19,7 +19,7 @@ package org.apache.velocity.runtime.parser.node;
2e0d2f
  * under the License.    
2e0d2f
  */
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.context.Context;
2e0d2f
 import org.apache.velocity.exception.MethodInvocationException;
2e0d2f
 import org.apache.velocity.runtime.parser.ParserConstants;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/node/PropertyExecutor.java b/src/java/org/apache/velocity/runtime/parser/node/PropertyExecutor.java
2e0d2f
index 8c78228e..20d6c185 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/node/PropertyExecutor.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/node/PropertyExecutor.java
2e0d2f
@@ -21,7 +21,7 @@ package org.apache.velocity.runtime.parser.node;
2e0d2f
 
2e0d2f
 import java.lang.reflect.InvocationTargetException;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.StringUtils;
2e0d2f
+import org.apache.commons.lang3.StringUtils;
2e0d2f
 import org.apache.velocity.exception.VelocityException;
2e0d2f
 import org.apache.velocity.runtime.RuntimeLogger;
2e0d2f
 import org.apache.velocity.runtime.log.Log;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/node/SetPropertyExecutor.java b/src/java/org/apache/velocity/runtime/parser/node/SetPropertyExecutor.java
2e0d2f
index 0078d023..80887fad 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/node/SetPropertyExecutor.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/node/SetPropertyExecutor.java
2e0d2f
@@ -21,8 +21,8 @@ package org.apache.velocity.runtime.parser.node;
2e0d2f
 
2e0d2f
 import java.lang.reflect.InvocationTargetException;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.StringUtils;
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.StringUtils;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.exception.VelocityException;
2e0d2f
 import org.apache.velocity.runtime.log.Log;
2e0d2f
 import org.apache.velocity.util.introspection.Introspector;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/parser/node/SimpleNode.java b/src/java/org/apache/velocity/runtime/parser/node/SimpleNode.java
2e0d2f
index 108846f8..6372830f 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/parser/node/SimpleNode.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/parser/node/SimpleNode.java
2e0d2f
@@ -22,8 +22,8 @@ package org.apache.velocity.runtime.parser.node;
2e0d2f
 import java.io.IOException;
2e0d2f
 import java.io.Writer;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.builder.ToStringBuilder;
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.builder.ToStringBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.context.InternalContextAdapter;
2e0d2f
 import org.apache.velocity.exception.MethodInvocationException;
2e0d2f
 import org.apache.velocity.exception.ParseErrorException;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/resource/ResourceManagerImpl.java b/src/java/org/apache/velocity/runtime/resource/ResourceManagerImpl.java
2e0d2f
index 778b42a9..a396e42f 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/resource/ResourceManagerImpl.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/resource/ResourceManagerImpl.java
2e0d2f
@@ -158,7 +158,7 @@ public class ResourceManagerImpl
2e0d2f
 
2e0d2f
         Object cacheObject = null;
2e0d2f
 
2e0d2f
-        if (org.apache.commons.lang.StringUtils.isNotEmpty(cacheClassName))
2e0d2f
+        if (org.apache.commons.lang3.StringUtils.isNotEmpty(cacheClassName))
2e0d2f
         {
2e0d2f
             try
2e0d2f
             {
2e0d2f
@@ -534,7 +534,7 @@ public class ResourceManagerImpl
2e0d2f
              *  this strikes me as bad...
2e0d2f
              */
2e0d2f
 
2e0d2f
-            if (!org.apache.commons.lang.StringUtils.equals(resource.getEncoding(), encoding))
2e0d2f
+            if (!org.apache.commons.lang3.StringUtils.equals(resource.getEncoding(), encoding))
2e0d2f
             {
2e0d2f
                 log.warn("Declared encoding for template '" +
2e0d2f
                              resource.getName() +
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/resource/loader/ClasspathResourceLoader.java b/src/java/org/apache/velocity/runtime/resource/loader/ClasspathResourceLoader.java
2e0d2f
index 52d09a98..bf48aa45 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/resource/loader/ClasspathResourceLoader.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/resource/loader/ClasspathResourceLoader.java
2e0d2f
@@ -22,7 +22,7 @@ package org.apache.velocity.runtime.resource.loader;
2e0d2f
 import java.io.InputStream;
2e0d2f
 
2e0d2f
 import org.apache.commons.collections.ExtendedProperties;
2e0d2f
-import org.apache.commons.lang.StringUtils;
2e0d2f
+import org.apache.commons.lang3.StringUtils;
2e0d2f
 import org.apache.velocity.exception.ResourceNotFoundException;
2e0d2f
 import org.apache.velocity.runtime.resource.Resource;
2e0d2f
 import org.apache.velocity.util.ClassUtils;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.java b/src/java/org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.java
2e0d2f
index f85b6d62..38ec30dc 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.java
2e0d2f
@@ -218,7 +218,7 @@ public class DataSourceResourceLoader extends ResourceLoader
2e0d2f
     public synchronized InputStream getResourceStream(final String name)
2e0d2f
         throws ResourceNotFoundException
2e0d2f
     {
2e0d2f
-        if (org.apache.commons.lang.StringUtils.isEmpty(name))
2e0d2f
+        if (org.apache.commons.lang3.StringUtils.isEmpty(name))
2e0d2f
         {
2e0d2f
             throw new ResourceNotFoundException("DataSourceResourceLoader: Template name was empty or null");
2e0d2f
         }
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/resource/loader/FileResourceLoader.java b/src/java/org/apache/velocity/runtime/resource/loader/FileResourceLoader.java
2e0d2f
index 923274a7..8580caeb 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/resource/loader/FileResourceLoader.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/resource/loader/FileResourceLoader.java
2e0d2f
@@ -118,7 +118,7 @@ public class FileResourceLoader extends ResourceLoader
2e0d2f
         /*
2e0d2f
          * Make sure we have a valid templateName.
2e0d2f
          */
2e0d2f
-        if (org.apache.commons.lang.StringUtils.isEmpty(templateName))
2e0d2f
+        if (org.apache.commons.lang3.StringUtils.isEmpty(templateName))
2e0d2f
         {
2e0d2f
             /*
2e0d2f
              * If we don't get a properly formed templateName then
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/resource/loader/JarResourceLoader.java b/src/java/org/apache/velocity/runtime/resource/loader/JarResourceLoader.java
2e0d2f
index 054d890e..71d6c083 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/resource/loader/JarResourceLoader.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/resource/loader/JarResourceLoader.java
2e0d2f
@@ -195,7 +195,7 @@ public class JarResourceLoader extends ResourceLoader
2e0d2f
     {
2e0d2f
         InputStream results = null;
2e0d2f
 
2e0d2f
-        if (org.apache.commons.lang.StringUtils.isEmpty(source))
2e0d2f
+        if (org.apache.commons.lang3.StringUtils.isEmpty(source))
2e0d2f
         {
2e0d2f
             throw new ResourceNotFoundException("Need to have a resource!");
2e0d2f
         }
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/resource/loader/StringResourceLoader.java b/src/java/org/apache/velocity/runtime/resource/loader/StringResourceLoader.java
2e0d2f
index 245c10b8..86a08b9d 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/resource/loader/StringResourceLoader.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/resource/loader/StringResourceLoader.java
2e0d2f
@@ -26,7 +26,7 @@ import java.io.ByteArrayInputStream;
2e0d2f
 import java.io.InputStream;
2e0d2f
 import java.io.UnsupportedEncodingException;
2e0d2f
 import org.apache.commons.collections.ExtendedProperties;
2e0d2f
-import org.apache.commons.lang.StringUtils;
2e0d2f
+import org.apache.commons.lang3.StringUtils;
2e0d2f
 import org.apache.velocity.exception.ResourceNotFoundException;
2e0d2f
 import org.apache.velocity.exception.VelocityException;
2e0d2f
 import org.apache.velocity.runtime.resource.Resource;
2e0d2f
diff --git a/src/java/org/apache/velocity/runtime/resource/loader/URLResourceLoader.java b/src/java/org/apache/velocity/runtime/resource/loader/URLResourceLoader.java
2e0d2f
index de066367..74ab86a6 100644
2e0d2f
--- a/src/java/org/apache/velocity/runtime/resource/loader/URLResourceLoader.java
2e0d2f
+++ b/src/java/org/apache/velocity/runtime/resource/loader/URLResourceLoader.java
2e0d2f
@@ -26,7 +26,7 @@ import java.net.URL;
2e0d2f
 import java.net.URLConnection;
2e0d2f
 import java.util.HashMap;
2e0d2f
 import org.apache.commons.collections.ExtendedProperties;
2e0d2f
-import org.apache.commons.lang.StringUtils;
2e0d2f
+import org.apache.commons.lang3.StringUtils;
2e0d2f
 import org.apache.velocity.exception.VelocityException;
2e0d2f
 import org.apache.velocity.exception.ResourceNotFoundException;
2e0d2f
 import org.apache.velocity.runtime.resource.Resource;
2e0d2f
diff --git a/src/java/org/apache/velocity/util/introspection/ClassMap.java b/src/java/org/apache/velocity/util/introspection/ClassMap.java
2e0d2f
index 00512892..2e128b7e 100644
2e0d2f
--- a/src/java/org/apache/velocity/util/introspection/ClassMap.java
2e0d2f
+++ b/src/java/org/apache/velocity/util/introspection/ClassMap.java
2e0d2f
@@ -23,7 +23,7 @@ import java.lang.reflect.Method;
2e0d2f
 import java.lang.reflect.Modifier;
2e0d2f
 import java.util.HashMap;
2e0d2f
 import java.util.Map;
2e0d2f
-import org.apache.commons.lang.text.StrBuilder;
2e0d2f
+import org.apache.commons.lang3.text.StrBuilder;
2e0d2f
 import org.apache.velocity.runtime.log.Log;
2e0d2f
 import org.apache.velocity.util.MapFactory;
2e0d2f
 
2e0d2f
diff --git a/src/test/org/apache/velocity/io/UnicodeInputStreamTestCase.java b/src/test/org/apache/velocity/io/UnicodeInputStreamTestCase.java
2e0d2f
index 02499985..4b0b254f 100644
2e0d2f
--- a/src/test/org/apache/velocity/io/UnicodeInputStreamTestCase.java
2e0d2f
+++ b/src/test/org/apache/velocity/io/UnicodeInputStreamTestCase.java
2e0d2f
@@ -27,7 +27,7 @@ import junit.framework.Test;
2e0d2f
 import junit.framework.TestCase;
2e0d2f
 import junit.framework.TestSuite;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.ArrayUtils;
2e0d2f
+import org.apache.commons.lang3.ArrayUtils;
2e0d2f
 
2e0d2f
 
2e0d2f
 /**
2e0d2f
diff --git a/src/test/org/apache/velocity/test/BaseTestCase.java b/src/test/org/apache/velocity/test/BaseTestCase.java
2e0d2f
index 0ea00cbd..798a322b 100644
2e0d2f
--- a/src/test/org/apache/velocity/test/BaseTestCase.java
2e0d2f
+++ b/src/test/org/apache/velocity/test/BaseTestCase.java
2e0d2f
@@ -353,7 +353,7 @@ public abstract class BaseTestCase extends TestCase implements TemplateTestBase
2e0d2f
                 buf.append(baseFile.getPath());
2e0d2f
             }
2e0d2f
 
2e0d2f
-            if (org.apache.commons.lang.StringUtils.isNotEmpty(ext))
2e0d2f
+            if (org.apache.commons.lang3.StringUtils.isNotEmpty(ext))
2e0d2f
             {
2e0d2f
                 buf.append('.').append(ext);
2e0d2f
             }
2e0d2f
diff --git a/src/test/org/apache/velocity/test/MethodCacheKeyTestCase.java b/src/test/org/apache/velocity/test/MethodCacheKeyTestCase.java
2e0d2f
index 77dfc54e..4befc6ef 100644
2e0d2f
--- a/src/test/org/apache/velocity/test/MethodCacheKeyTestCase.java
2e0d2f
+++ b/src/test/org/apache/velocity/test/MethodCacheKeyTestCase.java
2e0d2f
@@ -21,7 +21,7 @@ package org.apache.velocity.test;
2e0d2f
 
2e0d2f
 import junit.framework.TestCase;
2e0d2f
 
2e0d2f
-import org.apache.commons.lang.ArrayUtils;
2e0d2f
+import org.apache.commons.lang3.ArrayUtils;
2e0d2f
 import org.apache.velocity.runtime.parser.node.ASTMethod;
2e0d2f
 
2e0d2f
 /**
2e0d2f
-- 
2e0d2f
2.25.4
2e0d2f