This is an automated email from the ASF dual-hosted git repository.

garydgregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-jexl.git

commit 7bbeb7c888bb48a42ac2f4aa154e3bf974527a00
Author: Gary Gregory <[email protected]>
AuthorDate: Sat Jun 20 14:36:43 2026 +0000

    Clean ups
    
    - Use final
    - Use method references
---
 pom.xml                                            |   2 +-
 .../java/org/apache/commons/jexl3/JxltEngine.java  |   2 +-
 .../commons/jexl3/internal/TemplateEngine.java     |   2 +-
 .../jexl3/internal/TemplateInterpreter.java        |   2 +-
 .../internal/introspection/PermissionsParser.java  |   6 +-
 .../commons/jexl3/scripting/JexlScriptEngine.java  |   4 +-
 .../jexl3/scripting/JexlScriptEngineFactory.java   |   6 +-
 .../org/apache/commons/jexl3/ArithmeticTest.java   |   6 +-
 .../java/org/apache/commons/jexl3/CaptureLog.java  |   2 +-
 .../org/apache/commons/jexl3/ExceptionTest.java    |   8 +-
 .../org/apache/commons/jexl3/Issues100Test.java    |   5 +-
 .../org/apache/commons/jexl3/Issues400Test.java    | 105 ++++++++++-----------
 .../java/org/apache/commons/jexl3/JXLTTest.java    |   2 +-
 .../apache/commons/jexl3/LoggingPermissions.java   |  26 ++---
 .../java/org/apache/commons/jexl3/SwitchTest.java  |   2 +-
 .../apache/commons/jexl3/examples/StreamTest.java  |   4 +-
 .../jexl3/scripting/JexlScriptEngineTest.java      |   2 +-
 src/test/java/org/example/Pair.java                |   6 +-
 18 files changed, 94 insertions(+), 98 deletions(-)

diff --git a/pom.xml b/pom.xml
index f61b4e05..ae235759 100644
--- a/pom.xml
+++ b/pom.xml
@@ -77,7 +77,7 @@
         <commons.bc.version>3.6.2</commons.bc.version>
         <commons.release.version>3.6.3</commons.release.version>
         <commons.release.next>3.6.4</commons.release.next>
-        <commons.rc.version>RC1</commons.rc.version>
+        <commons.rc.version>RC2</commons.rc.version>
         <commons.release.isDistModule>true</commons.release.isDistModule>
         
<commons.distSvnStagingUrl>scm:svn:https://dist.apache.org/repos/dist/dev/commons/${commons.componentid}</commons.distSvnStagingUrl>
     </properties>
diff --git a/src/main/java/org/apache/commons/jexl3/JxltEngine.java 
b/src/main/java/org/apache/commons/jexl3/JxltEngine.java
index c91153dc..052eb9db 100644
--- a/src/main/java/org/apache/commons/jexl3/JxltEngine.java
+++ b/src/main/java/org/apache/commons/jexl3/JxltEngine.java
@@ -321,7 +321,7 @@ public abstract class JxltEngine {
          * @return the prepared version of the template
          * @since 3.6.2
          */
-        default Template prepare(JexlContext context, Object... args) {
+        default Template prepare(final JexlContext context, final Object... 
args) {
             throw new UnsupportedOperationException(
                     "This template implementation does not support prepare 
with arguments. "
                     + "Override this method to provide support.");
diff --git 
a/src/main/java/org/apache/commons/jexl3/internal/TemplateEngine.java 
b/src/main/java/org/apache/commons/jexl3/internal/TemplateEngine.java
index 01e7ffec..bee20ff2 100644
--- a/src/main/java/org/apache/commons/jexl3/internal/TemplateEngine.java
+++ b/src/main/java/org/apache/commons/jexl3/internal/TemplateEngine.java
@@ -1186,7 +1186,7 @@ public final class TemplateEngine extends JxltEngine {
      * @param c the character to test
      * @return {@code true} if the character is ignorable, {@code false} 
otherwise
      */
-    private static boolean isIgnorable(char c) {
+    private static boolean isIgnorable(final char c) {
         return c == '\n' || c == '\r' || c == '\t' || c == '\f';
     }
 
diff --git 
a/src/main/java/org/apache/commons/jexl3/internal/TemplateInterpreter.java 
b/src/main/java/org/apache/commons/jexl3/internal/TemplateInterpreter.java
index 074e90c8..45bea15e 100644
--- a/src/main/java/org/apache/commons/jexl3/internal/TemplateInterpreter.java
+++ b/src/main/java/org/apache/commons/jexl3/internal/TemplateInterpreter.java
@@ -309,7 +309,7 @@ public class TemplateInterpreter extends Interpreter {
         return frame != null && frame.stack != null? frame.stack.clone() : 
null;
     }
 
-    private void restoreStack(Object[] stack) {
+    private void restoreStack(final Object[] stack) {
         if (stack != null) {
             System.arraycopy(stack, 0, frame.stack, 0, stack.length);
         }
diff --git 
a/src/main/java/org/apache/commons/jexl3/internal/introspection/PermissionsParser.java
 
b/src/main/java/org/apache/commons/jexl3/internal/introspection/PermissionsParser.java
index a5631002..3b163df2 100644
--- 
a/src/main/java/org/apache/commons/jexl3/internal/introspection/PermissionsParser.java
+++ 
b/src/main/java/org/apache/commons/jexl3/internal/introspection/PermissionsParser.java
@@ -361,13 +361,13 @@ public class PermissionsParser {
                     //negative = true;
                 }
                 if (c == '{') {
-                    Boolean specified = negative;
+                    final Boolean specified = negative;
                     njpackage = packages.compute(pname,
                         (n, p) -> {
                             // if we haven't specified allow/deny,
                             // keep the existing specification if any, 
otherwise default to deny
-                            boolean deny = specified == null ? !(p instanceof 
Permissions.JexlPackage) : specified;
-                            Map<String, Permissions.NoJexlClass> pkgMap = p == 
null ? null : p.nojexl;
+                            final boolean deny = specified == null ? !(p 
instanceof Permissions.JexlPackage) : specified;
+                            final Map<String, Permissions.NoJexlClass> pkgMap 
= p == null ? null : p.nojexl;
                             return deny
                                 ? new Permissions.NoJexlPackage(pkgMap)
                                 : new Permissions.JexlPackage(pkgMap);
diff --git 
a/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngine.java 
b/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngine.java
index bf875c66..c98114f2 100644
--- a/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngine.java
+++ b/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngine.java
@@ -87,7 +87,7 @@ public class JexlScriptEngine extends AbstractScriptEngine 
implements Compilable
          * For specialization.
          * @param permissions the permissions to use for the engine
          */
-        public Factory(JexlPermissions permissions) {
+        public Factory(final JexlPermissions permissions) {
             super(permissions);
         }
 
@@ -109,7 +109,7 @@ public class JexlScriptEngine extends AbstractScriptEngine 
implements Compilable
          * Sets the shared engine instance.
          * @param engine the engine
          */
-        void setEngine(JexlEngine engine) {
+        void setEngine(final JexlEngine engine) {
             jexl = engine;
         }
     }
diff --git 
a/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngineFactory.java 
b/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngineFactory.java
index f7e5f276..f72be2e2 100644
--- 
a/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngineFactory.java
+++ 
b/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngineFactory.java
@@ -67,7 +67,7 @@ public class JexlScriptEngineFactory implements 
ScriptEngineFactory {
      * <p>Meant to reduce dependency to JEXL for extraordinary use case of 
JSR233.</p>
      * @param jexlPermissions the permissions instance to use or null to use 
the {@link JexlScriptEngineFactory} default
      */
-    public JexlScriptEngineFactory(JexlPermissions jexlPermissions) {
+    public JexlScriptEngineFactory(final JexlPermissions jexlPermissions) {
         permissions = jexlPermissions != null ? jexlPermissions : 
defaultPermissions;
     }
 
@@ -89,7 +89,7 @@ public class JexlScriptEngineFactory implements 
ScriptEngineFactory {
      * @return a new JexlEngine instance
      */
     protected JexlEngine createJexlEngine() {
-        JexlBuilder builder = new JexlBuilder()
+        final JexlBuilder builder = new JexlBuilder()
           .strict(true)
           .safe(false)
           .logger(JexlScriptEngine.LOG)
@@ -104,7 +104,7 @@ public class JexlScriptEngineFactory implements 
ScriptEngineFactory {
                 }
             }
         }
-        JexlPermissions required = new JexlPermissions.ClassPermissions(p, 
JexlScriptEngine.JexlScriptObject.class);
+        final JexlPermissions required = new 
JexlPermissions.ClassPermissions(p, JexlScriptEngine.JexlScriptObject.class);
         builder.permissions(required);
         return builder.create();
     }
diff --git a/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java 
b/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java
index 21b903cc..c2291468 100644
--- a/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java
+++ b/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java
@@ -461,12 +461,12 @@ class ArithmeticTest extends JexlTestCase {
         }
 
         public Object propertyGet(final NamedNodeMap attrs, final String name) 
{
-            Node node  = attrs.getNamedItem(name);
+            final Node node  = attrs.getNamedItem(name);
             return node == null ? JexlEngine.TRY_FAILED : node.getNodeValue();
         }
 
         public Object propertySet(final NamedNodeMap attrs, final String name, 
final Object value) {
-            Node node = attrs.getNamedItem(name);
+            final Node node = attrs.getNamedItem(name);
             if (node == null) {
                 return JexlEngine.TRY_FAILED;
             }
@@ -2262,7 +2262,7 @@ class ArithmeticTest extends JexlTestCase {
 
         // JEXL-161
         final JexlContext jc = new MapContext();
-        Object xmlx = xml.getLastChild();
+        final Object xmlx = xml.getLastChild();
         jc.set("x", xmlx);
         final String y = "456";
         jc.set("y", y);
diff --git a/src/test/java/org/apache/commons/jexl3/CaptureLog.java 
b/src/test/java/org/apache/commons/jexl3/CaptureLog.java
index 1fd370d7..6b45a2c5 100644
--- a/src/test/java/org/apache/commons/jexl3/CaptureLog.java
+++ b/src/test/java/org/apache/commons/jexl3/CaptureLog.java
@@ -53,7 +53,7 @@ public class CaptureLog implements Log {
     public List<String> getCapturedMessages() {
         return captured.stream()
                 .map(a -> a[2])
-                .filter(o -> o instanceof String)
+                .filter(String.class::isInstance)
                 .map(o -> (String) o).collect(Collectors.toList());
     }
 
diff --git a/src/test/java/org/apache/commons/jexl3/ExceptionTest.java 
b/src/test/java/org/apache/commons/jexl3/ExceptionTest.java
index 171dc6d1..a3d5680f 100644
--- a/src/test/java/org/apache/commons/jexl3/ExceptionTest.java
+++ b/src/test/java/org/apache/commons/jexl3/ExceptionTest.java
@@ -207,7 +207,7 @@ class ExceptionTest extends JexlTestCase {
      * @param debug if true/false, debug mode is on/off
      * @param silent if true/false, silent mode is on/off
      */
-    private static void runWrappedEx(boolean debug, boolean silent) {
+    private static void runWrappedEx(final boolean debug, final boolean 
silent) {
         final CaptureLog log = new CaptureLog();
         final JexlBuilder builder = new JexlBuilder().safe(false).strict(true)
                 .logger(log).debug(debug).silent(silent);
@@ -215,7 +215,7 @@ class ExceptionTest extends JexlTestCase {
         final JexlContext jc = new ObjectContext<>(jexl, new ThrowNPE());
         callWrappedEx(debug, silent, log, () -> 
jexl.createExpression("npe()").evaluate(jc));
         callWrappedEx(debug, silent, log, () -> 
jexl.newInstance(ConstructNPE.class));
-        ThrowNPE npe = new ThrowNPE();
+        final ThrowNPE npe = new ThrowNPE();
         callWrappedEx(debug, silent, log, () -> jexl.invokeMethod(npe, "npe"));
         // side effect to set failure in getter coming next
         callWrappedEx(debug, silent, log, () -> {
@@ -231,7 +231,7 @@ class ExceptionTest extends JexlTestCase {
      * @param silent if true/false, silent mode is on/off
      * @param npeCall the NPE throwing call
      */
-    private static void callWrappedEx(boolean debug, boolean silent, 
CaptureLog log, Supplier<Object> npeCall) {
+    private static void callWrappedEx(final boolean debug, final boolean 
silent, final CaptureLog log, final Supplier<Object> npeCall) {
         try {
             npeCall.get();
             if (!silent) {
@@ -239,7 +239,7 @@ class ExceptionTest extends JexlTestCase {
             } else {
                 // in silent mode, ensure a log was captured
                 assertEquals(1, log.count("warn"), "should have 1 warn log");
-                String msg = log.getCapturedMessages().get(0);
+                final String msg = log.getCapturedMessages().get(0);
                 assertEquals(debug, msg.contains("runWrappedEx"), 
"class/method/line?");
                 log.clear();
             }
diff --git a/src/test/java/org/apache/commons/jexl3/Issues100Test.java 
b/src/test/java/org/apache/commons/jexl3/Issues100Test.java
index 0ccc7da1..ac445ead 100644
--- a/src/test/java/org/apache/commons/jexl3/Issues100Test.java
+++ b/src/test/java/org/apache/commons/jexl3/Issues100Test.java
@@ -79,10 +79,7 @@ class Issues100Test extends JexlTestCase {
         }
 
         public Object and(final String lhs, final String rhs) {
-            if (rhs.isEmpty()) {
-                return "";
-            }
-            if (lhs.isEmpty()) {
+            if (rhs.isEmpty() || lhs.isEmpty()) {
                 return "";
             }
             return lhs + rhs;
diff --git a/src/test/java/org/apache/commons/jexl3/Issues400Test.java 
b/src/test/java/org/apache/commons/jexl3/Issues400Test.java
index 96dd483c..d57805b5 100644
--- a/src/test/java/org/apache/commons/jexl3/Issues400Test.java
+++ b/src/test/java/org/apache/commons/jexl3/Issues400Test.java
@@ -827,7 +827,7 @@ public class Issues400Test {
         final JexlScript script = jexl.createScript(src, "a", "b");
         final Object result = script.execute(null, "a", "b");
         assertEquals("a\n?= ba\n?== b", result);
-        String[] locals = script.getLocalVariables();
+        final String[] locals = script.getLocalVariables();
         assertArrayEquals(new String[]{"c", "foo"}, locals);
         final String TEST447 = "src/test/scripts/test447.jexl";
         final File src447 = new File(TEST447);
@@ -842,12 +842,11 @@ public class Issues400Test {
 
     public static class BrkContext extends MapContext {
         public BrkContext() {
-            super();
             set("SYSTEM", System.class);
             set("UNRESTRICTED", UNRESTRICTED);
         }
 
-        public static Object brk(Object debug) {
+        public static Object brk(final Object debug) {
             return debug;
         }
 
@@ -855,13 +854,13 @@ public class Issues400Test {
 
     @Test
     void test450a() {
-        JexlEngine jexl0 = new 
JexlBuilder().silent(false).permissions(JexlPermissions.RESTRICTED).create();
+        final JexlEngine jexl0 = new 
JexlBuilder().silent(false).permissions(JexlPermissions.RESTRICTED).create();
         assertThrows(JexlException.Method.class,
             () -> 
jexl0.newInstance("org.apache.commons.jexl3.internal.introspection.Uberspect", 
null, null),
             "should not be able to create Uberspect with RESTRICTED");
-        JexlPermissions perm = new JexlPermissions.ClassPermissions(
+        final JexlPermissions perm = new JexlPermissions.ClassPermissions(
             org.apache.commons.jexl3.internal.introspection.Uberspect.class);
-        JexlEngine jexl1 = new 
JexlBuilder().silent(false).permissions(perm).create();
+        final JexlEngine jexl1 = new 
JexlBuilder().silent(false).permissions(perm).create();
         assertNotNull(jexl1.newInstance(
             "org.apache.commons.jexl3.internal.introspection.Uberspect", null, 
null),
             "should able to create Uberspect with Uberspect permission");
@@ -874,13 +873,13 @@ public class Issues400Test {
         assertThrows(JexlException.Method.class, () -> 
run450b(JexlPermissions.RESTRICTED),
             "should not be able to load System with RESTRICTED");
         // can load System.exit with UNRESTRICTED
-        Method exitMethod = java.lang.System.class.getMethod("exit", 
int.class);
+        final Method exitMethod = java.lang.System.class.getMethod("exit", 
int.class);
         assertTrue(UNRESTRICTED.allow(exitMethod));
         assertFalse(RESTRICTED.allow(exitMethod));
         assertEquals(java.lang.System.class, run450b(UNRESTRICTED));
         // need to explicitly allow Uberspect and the current class loader to 
load System
-        Class<? extends ClassLoader> cloader = 
getClass().getClassLoader().getClass();
-        JexlPermissions perm = new JexlPermissions.ClassPermissions(
+        final Class<? extends ClassLoader> cloader = 
getClass().getClassLoader().getClass();
+        final JexlPermissions perm = new JexlPermissions.ClassPermissions(
             getClass().getClassLoader().getClass(),
             org.apache.commons.jexl3.internal.introspection.Uberspect.class);
         assertTrue(perm.allow(cloader), "should be able to access 
ClassLoader");
@@ -888,11 +887,11 @@ public class Issues400Test {
         assertEquals(java.lang.System.class, run450b(perm));
     }
 
-    private static Object run450b(JexlPermissions perm) {
-        JexlEngine jexl = new 
JexlBuilder().safe(false).strict(true).silent(false).permissions(perm).create();
-        String uscript = 
"new('org.apache.commons.jexl3.internal.introspection.Uberspect', "
+    private static Object run450b(final JexlPermissions perm) {
+        final JexlEngine jexl = new 
JexlBuilder().safe(false).strict(true).silent(false).permissions(perm).create();
+        final String uscript = 
"new('org.apache.commons.jexl3.internal.introspection.Uberspect', "
             + "null, null, 
perm).getClassLoader().loadClass('java.lang.System')";
-        JexlScript u0 = jexl.createScript(uscript, "perm");
+        final JexlScript u0 = jexl.createScript(uscript, "perm");
         return u0.execute(null, perm);
     }
 
@@ -902,7 +901,7 @@ public class Issues400Test {
         assertNotNull(run450c(UNRESTRICTED));
         // need explicit permissions to ClassPermissions and Uberspect to 
reach and invoke
         // System::currentTimeMillis
-        JexlPermissions perm = new JexlPermissions.ClassPermissions(
+        final JexlPermissions perm = new JexlPermissions.ClassPermissions(
             getClass().getClassLoader().getClass(),
             JexlPermissions.ClassPermissions.class,
             org.apache.commons.jexl3.internal.introspection.Uberspect.class,
@@ -914,9 +913,9 @@ public class Issues400Test {
             "should not be able to load System with RESTRICTED");
     }
 
-    private static Object run450c(JexlPermissions perm) {
-        JexlBuilder builder = new 
JexlBuilder().silent(false).permissions(perm);
-        Object result = new TemplateEngine(new Engine32(builder), false, 2, 
'$', '#')
+    private static Object run450c(final JexlPermissions perm) {
+        final JexlBuilder builder = new 
JexlBuilder().silent(false).permissions(perm);
+        final Object result = new TemplateEngine(new Engine32(builder), false, 
2, '$', '#')
             .createExpression(
                 "${x = new 
('org.apache.commons.jexl3.internal.introspection.Uberspect', "
                 + "null, null, UNRESTRICTED);"
@@ -930,8 +929,8 @@ public class Issues400Test {
 
     @Test
     void test450() throws Exception {
-        JexlPermissions perms =  Engine33.createPermissions();
-        Class<? extends ClassLoader> cl = 
Issues400Test.class.getClassLoader().getClass();
+        final JexlPermissions perms =  Engine33.createPermissions();
+        final Class<? extends ClassLoader> cl = 
Issues400Test.class.getClassLoader().getClass();
         assertTrue(perms.allow(cl, cl.getMethod("loadClass", String.class)),
             "should be able to access ClassLoader::loadClass with specific 
permissions");
         assertNotNull(run450(JexlPermissions.UNRESTRICTED),
@@ -949,7 +948,7 @@ public class Issues400Test {
             this(createBuilder());
         }
 
-        public Engine33(JexlBuilder builder) {
+        public Engine33(final JexlBuilder builder) {
             super(builder);
         }
 
@@ -964,15 +963,15 @@ public class Issues400Test {
         }
 
         static JexlBuilder createBuilder() {
-            JexlPermissions perm = createPermissions();
+            final JexlPermissions perm = createPermissions();
             return new 
JexlBuilder().safe(false).silent(false).permissions(perm);
         }
     }
 
-    private static Object run450(JexlPermissions perm) {
-        JexlEngine jexl = new 
JexlBuilder().silent(false).strict(true).safe(false)
+    private static Object run450(final JexlPermissions perm) {
+        final JexlEngine jexl = new 
JexlBuilder().silent(false).strict(true).safe(false)
             .permissions(perm).create();
-        String script = 
"new('org.apache.commons.jexl3.internal.TemplateEngine',"
+        final String script = 
"new('org.apache.commons.jexl3.internal.TemplateEngine',"
             + 
"new('org.apache.commons.jexl3.Issues400Test$Engine33'),false,256,"
             + "'$'.charAt(0),'#'.charAt(0))"
             + ".createExpression("
@@ -987,11 +986,11 @@ public class Issues400Test {
 
     @Test
     void test451() throws NoSuchMethodException {
-        JexlEngine jexl = new JexlBuilder().create();
+        final JexlEngine jexl = new JexlBuilder().create();
         assertEquals("42", jexl.createScript("o.toString()", 
"o").execute(null, "42"));
-        JexlPermissions perms = RESTRICTED.compose("java.lang { +Class { 
getSimpleName(); } }");
+        final JexlPermissions perms = RESTRICTED.compose("java.lang { +Class { 
getSimpleName(); } }");
         assertTrue(perms.allow(String.class.getMethod("toString")));
-        JexlSandbox sandbox = new JexlSandbox(false, true);
+        final JexlSandbox sandbox = new JexlSandbox(false, true);
         sandbox.permissions(Object.class.getName(), true, true, false, false);
         sandbox.allow(String.class.getName()).execute("toString");
         final JexlEngine jexl451 = new 
JexlBuilder().safe(false).silent(false).permissions(perms).sandbox(sandbox).create();
@@ -1011,20 +1010,20 @@ public class Issues400Test {
     @Test
     void testIssue455a() {
         final JexlEngine jexl = new JexlBuilder().create();
-        String code = "name -> `${name +\n\t\f\r name}`";
-        JexlScript script = jexl.createScript(code);
-        Object o = script.execute(null, "Hello");
-        String ctl = "HelloHello";
+        final String code = "name -> `${name +\n\t\f\r name}`";
+        final JexlScript script = jexl.createScript(code);
+        final Object o = script.execute(null, "Hello");
+        final String ctl = "HelloHello";
         assertEquals(ctl, o);
     }
 
     @Test
     void testIssue455b() {
         final JexlEngine jexl = new JexlBuilder().create();
-        String code = "name -> `${name}\n${name}`;";
-        JexlScript script = jexl.createScript(code);
-        Object o = script.execute(null, "Hello");
-        String ctl = "Hello\nHello";
+        final String code = "name -> `${name}\n${name}`;";
+        final JexlScript script = jexl.createScript(code);
+        final Object o = script.execute(null, "Hello");
+        final String ctl = "Hello\nHello";
         assertEquals(ctl, o);
     }
 
@@ -1044,10 +1043,10 @@ public class Issues400Test {
     void testIssue455d() {
         final JexlEngine jexl = new JexlBuilder().create();
         // 'ref' contains 'greeting' which is the name of the variable to 
expand
-        String code = "`#{${\nref\t}}\n#{${\rref\f}}`;";
-        JexlScript script = jexl.createScript(code, "ref", "greeting");
-        Object o = script.execute(null, "greeting", "Hello");
-        String ctl = "Hello\nHello";
+        final String code = "`#{${\nref\t}}\n#{${\rref\f}}`;";
+        final JexlScript script = jexl.createScript(code, "ref", "greeting");
+        final Object o = script.execute(null, "greeting", "Hello");
+        final String ctl = "Hello\nHello";
         assertEquals(ctl, o);
     }
 
@@ -1121,7 +1120,7 @@ public class Issues400Test {
     @Test
     void testIssue456d() {
         // add a '$$' global context variable
-        JexlContext ctxt = new MapContext();
+        final JexlContext ctxt = new MapContext();
         ctxt.set("$$", "");
         final JexlFeatures features = 
JexlFeatures.createDefault().ignoreTemplatePrefix(true);
         assertNotNull(run456(
@@ -1129,7 +1128,7 @@ public class Issues400Test {
             features, ctxt));
     }
 
-    JxltEngine run456(Function<JexlFeatures, JexlEngine> engineFactory, 
JexlFeatures features, JexlContext ctxt) {
+    JxltEngine run456(final Function<JexlFeatures, JexlEngine> engineFactory, 
final JexlFeatures features, final JexlContext ctxt) {
         final JexlEngine jexl = engineFactory.apply(features);
         final JxltEngine jxlt = jexl.createJxltEngine();
         // creation/parse is OK
@@ -1149,7 +1148,7 @@ public class Issues400Test {
         try {
             jxlt.createTemplate("$$ var foo = 'foo';  if (true) { var foo = 
'bar'; var err =&; }");
             fail("should have thrown a parsing error in '&'");
-        } catch (JexlException xjexl) {
+        } catch (final JexlException xjexl) {
             // parsing error in '&'
             assertTrue(xjexl.getMessage().contains("&"));
         }
@@ -1170,7 +1169,7 @@ public class Issues400Test {
         try {
             jxlt.createTemplate("$$ var err =&;");
             fail("should have thrown a parsing error in '&'");
-        } catch (JexlException xjexl) {
+        } catch (final JexlException xjexl) {
             // parsing error in '&'
             assertTrue(xjexl.getMessage().contains("&"));
         }
@@ -1186,38 +1185,38 @@ public class Issues400Test {
 
     @Test
     void test459() {
-        CaptureLog capture = new CaptureLog("test459");
+        final CaptureLog capture = new CaptureLog("test459");
         final JexlBuilder builder = new 
JexlBuilder().logger(capture).safe(true).strict(false).silent(true);
         final JexlEngine jexl = builder.create();
-        Object[] expected = { true, true, 0, 0 };
-        String[] expressions = {
+        final Object[] expected = { true, true, 0, 0 };
+        final String[] expressions = {
           "empty('aaa'.substring(400,500))",
           "empty('aaa'.substring(-1, 2))",
           "size('aaa'.substring(400,500))",
           "size('aaa'.substring(-1, 2))",
         };
         for (int i = 0; i < expressions.length; ++i) {
-            String expr = expressions[i];
-            Object control = expected[i];
+            final String expr = expressions[i];
+            final Object control = expected[i];
             capture.clear();
-            JexlScript script = jexl.createScript(expr);
-            Object result = script.execute(null);
+            final JexlScript script = jexl.createScript(expr);
+            final Object result = script.execute(null);
             assertEquals(control, result);
-            List<String> errors = capture.getCapturedMessages();
+            final List<String> errors = capture.getCapturedMessages();
             assertEquals(1, capture.count("warn"));
             assertTrue(errors.stream().anyMatch(error -> 
error.contains("substring")));
         }
     }
 
     public static class Namespace460 {
-        public static int func(int i) {
+        public static int func(final int i) {
             return i * 42;
         }
     }
 
     @Test
     void test460() {
-        JexlFeatures f = 
JexlFeatures.createDefault().namespaceIdentifier(true);
+        final JexlFeatures f = 
JexlFeatures.createDefault().namespaceIdentifier(true);
         final JexlEngine jexl = new JexlBuilder()
           .namespaces(Collections.singletonMap("z", Namespace460.class))
           .features(f)
diff --git a/src/test/java/org/apache/commons/jexl3/JXLTTest.java 
b/src/test/java/org/apache/commons/jexl3/JXLTTest.java
index 803d1207..c384b523 100644
--- a/src/test/java/org/apache/commons/jexl3/JXLTTest.java
+++ b/src/test/java/org/apache/commons/jexl3/JXLTTest.java
@@ -148,7 +148,7 @@ class JXLTTest extends JexlTestCase {
    public static List<JexlBuilder> engines() {
        final JexlFeatures f = new JexlFeatures();
        f.lexical(true).lexicalShade(true);
-       JexlPermissions permissions = 
JexlPermissions.RESTRICTED.compose("org.apache.commons.jexl3 +{ JXLTTest{} }");
+       final JexlPermissions permissions = 
JexlPermissions.RESTRICTED.compose("org.apache.commons.jexl3 +{ JXLTTest{} }");
       return Arrays.asList(
               new 
JexlBuilder().permissions(permissions).silent(false).lexical(true).lexicalShade(true).cache(128).strict(true),
               new 
JexlBuilder().permissions(permissions).features(f).silent(false).cache(128).strict(true),
diff --git a/src/test/java/org/apache/commons/jexl3/LoggingPermissions.java 
b/src/test/java/org/apache/commons/jexl3/LoggingPermissions.java
index b04d66c4..4c5f064d 100644
--- a/src/test/java/org/apache/commons/jexl3/LoggingPermissions.java
+++ b/src/test/java/org/apache/commons/jexl3/LoggingPermissions.java
@@ -35,21 +35,21 @@ public class LoggingPermissions extends 
JexlPermissions.Delegate {
      *
      * @param delegate the delegate.
      */
-    public LoggingPermissions(JexlPermissions delegate) {
+    public LoggingPermissions(final JexlPermissions delegate) {
         super(delegate);
     }
 
     @Override
-    public boolean allow(Class<?> clazz) {
-        boolean allowed = super.allow(clazz);
+    public boolean allow(final Class<?> clazz) {
+        final boolean allowed = super.allow(clazz);
         logger.info(String.format("Class %s is %s",
             clazz.getCanonicalName(), allowed ? "allowed" : "denied"));
         return allowed;
     }
 
     @Override
-    public boolean allow(Constructor<?> ctor) {
-        boolean allowed = super.allow(ctor);
+    public boolean allow(final Constructor<?> ctor) {
+        final boolean allowed = super.allow(ctor);
         logger.info(String.format("Constructor %s.%s() is %s",
             ctor.getDeclaringClass().getCanonicalName(), ctor.getName(),
             allowed ? "allowed" : "denied"));
@@ -57,8 +57,8 @@ public class LoggingPermissions extends 
JexlPermissions.Delegate {
     }
 
     @Override
-    public boolean allow(Field field) {
-        boolean allowed = super.allow(field);
+    public boolean allow(final Field field) {
+        final boolean allowed = super.allow(field);
         logger.info(String.format("Field %s.%s is %s",
             field.getDeclaringClass().getCanonicalName(), field.getName(),
             allowed ? "allowed" : "denied"));
@@ -66,8 +66,8 @@ public class LoggingPermissions extends 
JexlPermissions.Delegate {
     }
 
     @Override
-    public boolean allow(Class<?> clazz, Field field) {
-        boolean allowed = super.allow(clazz, field);
+    public boolean allow(final Class<?> clazz, final Field field) {
+        final boolean allowed = super.allow(clazz, field);
         logger.info(String.format("Field %s.%s is %s for class %s",
             field.getDeclaringClass().getCanonicalName(), field.getName(),
             allowed ? "allowed" : "denied", clazz.getCanonicalName()));
@@ -75,8 +75,8 @@ public class LoggingPermissions extends 
JexlPermissions.Delegate {
     }
 
     @Override
-    public boolean allow(Method method) {
-        boolean allowed = super.allow(method);
+    public boolean allow(final Method method) {
+        final boolean allowed = super.allow(method);
         logger.info(String.format("Method %s.%s() is %s",
             method.getDeclaringClass().getCanonicalName(), method.getName(),
             allowed ? "allowed" : "denied"));
@@ -84,8 +84,8 @@ public class LoggingPermissions extends 
JexlPermissions.Delegate {
     }
 
     @Override
-    public boolean allow(Class<?> clazz, Method method) {
-        boolean allowed = super.allow(clazz, method);
+    public boolean allow(final Class<?> clazz, final Method method) {
+        final boolean allowed = super.allow(clazz, method);
         logger.info(String.format("Method %s.%s() is %s for class %s",
             method.getDeclaringClass().getCanonicalName(), method.getName(),
             allowed ? "allowed" : "denied", clazz.getCanonicalName()));
diff --git a/src/test/java/org/apache/commons/jexl3/SwitchTest.java 
b/src/test/java/org/apache/commons/jexl3/SwitchTest.java
index 3217da58..e310c026 100644
--- a/src/test/java/org/apache/commons/jexl3/SwitchTest.java
+++ b/src/test/java/org/apache/commons/jexl3/SwitchTest.java
@@ -261,7 +261,7 @@ public class SwitchTest extends JexlTestCase {
 
     @Test
     void testTryCatchFinally() {
-        JexlEngine jexl = new JexlBuilder().create();
+        final JexlEngine jexl = new JexlBuilder().create();
         final String src = "try { return 42 } catch(const xerror){} finally { 
return 169 }";
         final JexlScript script = jexl.createScript(src);
         assertNotNull(script);
diff --git a/src/test/java/org/apache/commons/jexl3/examples/StreamTest.java 
b/src/test/java/org/apache/commons/jexl3/examples/StreamTest.java
index 810c941e..fd9c58f3 100644
--- a/src/test/java/org/apache/commons/jexl3/examples/StreamTest.java
+++ b/src/test/java/org/apache/commons/jexl3/examples/StreamTest.java
@@ -138,7 +138,7 @@ public class StreamTest {
     void testURICollection() throws Exception {
        Assertions.assertTrue(jexlPermissions.allow(java.net.URI.class));
        
Assertions.assertTrue(jexlPermissions.allow(java.util.stream.Stream.class));
-       for (Method m : Arrays.stream(Stream.class.getMethods()).filter(m -> 
m.getName().equals("filter")).collect(Collectors.toSet())) {
+       for (final Method m : Arrays.stream(Stream.class.getMethods()).filter(m 
-> m.getName().equals("filter")).collect(Collectors.toSet())) {
             Assertions.assertTrue(jexlPermissions.allow(m));
         }
         // A collection map/filter aware context
@@ -177,7 +177,7 @@ public class StreamTest {
 
     @Test
     void testURIStream() throws Exception {
-        
Assertions.assertTrue(jexlPermissions.allow(StreamContext.class.getMethod("filter",
 new Class[]{Stream.class, JexlScript.class})));
+        
Assertions.assertTrue(jexlPermissions.allow(StreamContext.class.getMethod("filter",
 Stream.class, JexlScript.class)));
 
         // Assume a collection of uris need to be processed and transformed to 
be simplified ;
         // we want only http/https ones, only the host part and using a https 
scheme
diff --git 
a/src/test/java/org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java 
b/src/test/java/org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java
index 5b60b3ac..8c9e9faf 100644
--- a/src/test/java/org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java
+++ b/src/test/java/org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java
@@ -145,7 +145,7 @@ class JexlScriptEngineTest {
 
     @Test
     void testErrors() throws Exception {
-        JexlPermissions permissions = new 
JexlPermissions.ClassPermissions(Errors.class);
+        final JexlPermissions permissions = new 
JexlPermissions.ClassPermissions(Errors.class);
         JexlScriptEngineFactory.setDefaultPermissions(permissions);
         final ScriptEngineManager manager = new ScriptEngineManager();
         final JexlScriptEngine engine = (JexlScriptEngine) 
manager.getEngineByName("JEXL");
diff --git a/src/test/java/org/example/Pair.java 
b/src/test/java/org/example/Pair.java
index ae690b48..d21f7629 100644
--- a/src/test/java/org/example/Pair.java
+++ b/src/test/java/org/example/Pair.java
@@ -23,16 +23,16 @@ public class Pair {
   public Object cdr;
 
   @NoJexl
-  public Pair(Object car, Object cdr) {
+  public Pair(final Object car, final Object cdr) {
     this.car = car;
     this.cdr = cdr;
   }
 
-  public static Pair cons(Number car, Number cdr) {
+  public static Pair cons(final Number car, final Number cdr) {
     return new Pair(car, cdr);
   }
 
-  public static Pair cons(Object car, Object cdr) {
+  public static Pair cons(final Object car, final Object cdr) {
     return new Pair(car, cdr);
   }
 }


Reply via email to