SLING-12730 apply spotless formatting
diff --git a/pom.xml b/pom.xml
index fbe22d3..0db265e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -37,30 +37,15 @@
     <scm>
         <connection>scm:git:https://gitbox.apache.org/repos/asf/sling-org-apache-sling-scripting-javascript.git</connection>
         <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/sling-org-apache-sling-scripting-javascript.git</developerConnection>
+        <tag>HEAD</tag>
         <url>https://github.com/apache/sling-org-apache-sling-scripting-javascript.git</url>
-      <tag>HEAD</tag>
-  </scm>
+    </scm>
 
     <properties>
         <rhino.version>1.7.7.1_1</rhino.version>
         <sling.java.version>8</sling.java.version>
     </properties>
 
-    <reporting>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-javadoc-plugin</artifactId>
-                <configuration>
-                    <!-- No javadocs -->
-                    <excludePackageNames>
-                        org.apache.sling.scripting.javascript
-                    </excludePackageNames>
-                </configuration>
-            </plugin>
-        </plugins>
-    </reporting>
-
     <dependencyManagement>
         <dependencies>
             <dependency>
@@ -207,9 +192,9 @@
         </dependency>
         <dependency>
             <groupId>org.apache.jackrabbit</groupId>
-                <artifactId>oak-jackrabbit-api</artifactId>
-                <version>1.72.0</version>
-                <scope>test</scope>
+            <artifactId>oak-jackrabbit-api</artifactId>
+            <version>1.72.0</version>
+            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.jackrabbit</groupId>
@@ -220,8 +205,21 @@
         <dependency>
             <groupId>org.apache.jackrabbit</groupId>
             <artifactId>jackrabbit-core</artifactId>
-            <version>2.19.6 </version>
+            <version>2.19.6</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <!-- No javadocs -->
+                    <excludePackageNames>org.apache.sling.scripting.javascript</excludePackageNames>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
 </project>
diff --git a/src/main/java/org/apache/sling/scripting/javascript/SlingWrapper.java b/src/main/java/org/apache/sling/scripting/javascript/SlingWrapper.java
index e2899f4..23b0743 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/SlingWrapper.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/SlingWrapper.java
@@ -29,12 +29,11 @@
      * @return the class name
      */
     String getClassName();
-    
+
     /**
      * The list of Java classes wrapped by this wrapper.
      *
      * @return the wrapped classes
      */
-    Class<?> [] getWrappedClasses();
-    
-}
\ No newline at end of file
+    Class<?>[] getWrappedClasses();
+}
diff --git a/src/main/java/org/apache/sling/scripting/javascript/helper/ExportsObject.java b/src/main/java/org/apache/sling/scripting/javascript/helper/ExportsObject.java
index 36dc935..b48b816 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/helper/ExportsObject.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/helper/ExportsObject.java
@@ -26,7 +26,7 @@
     private static final long serialVersionUID = 7608182741100799506L;
 
     public ExportsObject(Scriptable parent) {
-		this.setParentScope(parent);
-		this.setPrototype(getObjectPrototype(parent));
-	}
+        this.setParentScope(parent);
+        this.setPrototype(getObjectPrototype(parent));
+    }
 }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/helper/ModuleObject.java b/src/main/java/org/apache/sling/scripting/javascript/helper/ModuleObject.java
index 0ad0db6..ce68513 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/helper/ModuleObject.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/helper/ModuleObject.java
@@ -27,17 +27,17 @@
 
     private final ModuleScope module;
 
-        ModuleObject(ModuleScope parent) {
-            setParentScope(parent);
-            setPrototype(getObjectPrototype(parent));
-            this.module = parent;
-        }
+    ModuleObject(ModuleScope parent) {
+        setParentScope(parent);
+        setPrototype(getObjectPrototype(parent));
+        this.module = parent;
+    }
 
-        @Override
-        protected Object equivalentValues(Object value) {
-            if (value instanceof String) {
-                return this.module.getModuleName().equals(value) ? Boolean.TRUE : Boolean.FALSE;
-            }
-            return NOT_FOUND;
+    @Override
+    protected Object equivalentValues(Object value) {
+        if (value instanceof String) {
+            return this.module.getModuleName().equals(value) ? Boolean.TRUE : Boolean.FALSE;
         }
+        return NOT_FOUND;
+    }
 }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/helper/ModuleScope.java b/src/main/java/org/apache/sling/scripting/javascript/helper/ModuleScope.java
index f6d62f2..fd6135f 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/helper/ModuleScope.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/helper/ModuleScope.java
@@ -27,33 +27,33 @@
     private static final long serialVersionUID = -6063613037620927512L;
 
     private ExportsObject exports;
-	private Scriptable module;
-	private String name;
+    private Scriptable module;
+    private String name;
 
-	public ModuleScope(Scriptable prototype, String moduleName) {
-		this.setParentScope(null);
-		this.setPrototype(prototype);
-		this.activatePrototypeMap(3);
+    public ModuleScope(Scriptable prototype, String moduleName) {
+        this.setParentScope(null);
+        this.setPrototype(prototype);
+        this.activatePrototypeMap(3);
 
-		this.name = moduleName;
+        this.name = moduleName;
 
-		this.reset();
-	}
+        this.reset();
+    }
 
-	public Scriptable getExports() {
-		return this.exports = (ExportsObject) get("exports", this);
-	}
+    public Scriptable getExports() {
+        return this.exports = (ExportsObject) get("exports", this);
+    }
 
-	public void reset() {
-		this.module = new ModuleObject(this);
-		int attr = READONLY | PERMANENT;
+    public void reset() {
+        this.module = new ModuleObject(this);
+        int attr = READONLY | PERMANENT;
         ScriptableObject.defineProperty(this.module, "id", this.getModuleName(), attr);
 
-		this.exports = new ExportsObject(this);
-		this.defineProperty("exports", this.exports, DONTENUM);
-	}
+        this.exports = new ExportsObject(this);
+        this.defineProperty("exports", this.exports, DONTENUM);
+    }
 
-	public String getModuleName() {
-		return this.name;
-	}
+    public String getModuleName() {
+        return this.name;
+    }
 }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingContext.java b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingContext.java
index f06c4cf..3a119c9 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingContext.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingContext.java
@@ -30,15 +30,14 @@
 public class SlingContext extends Context {
 
     @Override
-    public ScriptableObject initStandardObjects(ScriptableObject scope,
-            boolean sealed) {
+    public ScriptableObject initStandardObjects(ScriptableObject scope, boolean sealed) {
         ScriptableObject rootScope = super.initStandardObjects(scope, sealed);
 
         // prepare the ImporterToplevel host object because it will be
         // used as top level scope for the RhinoJavaScriptEngine but is
         // not initialized with the rest of the standard objects
         ImporterTopLevel.init(this, rootScope, sealed);
-        
+
         // add Sling global objects
         SlingGlobal.init(rootScope, sealed);
 
diff --git a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingContextFactory.java b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingContextFactory.java
index 0ea3c47..82e2bdd 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingContextFactory.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingContextFactory.java
@@ -51,8 +51,8 @@
     public static void setup(ScopeProvider sp, int languageVersion) {
         // TODO what do we do in the other case? debugger won't work
         if (!hasExplicitGlobal()) {
-            initGlobal(new SlingContextFactory(sp,
-                    Context.isValidLanguageVersion(languageVersion) ? languageVersion : Context.VERSION_DEFAULT));
+            initGlobal(new SlingContextFactory(
+                    sp, Context.isValidLanguageVersion(languageVersion) ? languageVersion : Context.VERSION_DEFAULT));
         }
     }
 
@@ -72,7 +72,7 @@
     private void dispose() {
         // ensure the debugger is closed
         exitDebugger();
-        
+
         // reset the context factory class for future use
         ContextFactory newGlobal = new ContextFactory();
         setField(newGlobal, "hasCustomGlobal", Boolean.FALSE);
@@ -109,14 +109,12 @@
         if (isDebugging()) {
             try {
                 if (debugger == null) {
-                    debugger = new SlingRhinoDebugger(
-                        getClass().getSimpleName());
+                    debugger = new SlingRhinoDebugger(getClass().getSimpleName());
                     debugger.setScopeProvider(scopeProvider);
                     debugger.attachTo(this);
                 }
             } catch (Exception e) {
-                log.warn("initDebugger: Failed setting up the Rhino debugger",
-                    e);
+                log.warn("initDebugger: Failed setting up the Rhino debugger", e);
             }
         }
     }
@@ -129,7 +127,7 @@
             debugger = null;
         }
     }
-    
+
     void debuggerStopped() {
         debugger = null;
     }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingGlobal.java b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingGlobal.java
index 9609cf6..cb945e6 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingGlobal.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingGlobal.java
@@ -63,300 +63,278 @@
  * </dl>
  */
 public class SlingGlobal implements Serializable, IdFunctionCall {
-	static final long serialVersionUID = 6080442165748707530L;
+    static final long serialVersionUID = 6080442165748707530L;
 
-	private static final Object FTAG = new Object();
+    private static final Object FTAG = new Object();
 
-	private static final int Id_load = 1;
+    private static final int Id_load = 1;
 
-	private static final int Id_print = 2;
+    private static final int Id_print = 2;
 
-	private static final int Id_require = 3;
+    private static final int Id_require = 3;
 
-	private static final int LAST_SCOPE_FUNCTION_ID = 3;
+    private static final int LAST_SCOPE_FUNCTION_ID = 3;
 
-	/** default log */
-	private static final Logger defaultLog = LoggerFactory.getLogger(SlingGlobal.class);
+    /** default log */
+    private static final Logger defaultLog = LoggerFactory.getLogger(SlingGlobal.class);
 
-	public static void init(Scriptable scope, boolean sealed) {
-		SlingGlobal obj = new SlingGlobal();
+    public static void init(Scriptable scope, boolean sealed) {
+        SlingGlobal obj = new SlingGlobal();
 
-		for (int id = 1; id <= LAST_SCOPE_FUNCTION_ID; ++id) {
-			String name;
-			int arity = 1;
-			switch (id) {
-			case Id_load:
-				name = "load";
-				break;
-			case Id_print:
-				name = "print";
-				break;
-			case Id_require:
-				name = "require";
-				break;
-			default:
-				throw Kit.codeBug();
-			}
-			IdFunctionObject f = new IdFunctionObject(obj, FTAG, id, name,
-					arity, scope);
-			if (sealed) {
-				f.sealObject();
-			}
-			f.exportAsScopeProperty();
-		}
+        for (int id = 1; id <= LAST_SCOPE_FUNCTION_ID; ++id) {
+            String name;
+            int arity = 1;
+            switch (id) {
+                case Id_load:
+                    name = "load";
+                    break;
+                case Id_print:
+                    name = "print";
+                    break;
+                case Id_require:
+                    name = "require";
+                    break;
+                default:
+                    throw Kit.codeBug();
+            }
+            IdFunctionObject f = new IdFunctionObject(obj, FTAG, id, name, arity, scope);
+            if (sealed) {
+                f.sealObject();
+            }
+            f.exportAsScopeProperty();
+        }
+    }
 
-	}
+    public Object execIdCall(IdFunctionObject f, Context cx, Scriptable scope, Scriptable thisObj, Object[] args) {
+        if (f.hasTag(FTAG)) {
+            int methodId = f.methodId();
+            switch (methodId) {
+                case Id_load: {
+                    load(cx, thisObj, args);
+                    return Context.getUndefinedValue();
+                }
 
-	public Object execIdCall(IdFunctionObject f, Context cx, Scriptable scope,
-			Scriptable thisObj, Object[] args) {
-		if (f.hasTag(FTAG)) {
-			int methodId = f.methodId();
-			switch (methodId) {
-			case Id_load: {
-				load(cx, thisObj, args);
-				return Context.getUndefinedValue();
-			}
+                case Id_print: {
+                    print(cx, thisObj, args);
+                    return Context.getUndefinedValue();
+                }
 
-			case Id_print: {
-				print(cx, thisObj, args);
-				return Context.getUndefinedValue();
-			}
+                case Id_require: {
+                    return require(cx, thisObj, args);
+                }
+            }
+        }
+        throw f.unknown();
+    }
 
-			case Id_require: {
-				return require(cx, thisObj, args);
-			}
-			}
-		}
-		throw f.unknown();
-	}
+    private void print(Context cx, Scriptable thisObj, Object[] args) {
+        StringBuffer message = new StringBuffer();
+        for (int i = 0; i < args.length; i++) {
+            if (i > 0) {
+                message.append(" ");
+            }
+            // Convert the arbitrary JavaScript value into a string form.
+            String s = ScriptRuntime.toString(args[i]);
 
-	private void print(Context cx, Scriptable thisObj, Object[] args) {
-		StringBuffer message = new StringBuffer();
-		for (int i = 0; i < args.length; i++) {
-			if (i > 0) {
-				message.append(" ");
-			}
-			// Convert the arbitrary JavaScript value into a string form.
-			String s = ScriptRuntime.toString(args[i]);
+            message.append(s);
+        }
 
-			message.append(s);
-		}
+        getLogger(cx, thisObj).info(message.toString());
+    }
 
-		getLogger(cx, thisObj).info(message.toString());
-	}
+    private void load(Context cx, Scriptable thisObj, Object[] args) {
 
-	private void load(Context cx, Scriptable thisObj, Object[] args) {
+        SlingScriptHelper sling = getProperty(cx, thisObj, SlingBindings.SLING, SlingScriptHelper.class);
+        if (sling == null) {
+            throw new NullPointerException(SlingBindings.SLING);
+        }
 
-		SlingScriptHelper sling = getProperty(cx, thisObj, SlingBindings.SLING,
-				SlingScriptHelper.class);
-		if (sling == null) {
-			throw new NullPointerException(SlingBindings.SLING);
-		}
+        Scriptable globalScope = ScriptableObject.getTopLevelScope(thisObj);
 
-		Scriptable globalScope = ScriptableObject.getTopLevelScope(thisObj);
+        Resource scriptResource = sling.getScript().getScriptResource();
+        ResourceResolver resolver = scriptResource.getResourceResolver();
 
-		Resource scriptResource = sling.getScript().getScriptResource();
-		ResourceResolver resolver = scriptResource.getResourceResolver();
+        // the path of the current script to resolve realtive paths
+        String currentScript = sling.getScript().getScriptResource().getPath();
+        String scriptParent = ResourceUtil.getParent(currentScript);
 
-		// the path of the current script to resolve realtive paths
-		String currentScript = sling.getScript().getScriptResource().getPath();
-		String scriptParent = ResourceUtil.getParent(currentScript);
+        for (Object arg : args) {
+            String scriptName = ScriptRuntime.toString(arg);
 
-		for (Object arg : args) {
-			String scriptName = ScriptRuntime.toString(arg);
+            Resource loadScript = null;
+            if (!scriptName.startsWith("/")) {
+                String absScriptName = scriptParent + "/" + scriptName;
+                loadScript = resolver.resolve(absScriptName);
+            }
 
-			Resource loadScript = null;
-			if (!scriptName.startsWith("/")) {
-				String absScriptName = scriptParent + "/" + scriptName;
-				loadScript = resolver.resolve(absScriptName);
-			}
+            // not resolved relative to the current script
+            if (loadScript == null) {
+                loadScript = resolver.resolve(scriptName);
+            }
 
-			// not resolved relative to the current script
-			if (loadScript == null) {
-				loadScript = resolver.resolve(scriptName);
-			}
+            if (loadScript == null) {
+                throw Context.reportRuntimeError("Script file " + scriptName + " not found");
+            }
 
-			if (loadScript == null) {
-				throw Context.reportRuntimeError("Script file " + scriptName
-						+ " not found");
-			}
+            InputStream scriptStream = loadScript.adaptTo(InputStream.class);
+            if (scriptStream == null) {
+                throw Context.reportRuntimeError("Script file " + scriptName + " cannot be read from");
+            }
 
-			InputStream scriptStream = loadScript.adaptTo(InputStream.class);
-			if (scriptStream == null) {
-				throw Context.reportRuntimeError("Script file " + scriptName
-						+ " cannot be read from");
-			}
+            try {
+                // reader for the stream
+                Reader scriptReader = new InputStreamReader(scriptStream, Charset.forName("UTF-8"));
 
-			try {
-				// reader for the stream
-				Reader scriptReader = new InputStreamReader(scriptStream, Charset.forName("UTF-8"));
+                // check whether we have to wrap the basic reader
+                if (scriptName.endsWith(RhinoJavaScriptEngineFactory.ESP_SCRIPT_EXTENSION)) {
+                    scriptReader = new EspReader(scriptReader);
+                }
 
-				// check whether we have to wrap the basic reader
-				if (scriptName
-						.endsWith(RhinoJavaScriptEngineFactory.ESP_SCRIPT_EXTENSION)) {
-					scriptReader = new EspReader(scriptReader);
-				}
+                // read the suff buffered for better performance
+                scriptReader = new BufferedReader(scriptReader);
 
-				// read the suff buffered for better performance
-				scriptReader = new BufferedReader(scriptReader);
+                // now, let's go
+                cx.evaluateReader(globalScope, scriptReader, scriptName, 1, null);
 
-				// now, let's go
-				cx.evaluateReader(globalScope, scriptReader, scriptName, 1,
-						null);
+            } catch (IOException ioe) {
 
-			} catch (IOException ioe) {
+                throw Context.reportRuntimeError("Failure reading file " + scriptName + ": " + ioe);
 
-				throw Context.reportRuntimeError("Failure reading file "
-						+ scriptName + ": " + ioe);
+            } finally {
+                // ensure the script input stream is closed
+                try {
+                    scriptStream.close();
+                } catch (IOException ignore) {
+                }
+            }
+        }
+    }
 
-			} finally {
-				// ensure the script input stream is closed
-				try {
-					scriptStream.close();
-				} catch (IOException ignore) {
-				}
-			}
-		}
-	}
+    public Object require(Context cx, Scriptable thisObj, Object[] args) {
+        if (args.length != 1 || !(args[0] instanceof String)) {
+            throw Context.reportRuntimeError("require() requires a String argument");
+        }
+        String modulePath = (String) args[0];
 
-	public Object require(Context cx, Scriptable thisObj, Object[] args) {
-		if (args.length != 1 || !(args[0] instanceof String)) {
-			throw Context
-					.reportRuntimeError("require() requires a String argument");
-		}
-		String modulePath = (String) args[0];
+        ModuleScope moduleScope = null;
+        if (thisObj instanceof ModuleScope) {
+            moduleScope = (ModuleScope) thisObj;
+        }
 
-		ModuleScope moduleScope = null;
-		if (thisObj instanceof ModuleScope) {
-			moduleScope = (ModuleScope) thisObj;
-		}
+        ModuleScope module = loadModule(cx, modulePath.trim(), moduleScope, thisObj);
+        return module.getExports();
+    }
 
-		ModuleScope module = loadModule(cx, modulePath.trim(), moduleScope,
-				thisObj);
-		return module.getExports();
-	}
+    private ModuleScope loadModule(Context cx, String modulePath, ModuleScope moduleScope, Scriptable thisObj) {
+        String absolutePath = modulePath;
+        if (modulePath.startsWith(".")) {
+            // relative
+            if (moduleScope == null) {
+                throw Context.reportRuntimeError("Cannot resolve relative module name outside of a module scope.");
+            }
+            absolutePath = (moduleScope.getModuleName() + "/" + modulePath).replaceAll("[^/]*/\\./", "");
+            while (absolutePath.matches("([^/]*/)?[^/]*/\\.\\./")) {
+                absolutePath = absolutePath.replaceAll("([^/]*/)?[^/]*/\\.\\./", "");
+            }
+        }
+        absolutePath = absolutePath + ".js";
 
-	private ModuleScope loadModule(Context cx, String modulePath,
-			ModuleScope moduleScope, Scriptable thisObj) {
-		String absolutePath = modulePath;
-		if (modulePath.startsWith(".")) {
-			// relative
-			if (moduleScope == null) {
-				throw Context
-						.reportRuntimeError("Cannot resolve relative module name outside of a module scope.");
-			}
-			absolutePath = (moduleScope.getModuleName() + "/" + modulePath)
-					.replaceAll("[^/]*/\\./", "");
-			while (absolutePath.matches("([^/]*/)?[^/]*/\\.\\./")) {
-				absolutePath = absolutePath
-						.replaceAll("([^/]*/)?[^/]*/\\.\\./", "");
-			}
-		}
-		absolutePath = absolutePath + ".js";
+        SlingScriptHelper sling = getProperty(cx, thisObj, SlingBindings.SLING, SlingScriptHelper.class);
+        if (sling == null) {
+            throw new NullPointerException(SlingBindings.SLING);
+        }
+        ResourceResolver resrev = sling.getScript().getScriptResource().getResourceResolver();
 
-		SlingScriptHelper sling = getProperty(cx, thisObj, SlingBindings.SLING,
-				SlingScriptHelper.class);
-		if (sling == null) {
-			throw new NullPointerException(SlingBindings.SLING);
-		}
-		ResourceResolver resrev = sling.getScript().getScriptResource().getResourceResolver();
+        Resource script = null;
+        String scriptName = null;
+        for (String basepath : resrev.getSearchPath()) {
+            script = resrev.resolve(basepath + absolutePath);
+            if (script != null && !(script instanceof NonExistingResource)) {
+                scriptName = basepath + absolutePath;
+                break;
+            }
+        }
+        if (script == null) {
+            throw Context.reportRuntimeError("Unable to resolve module " + absolutePath + " in search path");
+        }
 
-		Resource script = null;
-		String scriptName = null;
-		for (String basepath : resrev.getSearchPath()) {
-			script = resrev.resolve(basepath + absolutePath);
-			if (script!=null&&!(script instanceof NonExistingResource)) {
-				scriptName = basepath + absolutePath;
-				break;
-			}
-		}
-		if (script==null) {
-			throw Context.reportRuntimeError("Unable to resolve module " + absolutePath + " in search path");
-		}
+        InputStream scriptStream = script.adaptTo(InputStream.class);
+        if (scriptStream == null) {
+            // try once again
+            scriptStream = resrev.resolve(scriptName).adaptTo(InputStream.class);
+            if (scriptStream == null) {
+                throw Context.reportRuntimeError("Script file " + script.getPath() + " cannot be read");
+            }
+        }
 
-		InputStream scriptStream = script.adaptTo(InputStream.class);
-		if (scriptStream == null) {
-			//try once again
-			 scriptStream = resrev.resolve(scriptName).adaptTo(InputStream.class);
-			if (scriptStream==null) {
-				throw Context.reportRuntimeError("Script file " + script.getPath()
-						+ " cannot be read");
-			}
-		}
+        try {
+            // reader for the stream
+            Reader scriptReader = new InputStreamReader(scriptStream, Charset.forName("UTF-8"));
 
+            // check whether we have to wrap the basic reader
+            if (scriptName.endsWith(RhinoJavaScriptEngineFactory.ESP_SCRIPT_EXTENSION)) {
+                scriptReader = new EspReader(scriptReader);
+            }
 
-		try {
-			// reader for the stream
-			Reader scriptReader = new InputStreamReader(scriptStream, Charset.forName("UTF-8"));
+            // read the suff buffered for better performance
+            scriptReader = new BufferedReader(scriptReader);
 
-			// check whether we have to wrap the basic reader
-			if (scriptName
-					.endsWith(RhinoJavaScriptEngineFactory.ESP_SCRIPT_EXTENSION)) {
-				scriptReader = new EspReader(scriptReader);
-			}
+            // TODO: execute script with ModuleScope
+            // now, let's go
 
-			// read the suff buffered for better performance
-			scriptReader = new BufferedReader(scriptReader);
+            ModuleScope scope = moduleScope;
+            if (scope == null) {
+                scope = new ModuleScope(thisObj, absolutePath.substring(0, absolutePath.length() - 3));
+            } else {
+                scope.reset();
+            }
 
-			//TODO: execute script with ModuleScope
-			// now, let's go
+            cx.evaluateReader(scope, scriptReader, scriptName, 1, null);
 
-			ModuleScope scope = moduleScope;
-			if (scope==null) {
-				scope = new ModuleScope(thisObj, absolutePath.substring(0, absolutePath.length() - 3));
-			} else {
-				scope.reset();
-			}
+            return scope;
 
-			cx.evaluateReader(scope, scriptReader, scriptName, 1,
-					null);
+        } catch (IOException ioe) {
 
-			return scope;
+            throw Context.reportRuntimeError("Failure reading file " + scriptName + ": " + ioe);
 
-		} catch (IOException ioe) {
+        } finally {
+            // ensure the script input stream is closed
+            try {
+                scriptStream.close();
+            } catch (IOException ignore) {
+            }
+        }
+    }
 
-			throw Context.reportRuntimeError("Failure reading file "
-					+ scriptName + ": " + ioe);
+    /**
+     * Returns the script logger or the logger of this class as a fallback
+     * default if the global log variable is not accessible.
+     */
+    private Logger getLogger(Context cx, Scriptable scope) {
+        Logger log = getProperty(cx, scope, SlingBindings.LOG, Logger.class);
+        if (log == null) {
+            log = this.defaultLog;
+        }
+        return log;
+    }
 
-		} finally {
-			// ensure the script input stream is closed
-			try {
-				scriptStream.close();
-			} catch (IOException ignore) {
-			}
-		}
-	}
+    /**
+     * Returns the named toplevel property converted to the requested
+     * <code>type</code> or <code>null</code> if no such property exists or the
+     * property is of the wrong type.
+     */
+    @SuppressWarnings("unchecked")
+    private <Type> Type getProperty(Context cx, Scriptable scope, String name, Class<Type> type) {
+        Object prop = ScriptRuntime.name(cx, scope, name);
 
-	/**
-	 * Returns the script logger or the logger of this class as a fallback
-	 * default if the global log variable is not accessible.
-	 */
-	private Logger getLogger(Context cx, Scriptable scope) {
-		Logger log = getProperty(cx, scope, SlingBindings.LOG, Logger.class);
-		if (log == null) {
-			log = this.defaultLog;
-		}
-		return log;
-	}
+        if (prop instanceof Wrapper) {
+            prop = ((Wrapper) prop).unwrap();
+        }
 
-	/**
-	 * Returns the named toplevel property converted to the requested
-	 * <code>type</code> or <code>null</code> if no such property exists or the
-	 * property is of the wrong type.
-	 */
-	@SuppressWarnings("unchecked")
-	private <Type> Type getProperty(Context cx, Scriptable scope, String name,
-			Class<Type> type) {
-		Object prop = ScriptRuntime.name(cx, scope, name);
+        if (type.isInstance(prop)) {
+            return (Type) prop; // unchecked case
+        }
 
-		if (prop instanceof Wrapper) {
-			prop = ((Wrapper) prop).unwrap();
-		}
-
-		if (type.isInstance(prop)) {
-			return (Type) prop; // unchecked case
-		}
-
-		return null;
-	}
+        return null;
+    }
 }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingRhinoDebugger.java b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingRhinoDebugger.java
index 3c7b0cd..2e17d02 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingRhinoDebugger.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingRhinoDebugger.java
@@ -1,18 +1,20 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.helper;
 
diff --git a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingWrapFactory.java b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingWrapFactory.java
index 6510373..d6e29c4 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/helper/SlingWrapFactory.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/helper/SlingWrapFactory.java
@@ -47,8 +47,7 @@
      */
     @SuppressWarnings("unchecked")
     @Override
-    public Scriptable wrapAsJavaObject(Context cx, Scriptable scope,
-            Object javaObject, Class staticType) {
+    public Scriptable wrapAsJavaObject(Context cx, Scriptable scope, Object javaObject, Class staticType) {
 
         Scriptable result = null;
         try {
@@ -59,8 +58,7 @@
             }
 
             if (hostObjectName != null) {
-                result = cx.newObject(scope, hostObjectName,
-                    new Object[] { javaObject });
+                result = cx.newObject(scope, hostObjectName, new Object[] {javaObject});
             }
         } catch (Exception e) {
             log.warn("Cannot Wrap " + javaObject, e);
@@ -74,13 +72,13 @@
     }
 
     private String getHostObjectName(Class<?> javaClass) {
-        if(javaClass==null || isExcluded(javaClass)) {
+        if (javaClass == null || isExcluded(javaClass)) {
             return null;
         }
         String hostObjectName = wrappers.get(javaClass);
         if (hostObjectName == null) {
             // before SLING-383 the superclass was tested first,
-            // but for Version and VersionHistory this would get 
+            // but for Version and VersionHistory this would get
             // a Node wrapper, that's not what we want
             final Class<?>[] javaInterfaces = javaClass.getInterfaces();
             for (int i = 0; i < javaInterfaces.length && hostObjectName == null; i++) {
diff --git a/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java b/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java
index fddce2b..b9ddcd7 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java
@@ -1,28 +1,23 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.internal;
 
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Map.Entry;
-
 import javax.script.Bindings;
 import javax.script.Compilable;
 import javax.script.CompiledScript;
@@ -31,6 +26,13 @@
 import javax.script.ScriptEngineFactory;
 import javax.script.ScriptException;
 
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+
 import org.apache.commons.io.IOUtils;
 import org.apache.sling.api.scripting.LazyBindings;
 import org.apache.sling.api.scripting.SlingBindings;
@@ -94,7 +96,7 @@
             scriptReader = wrapReaderIfEspScript(scriptReader, scriptName);
             try {
                 final Context rhinoContext = Context.enter();
-                rhinoContext.setLanguageVersion(((RhinoJavaScriptEngineFactory)getFactory()).rhinoLanguageVersion());
+                rhinoContext.setLanguageVersion(((RhinoJavaScriptEngineFactory) getFactory()).rhinoLanguageVersion());
                 rhinoContext.setOptimizationLevel(optimizationLevel());
 
                 if (!ScriptRuntime.hasTopCall(rhinoContext)) {
@@ -126,7 +128,8 @@
                 LOGGER.debug("Added {} script to Script Cache.", scriptName);
                 return slingCompiledScript;
             } catch (IOException e) {
-                final ScriptException se = new ScriptException("Failure running script " + scriptName + ": " + e.getMessage());
+                final ScriptException se =
+                        new ScriptException("Failure running script " + scriptName + ": " + e.getMessage());
                 se.initCause(e);
                 throw se;
             } finally {
@@ -140,7 +143,8 @@
         Reader reader = wrapReaderIfEspScript(scriptReader, scriptName);
         if (!(scriptReader instanceof ScriptNameAware)) {
             if (NO_SCRIPT_NAME.equals(scriptName)) {
-                String script = (String) scriptContext.getBindings(ScriptContext.ENGINE_SCOPE).get(ScriptEngine.FILENAME);
+                String script = (String)
+                        scriptContext.getBindings(ScriptContext.ENGINE_SCOPE).get(ScriptEngine.FILENAME);
                 if (script != null) {
                     for (String extension : getFactory().getExtensions()) {
                         if (script.endsWith(extension)) {
@@ -162,8 +166,7 @@
         return scriptReader;
     }
 
-    private Map<String, Object> setBoundProperties(Scriptable scope,
-            Bindings bindings) {
+    private Map<String, Object> setBoundProperties(Scriptable scope, Bindings bindings) {
         Map<String, Object> replacedProperties = new HashMap<String, Object>();
 
         for (Object entryObject : bindings.entrySet()) {
@@ -177,8 +180,7 @@
             if (value != null) {
                 // get the current property value, if set
                 if (ScriptableObject.hasProperty(scope, name)) {
-                    replacedProperties.put(name, ScriptableObject.getProperty(
-                        scope, name));
+                    replacedProperties.put(name, ScriptableObject.getProperty(scope, name));
                 }
 
                 // wrap the new value and set it
@@ -207,18 +209,16 @@
         }
     }
 
-    private void resetBoundProperties(Scriptable scope,
-            Map<String, Object> properties) {
+    private void resetBoundProperties(Scriptable scope, Map<String, Object> properties) {
         if (scope != null && properties != null && properties.size() > 0) {
             for (Entry<String, Object> entry : properties.entrySet()) {
-                ScriptableObject.putProperty(scope, entry.getKey(),
-                    entry.getValue());
+                ScriptableObject.putProperty(scope, entry.getKey(), entry.getValue());
             }
         }
     }
 
     private int optimizationLevel() {
-        return ((RhinoJavaScriptEngineFactory)getFactory()).getOptimizationLevel();
+        return ((RhinoJavaScriptEngineFactory) getFactory()).getOptimizationLevel();
     }
 
     private class SlingCompiledScript extends CompiledScript {
@@ -244,7 +244,7 @@
             try {
 
                 final Context rhinoContext = Context.enter();
-                rhinoContext.setLanguageVersion(((RhinoJavaScriptEngineFactory)getFactory()).rhinoLanguageVersion());
+                rhinoContext.setLanguageVersion(((RhinoJavaScriptEngineFactory) getFactory()).rhinoLanguageVersion());
                 rhinoContext.setOptimizationLevel(optimizationLevel());
 
                 if (ScriptRuntime.hasTopCall(rhinoContext)) {
@@ -288,8 +288,7 @@
                 // prevent variables to be pushed back in case of errors
                 isTopLevelCall = false;
 
-                final ScriptException se = new ScriptException(t.details(),
-                        t.sourceName(), t.lineNumber());
+                final ScriptException se = new ScriptException(t.details(), t.sourceName(), t.lineNumber());
 
                 // log the script stack trace
                 ((Logger) bindings.get(SlingBindings.LOG)).error(t.getScriptStackTrace());
@@ -317,7 +316,8 @@
                 // prevent variables to be pushed back in case of errors
                 isTopLevelCall = false;
                 String scriptName = getScriptName(scriptContext);
-                final ScriptException se = new ScriptException("Failure running script " + scriptName + ": " + t.getMessage());
+                final ScriptException se =
+                        new ScriptException("Failure running script " + scriptName + ": " + t.getMessage());
                 se.initCause(t);
                 throw se;
 
@@ -342,8 +342,9 @@
                         if (scope != null) {
                             ClassCache classCache = ClassCache.get(scope);
                             classCache.clearCaches();
-                            LOGGER.info("Detected dirty class loader on thread {}. Emptying Rhino's class cache.", Thread.currentThread()
-                                    .getName());
+                            LOGGER.info(
+                                    "Detected dirty class loader on thread {}. Emptying Rhino's class cache.",
+                                    Thread.currentThread().getName());
                         }
                     }
                 }
@@ -358,7 +359,7 @@
     }
 
     private String getScriptName(Reader scriptReader) {
-        if(scriptReader instanceof ScriptNameAware){
+        if (scriptReader instanceof ScriptNameAware) {
             return ((ScriptNameAware) scriptReader).getScriptName();
         }
         return NO_SCRIPT_NAME;
diff --git a/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactory.java b/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactory.java
index d8b0198..f8f8435 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactory.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactory.java
@@ -18,6 +18,9 @@
  */
 package org.apache.sling.scripting.javascript.internal;
 
+import javax.script.ScriptEngine;
+import javax.script.ScriptEngineFactory;
+
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.URL;
@@ -30,9 +33,6 @@
 import java.util.jar.Attributes;
 import java.util.jar.Manifest;
 
-import javax.script.ScriptEngine;
-import javax.script.ScriptEngineFactory;
-
 import org.apache.sling.commons.classloader.DynamicClassLoaderManager;
 import org.apache.sling.commons.osgi.PropertiesUtil;
 import org.apache.sling.scripting.api.AbstractScriptEngineFactory;
@@ -72,48 +72,50 @@
 import org.slf4j.LoggerFactory;
 
 @Component(
-    service = ScriptEngineFactory.class,
-    property = {
-        Constants.SERVICE_DESCRIPTION + "=Apache Sling Rhino Javascript Engine Factory",
-        Constants.SERVICE_VENDOR + "=The Apache Software Foundation",
-        "extensions=" + RhinoJavaScriptEngineFactory.ECMA_SCRIPT_EXTENSION,
-        "extensions=" + RhinoJavaScriptEngineFactory.ESP_SCRIPT_EXTENSION,
-        "mimeTypes=text/ecmascript",
-        "mimeTypes=text/javascript",
-        "mimeTypes=application/ecmascript",
-        "mimeTypes=application/javascript",
-        "names=rhino",
-        "names=Rhino",
-        "names=javascript",
-        "names=JavaScript",
-        "names=ecmascript",
-        "names=ECMAScript"
-    },
-    reference = @Reference(
-        name = "HostObjectProvider",
-        service = RhinoHostObjectProvider.class,
-        cardinality = ReferenceCardinality.MULTIPLE,
-        policy = ReferencePolicy.DYNAMIC,
-        bind = "addHostObjectProvider",
-        unbind = "removeHostObjectProvider"
-    )
-)
-@Designate(
-    ocd = RhinoJavaScriptEngineFactoryConfiguration.class
-)
+        service = ScriptEngineFactory.class,
+        property = {
+            Constants.SERVICE_DESCRIPTION + "=Apache Sling Rhino Javascript Engine Factory",
+            Constants.SERVICE_VENDOR + "=The Apache Software Foundation",
+            "extensions=" + RhinoJavaScriptEngineFactory.ECMA_SCRIPT_EXTENSION,
+            "extensions=" + RhinoJavaScriptEngineFactory.ESP_SCRIPT_EXTENSION,
+            "mimeTypes=text/ecmascript",
+            "mimeTypes=text/javascript",
+            "mimeTypes=application/ecmascript",
+            "mimeTypes=application/javascript",
+            "names=rhino",
+            "names=Rhino",
+            "names=javascript",
+            "names=JavaScript",
+            "names=ecmascript",
+            "names=ECMAScript"
+        },
+        reference =
+                @Reference(
+                        name = "HostObjectProvider",
+                        service = RhinoHostObjectProvider.class,
+                        cardinality = ReferenceCardinality.MULTIPLE,
+                        policy = ReferencePolicy.DYNAMIC,
+                        bind = "addHostObjectProvider",
+                        unbind = "removeHostObjectProvider"))
+@Designate(ocd = RhinoJavaScriptEngineFactoryConfiguration.class)
 public class RhinoJavaScriptEngineFactory extends AbstractScriptEngineFactory implements ScopeProvider {
 
-    public final static int DEFAULT_OPTIMIZATION_LEVEL = 9;
+    public static final int DEFAULT_OPTIMIZATION_LEVEL = 9;
 
-    public final static String ECMA_SCRIPT_EXTENSION = "ecma";
+    public static final String ECMA_SCRIPT_EXTENSION = "ecma";
 
-    public final static String ESP_SCRIPT_EXTENSION = "esp";
+    public static final String ESP_SCRIPT_EXTENSION = "esp";
 
     private static final Class<?>[] HOSTOBJECT_CLASSES = {
-            ScriptableResource.class, ScriptableNode.class,
-            ScriptableProperty.class, ScriptableItemMap.class,
-            ScriptablePrintWriter.class, ScriptableVersionHistory.class,
-            ScriptableVersion.class, ScriptableCalendar.class, ScriptableMap.class
+        ScriptableResource.class,
+        ScriptableNode.class,
+        ScriptableProperty.class,
+        ScriptableItemMap.class,
+        ScriptablePrintWriter.class,
+        ScriptableVersionHistory.class,
+        ScriptableVersion.class,
+        ScriptableCalendar.class,
+        ScriptableMap.class
     };
 
     /**
@@ -127,7 +129,6 @@
     private static final String LANGUAGE_VERSION = "partial ECMAScript 2015 support";
     private static final String LANGUAGE_NAME = "ECMAScript";
 
-
     private SlingWrapFactory wrapFactory;
 
     private Scriptable rootScope;
@@ -262,15 +263,18 @@
 
     // ---------- SCR integration
     @Activate
-    protected void activate(final ComponentContext context, final RhinoJavaScriptEngineFactoryConfiguration configuration) {
+    protected void activate(
+            final ComponentContext context, final RhinoJavaScriptEngineFactoryConfiguration configuration) {
         Dictionary<?, ?> props = context.getProperties();
-        boolean debugging = getProperty("org.apache.sling.scripting.javascript.debug", props, context.getBundleContext(), false);
+        boolean debugging =
+                getProperty("org.apache.sling.scripting.javascript.debug", props, context.getBundleContext(), false);
 
         // try to get the manifest
         String rhinoVersion = null;
         InputStream ins = null;
         try {
-            Enumeration<URL> resources = RhinoJavaScriptEngineFactory.class.getClassLoader().getResources("META-INF/MANIFEST.MF");
+            Enumeration<URL> resources =
+                    RhinoJavaScriptEngineFactory.class.getClassLoader().getResources("META-INF/MANIFEST.MF");
             while (resources.hasMoreElements()) {
                 try {
                     URL url = resources.nextElement();
@@ -398,8 +402,7 @@
         }
     }
 
-    private void addImportedClasses(Context cx, Scriptable scope,
-                                    Class<?>[] classes) {
+    private void addImportedClasses(Context cx, Scriptable scope, Class<?>[] classes) {
         if (classes != null && classes.length > 0) {
             NativeJavaClass[] np = new NativeJavaClass[classes.length];
             for (int i = 0; i < classes.length; i++) {
@@ -409,8 +412,7 @@
         }
     }
 
-    private void addImportedPackages(Context cx, Scriptable scope,
-                                     String[] packages) {
+    private void addImportedPackages(Context cx, Scriptable scope, String[] packages) {
         if (packages != null && packages.length > 0) {
             NativeJavaPackage[] np = new NativeJavaPackage[packages.length];
             for (int i = 0; i < packages.length; i++) {
@@ -420,16 +422,14 @@
         }
     }
 
-    private boolean getProperty(String name, Dictionary<?, ?> props,
-                                BundleContext bundleContext, boolean defaultValue) {
+    private boolean getProperty(
+            String name, Dictionary<?, ?> props, BundleContext bundleContext, boolean defaultValue) {
         Object value = props.get(name);
         if (value == null) {
             value = bundleContext.getProperty(name);
         }
 
-        return (value != null)
-                ? Boolean.parseBoolean(String.valueOf(value))
-                : defaultValue;
+        return (value != null) ? Boolean.parseBoolean(String.valueOf(value)) : defaultValue;
     }
 
     private int readOptimizationLevel(final RhinoJavaScriptEngineFactoryConfiguration configuration) {
diff --git a/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactoryConfiguration.java b/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactoryConfiguration.java
index dc41745..13c6f8d 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactoryConfiguration.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactoryConfiguration.java
@@ -22,15 +22,14 @@
 import org.osgi.service.metatype.annotations.ObjectClassDefinition;
 
 @ObjectClassDefinition(
-    name = "Apache Sling Rhino JavaScript Engine Factory",
-    description = "JavaScript engine based on Rhino"
-)
+        name = "Apache Sling Rhino JavaScript Engine Factory",
+        description = "JavaScript engine based on Rhino")
 @interface RhinoJavaScriptEngineFactoryConfiguration {
 
     @AttributeDefinition(
-        name = "Rhino optimization level",
-        description = "The level of optimization for the bytecode generated by Rhino. Provide values between 0-9, 9 being the most aggressive level of optimization. A value of -1 will run scripts in interpreted mode."
-    )
-    int org_apache_sling_scripting_javascript_rhino_optLevel() default RhinoJavaScriptEngineFactory.DEFAULT_OPTIMIZATION_LEVEL;
-
+            name = "Rhino optimization level",
+            description =
+                    "The level of optimization for the bytecode generated by Rhino. Provide values between 0-9, 9 being the most aggressive level of optimization. A value of -1 will run scripts in interpreted mode.")
+    int org_apache_sling_scripting_javascript_rhino_optLevel() default
+            RhinoJavaScriptEngineFactory.DEFAULT_OPTIMIZATION_LEVEL;
 }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/io/EspReader.java b/src/main/java/org/apache/sling/scripting/javascript/io/EspReader.java
index 38beb47..6cb1c12 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/io/EspReader.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/io/EspReader.java
@@ -90,7 +90,7 @@
     private static final byte PARSE_STATE_ECMA_EXPR = 3;
 
     /**
-     * Compact ESP expression syntax similar to JSP Expression Language notation 
+     * Compact ESP expression syntax similar to JSP Expression Language notation
      */
     private static final byte PARSE_STATE_ECMA_EXPR_COMPACT = 4;
 
@@ -127,7 +127,7 @@
      * comment is read (and completely returned).
      */
     private static final byte PARSE_STATE_ECMA_COMMENTL = 9;
-    
+
     /**
      * To work with lookahead and character insertion, we use a PushbackReader.
      */
@@ -183,13 +183,14 @@
      * @see #startWrite(String)
      */
     private boolean outUndefined = true;
-    
+
     /**
      * Javascript statement that sets the "out" variable that's used
      * to output data. Automatically inserted by the reader in code,
      * where needed.
      */
-    public static final String DEFAULT_OUT_INIT_STATEMENT = "out=response.writer;"; 
+    public static final String DEFAULT_OUT_INIT_STATEMENT = "out=response.writer;";
+
     private String outInitStatement = DEFAULT_OUT_INIT_STATEMENT;
 
     /**
@@ -212,7 +213,7 @@
         // Start in ESP (template text) state
         pushState(PARSE_STATE_ESP);
     }
-    
+
     /**
      * Set the code fragment used to initialize the "out" variable
      *
@@ -290,8 +291,7 @@
         ensureOpen();
 
         // Check lines (taken from InputStreamReader ;-)
-        if ((off < 0) || (off > cbuf.length) || (len < 0)
-            || ((off + len) > cbuf.length) || ((off + len) < 0)) {
+        if ((off < 0) || (off > cbuf.length) || (len < 0) || ((off + len) > cbuf.length) || ((off + len) < 0)) {
             throw new IndexOutOfBoundsException();
         } else if (len == 0) {
             return 0;
@@ -398,7 +398,7 @@
     private int doRead() throws IOException {
 
         // we return out of the loop, if we find a character passing the filter
-        for (;;) {
+        for (; ; ) {
 
             // Get a character from the input, which may well have been
             // injected using the unread() method
@@ -421,15 +421,15 @@
             // Do the finite state machine
             switch (state) {
 
-                // NOTE :
-                // - continue means ignore current character, read next
-                // - break means return current character
+                    // NOTE :
+                    // - continue means ignore current character, read next
+                    // - break means return current character
 
-                // Template text state - text is wrapped in out.write()
+                    // Template text state - text is wrapped in out.write()
                 case PARSE_STATE_ESP:
                     if (c == '$') { // might start EL-like ECMA expr
-                    	int c2 = input.read();
-                    	if (c2 == '{') {
+                        int c2 = input.read();
+                        if (c2 == '{') {
                             // ECMA expression ${ ... }
                             pushState(PARSE_STATE_ECMA_EXPR_COMPACT);
                             startWrite(null);
@@ -437,11 +437,11 @@
                                 doVerbatim("\");");
                             }
                             continue;
-                    	}
-                    	 
-                    	input.unread(c2);
+                        }
 
-                    } else  if (c == '<') { // might start ECMA code/expr, ESP comment or JSP comment
+                        input.unread(c2);
+
+                    } else if (c == '<') { // might start ECMA code/expr, ESP comment or JSP comment
                         int c2 = input.read();
                         int c3 = input.read();
 
@@ -467,7 +467,6 @@
                                     continue;
                                 }
                                 input.unread(c4);
-
                             }
 
                             // We only get here if we are sure about ECMA
@@ -479,7 +478,6 @@
                                 doVerbatim("\");");
                             }
                             continue;
-
                         }
 
                         // Nothing special, push back read ahead
@@ -525,7 +523,6 @@
 
                         doVerbatim(String.valueOf((char) c));
                         c = '\\';
-
                     }
 
                     // If in template text at the beginning of a line
@@ -537,10 +534,9 @@
 
                     break;
 
-                // Reading ECMA code or and ECMA expression
+                    // Reading ECMA code or and ECMA expression
                 case PARSE_STATE_ECMA_EXPR:
                 case PARSE_STATE_ECMA:
-
                     if (c == '%') {
 
                         // might return to PARSE_STATE_ESP
@@ -556,7 +552,6 @@
                             lineStart = true;
 
                             continue;
-
                         }
 
                         // false alert, push back
@@ -583,13 +578,12 @@
                         escape = false; // start unescaped
                         quoteChar = (char) c; // to recognize the end
                         pushState(PARSE_STATE_QUOTE);
-
                     }
                     break;
 
-                // reading compact (EL-like) ECMA Expression
+                    // reading compact (EL-like) ECMA Expression
                 case PARSE_STATE_ECMA_EXPR_COMPACT:
-                    if (c == '}') { //might be the end of a compact expression
+                    if (c == '}') { // might be the end of a compact expression
                         // An expression is wrapped in out.write()
                         popState();
                         doVerbatim(");");
@@ -598,11 +592,10 @@
                         lineStart = true;
 
                         continue;
-
                     }
                     break;
 
-                // Reading a JSP comment, only returning line endings
+                    // Reading a JSP comment, only returning line endings
                 case PARSE_STATE_JSP_COMMENT:
 
                     // JSP comments end complexly with --%>
@@ -617,7 +610,6 @@
                                     // we really reached the end ...
                                     popState();
                                     continue;
-
                                 }
                                 input.unread(c4);
                             }
@@ -656,7 +648,7 @@
 
                     break;
 
-                // Return characters unfiltered
+                    // Return characters unfiltered
                 case PARSE_STATE_VERBATIM:
 
                     // Go back to previous state if all characters read
@@ -666,7 +658,7 @@
 
                     break;
 
-                // Return an ECMA multiline comment, ending with */
+                    // Return an ECMA multiline comment, ending with */
                 case PARSE_STATE_ECMA_COMMENT:
 
                     // Might be the end of the comment
@@ -682,7 +674,7 @@
 
                     break;
 
-                // Return an ECMA single line comment, ending with end of line
+                    // Return an ECMA single line comment, ending with end of line
                 case PARSE_STATE_ECMA_COMMENTL:
 
                     // CRLF recognition
@@ -699,8 +691,8 @@
                     }
 
                     break;
-                    
-                // What ???!!!
+
+                    // What ???!!!
                 default:
 
                     // we warn and go back to default state
@@ -708,14 +700,11 @@
                     state = PARSE_STATE_ESP;
 
                     break;
-
             } // switch
 
             // Exiting the switch normally we return the current character
             return c;
-
         } // for(;;)
-
     }
 
     /**
@@ -804,5 +793,4 @@
         state = stateStack.isEmpty() ? PARSE_STATE_ESP : stateStack.pop();
         return oldState;
     }
-
-}
\ No newline at end of file
+}
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableBase.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableBase.java
index 95a330f..6812163 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableBase.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableBase.java
@@ -1,18 +1,20 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
@@ -37,17 +39,17 @@
     protected Object getNative(String name, Scriptable start) {
         final Object wrapped = getWrappedObject();
 
-        if(wrapped == null) {
+        if (wrapped == null) {
             return Scriptable.NOT_FOUND;
         }
 
-        if(jsMethods.contains(name)) {
+        if (jsMethods.contains(name)) {
             return Scriptable.NOT_FOUND;
         }
 
-        if(njo == null) {
+        if (njo == null) {
             synchronized (this) {
-                if(njo == null) {
+                if (njo == null) {
                     njo = new NativeJavaObject(start, wrapped, getStaticType());
                 }
             }
@@ -69,8 +71,8 @@
     private Set<String> getJsMethodNames() {
         final Set<String> result = new HashSet<String>();
 
-        for(Method m : getClass().getMethods()) {
-            if(m.getName().startsWith(JSFUNC_PREFIX)) {
+        for (Method m : getClass().getMethods()) {
+            if (m.getName().startsWith(JSFUNC_PREFIX)) {
                 result.add(m.getName().substring(JSFUNC_PREFIX.length()));
             }
         }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableCalendar.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableCalendar.java
index 056c38b..dcdda76 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableCalendar.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableCalendar.java
@@ -1,18 +1,20 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
@@ -29,8 +31,8 @@
 @SuppressWarnings("serial")
 public class ScriptableCalendar extends ScriptableBase implements SlingWrapper {
 
-	public static final String CLASSNAME = "Calendar";
-	private SimpleDateFormat calendarFormat;
+    public static final String CLASSNAME = "Calendar";
+    private SimpleDateFormat calendarFormat;
 
     /** Used to format date values */
     static final String ECMA_DATE_FORMAT = "EEE MMM dd yyyy HH:mm:ss 'GMT'Z";
@@ -38,19 +40,19 @@
     /** The Locale used to format date values */
     static final Locale DATE_FORMAT_LOCALE = Locale.US;
 
-	/** Calendar is a class, not an interface - so we need to enumerate possible implementations here */
-    private static final Class<?> [] WRAPPED_CLASSES = { Calendar.class, GregorianCalendar.class };
+    /** Calendar is a class, not an interface - so we need to enumerate possible implementations here */
+    private static final Class<?>[] WRAPPED_CLASSES = {Calendar.class, GregorianCalendar.class};
 
     /**
      * The wrapped Calendar. Will be {@code null} if the
      * {@link #jsConstructor(Object)} method is not called, which particularly
      * is the case for the Calendar host object prototype.
      */
-	private Calendar calendar;
+    private Calendar calendar;
 
     public Class<?>[] getWrappedClasses() {
-		return WRAPPED_CLASSES;
-	}
+        return WRAPPED_CLASSES;
+    }
 
     public void jsConstructor(Object o) {
         this.calendar = (Calendar) o;
@@ -61,51 +63,51 @@
 
         // builtin javascript properties (jsFunction_ etc.) have priority
         final Object fromSuperclass = super.get(name, start);
-        if(fromSuperclass != Scriptable.NOT_FOUND) {
+        if (fromSuperclass != Scriptable.NOT_FOUND) {
             return fromSuperclass;
         }
 
-        if(calendar == null) {
+        if (calendar == null) {
             return Undefined.instance;
         }
 
-        if("date".equals(name)) {
-        	return ScriptRuntime.toObject(this, calendar.getTime());
+        if ("date".equals(name)) {
+            return ScriptRuntime.toObject(this, calendar.getTime());
         }
 
         return getNative(name, start);
     }
 
-	@Override
-	protected Class<?> getStaticType() {
-		return Calendar.class;
-	}
+    @Override
+    protected Class<?> getStaticType() {
+        return Calendar.class;
+    }
 
-	@Override
-	protected Object getWrappedObject() {
-		return calendar;
-	}
+    @Override
+    protected Object getWrappedObject() {
+        return calendar;
+    }
 
-	@Override
-	public String getClassName() {
-		return CLASSNAME;
-	}
+    @Override
+    public String getClassName() {
+        return CLASSNAME;
+    }
 
-	@Override
-	public String toString() {
+    @Override
+    public String toString() {
         if (calendarFormat == null) {
             calendarFormat = new SimpleDateFormat(ECMA_DATE_FORMAT, DATE_FORMAT_LOCALE);
         }
         return calendarFormat.format(calendar.getTime());
-	}
+    }
 
     public Object unwrap() {
         return calendar;
     }
 
     @SuppressWarnings("unchecked")
-	@Override
+    @Override
     public Object getDefaultValue(Class typeHint) {
-    	return toString();
+        return toString();
     }
 }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableItemMap.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableItemMap.java
index 8ac96e6..36e3f99 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableItemMap.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableItemMap.java
@@ -18,13 +18,13 @@
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
+import javax.jcr.Item;
+import javax.jcr.RepositoryException;
+
 import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.Map;
 
-import javax.jcr.Item;
-import javax.jcr.RepositoryException;
-
 import org.mozilla.javascript.ScriptRuntime;
 import org.mozilla.javascript.Scriptable;
 import org.mozilla.javascript.ScriptableObject;
@@ -49,8 +49,7 @@
                 try {
                     items.put(item.getName(), item);
                 } catch (RepositoryException re) {
-                    log.error("ScriptableItemMap<init>: Cannot get name of item "
-                        + item, re);
+                    log.error("ScriptableItemMap<init>: Cannot get name of item " + item, re);
                 }
             }
         }
@@ -85,7 +84,7 @@
     public Object get(String name, Scriptable start) {
         // special provision for the "length" property to simulate an array
         if ("length".equals(name)) {
-            return ScriptRuntime.toNumber(this.items.keySet().size()+"");
+            return ScriptRuntime.toNumber(this.items.keySet().size() + "");
         }
 
         Item item = items.get(name);
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableMap.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableMap.java
index d644e53..6e5a77a 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableMap.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableMap.java
@@ -1,18 +1,20 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *     http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
@@ -30,7 +32,7 @@
 public class ScriptableMap extends ScriptableBase implements SlingWrapper {
 
     public static final String CLASSNAME = "Map";
-    private static final Class<?> [] WRAPPED_CLASSES = { Map.class };
+    private static final Class<?>[] WRAPPED_CLASSES = {Map.class};
 
     private Map<String, Object> map = new HashMap<String, Object>();
 
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableNode.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableNode.java
index 009c570..1f636f0 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableNode.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableNode.java
@@ -1,29 +1,23 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
 import javax.jcr.Node;
 import javax.jcr.NodeIterator;
 import javax.jcr.Property;
@@ -34,6 +28,14 @@
 import javax.jcr.ValueFormatException;
 import javax.jcr.nodetype.NodeType;
 
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+
 import org.apache.sling.scripting.javascript.SlingWrapper;
 import org.mozilla.javascript.Context;
 import org.mozilla.javascript.NativeArray;
@@ -51,7 +53,7 @@
 public class ScriptableNode extends ScriptableBase implements SlingWrapper {
 
     public static final String CLASSNAME = "Node";
-    private static final Class<?> [] WRAPPED_CLASSES = { Node.class };
+    private static final Class<?>[] WRAPPED_CLASSES = {Node.class};
 
     /** default log */
     private final Logger log = LoggerFactory.getLogger(getClass());
@@ -73,7 +75,7 @@
     }
 
     @Override
-    public Class<?> [] getWrappedClasses() {
+    public Class<?>[] getWrappedClasses() {
         return WRAPPED_CLASSES;
     }
 
@@ -89,7 +91,7 @@
 
     public Object jsFunction_addNode(String path, String primaryType) throws RepositoryException {
         Node n = null;
-        if(primaryType == null || "undefined".equals(primaryType)) {
+        if (primaryType == null || "undefined".equals(primaryType)) {
             n = node.addNode(path);
         } else {
             n = node.addNode(path, primaryType);
@@ -115,7 +117,7 @@
     public Object jsFunction_getNodes(String namePattern) {
         try {
             NodeIterator iter = null;
-            if(namePattern == null || "undefined".equals(namePattern)) {
+            if (namePattern == null || "undefined".equals(namePattern)) {
                 iter = node.getNodes();
             } else {
                 iter = node.getNodes(namePattern);
@@ -145,9 +147,8 @@
     }
 
     public Object jsFunction_getProperty(String name) throws RepositoryException {
-        Object[] args = { node.getProperty(name) };
-        return ScriptRuntime.newObject(Context.getCurrentContext(), this,
-            ScriptableProperty.CLASSNAME, args);
+        Object[] args = {node.getProperty(name)};
+        return ScriptRuntime.newObject(Context.getCurrentContext(), this, ScriptableProperty.CLASSNAME, args);
     }
 
     public String jsFunction_getUUID() {
@@ -304,11 +305,11 @@
 
         // builtin javascript properties (jsFunction_ etc.) have priority
         final Object fromSuperclass = super.get(name, start);
-        if(fromSuperclass != Scriptable.NOT_FOUND) {
+        if (fromSuperclass != Scriptable.NOT_FOUND) {
             return fromSuperclass;
         }
 
-        if(node == null) {
+        if (node == null) {
             return Undefined.instance;
         }
 
@@ -321,7 +322,7 @@
                 items.add(ScriptRuntime.toObject(this, it.nextNode()));
             }
         } catch (RepositoryException e) {
-            log.debug("RepositoryException while collecting Node children",e);
+            log.debug("RepositoryException while collecting Node children", e);
         }
 
         // Add all matching properties to result
@@ -344,10 +345,10 @@
             log.debug("RepositoryException while collecting Node properties", e);
         }
 
-        if (items.size()==0) {
+        if (items.size() == 0) {
             return getNative(name, start);
 
-        } else if (items.size()==1 && !isMulti) {
+        } else if (items.size() == 1 && !isMulti) {
             return items.iterator().next();
 
         } else {
@@ -358,8 +359,7 @@
     }
 
     /** Wrap JCR Values in a simple way */
-    private Scriptable wrap(Value value) throws ValueFormatException,
-            IllegalStateException, RepositoryException {
+    private Scriptable wrap(Value value) throws ValueFormatException, IllegalStateException, RepositoryException {
 
         Object javaObject;
         if (value.getType() == PropertyType.REFERENCE) {
@@ -407,14 +407,14 @@
     @Override
     public Object[] getIds() {
         Collection<String> ids = new ArrayList<String>();
-        if(node != null) {
+        if (node != null) {
             try {
                 PropertyIterator pit = node.getProperties();
                 while (pit.hasNext()) {
                     ids.add(pit.nextProperty().getName());
                 }
             } catch (RepositoryException e) {
-                //do nothing, just do not list properties
+                // do nothing, just do not list properties
             }
             try {
                 NodeIterator nit = node.getNodes();
@@ -422,7 +422,7 @@
                     ids.add(nit.nextNode().getName());
                 }
             } catch (RepositoryException e) {
-                //do nothing, just do not list child nodes
+                // do nothing, just do not list child nodes
             }
         }
         return ids.toArray();
@@ -469,12 +469,11 @@
         return node;
     }
 
-    //---------- Helper -------------------------------------------------------
+    // ---------- Helper -------------------------------------------------------
 
     private Object toScriptableItemMap(Iterator<?> iter) {
-        Object[] args = (iter != null) ? new Object[] { iter } : null;
-        return ScriptRuntime.newObject(Context.getCurrentContext(), this,
-            ScriptableItemMap.CLASSNAME, args);
+        Object[] args = (iter != null) ? new Object[] {iter} : null;
+        return ScriptRuntime.newObject(Context.getCurrentContext(), this, ScriptableItemMap.CLASSNAME, args);
     }
 
     /**
@@ -563,6 +562,5 @@
             }
             return delegatee;
         }
-
     }
 }
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptablePrintWriter.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptablePrintWriter.java
index 41389ff..27196eb 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptablePrintWriter.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptablePrintWriter.java
@@ -1,26 +1,28 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
+import javax.servlet.http.HttpServletRequest;
+
 import java.io.PrintWriter;
 import java.util.Locale;
 
-import javax.servlet.http.HttpServletRequest;
-
 import org.apache.sling.api.scripting.SlingBindings;
 import org.apache.sling.scripting.javascript.SlingWrapper;
 import org.mozilla.javascript.Context;
@@ -33,15 +35,14 @@
 public class ScriptablePrintWriter extends ScriptableObject implements SlingWrapper {
 
     public static final String CLASSNAME = "PrintWriter";
-    private static final Class<?> [] WRAPPED_CLASSES = { PrintWriter.class };
+    private static final Class<?>[] WRAPPED_CLASSES = {PrintWriter.class};
 
     private PrintWriter writer;
 
     // the locale to use for printf
     private Locale locale;
 
-    public ScriptablePrintWriter() {
-    }
+    public ScriptablePrintWriter() {}
 
     public ScriptablePrintWriter(PrintWriter writer) {
         this.writer = writer;
@@ -56,21 +57,19 @@
         return CLASSNAME;
     }
 
-    public Class<?> [] getWrappedClasses() {
+    public Class<?>[] getWrappedClasses() {
         return WRAPPED_CLASSES;
     }
-    
+
     // print args to writer if any
     // this method supports write(Object)
-    public static void jsFunction_write(Context cx, Scriptable thisObj,
-            Object[] args, Function funObj) {
+    public static void jsFunction_write(Context cx, Scriptable thisObj, Object[] args, Function funObj) {
         print(thisObj, args);
     }
 
     // print args to writer if any
     // this method supports print(Object)
-    public static void jsFunction_print(Context cx, Scriptable thisObj,
-            Object[] args, Function funObj) {
+    public static void jsFunction_print(Context cx, Scriptable thisObj, Object[] args, Function funObj) {
         print(thisObj, args);
     }
 
@@ -79,8 +78,7 @@
     // format string followed by format arguments.
     // This method supports printf(Locale, String, Object...) and
     // printf(String, Object...)
-    public static void jsFunction_printf(Context cx, Scriptable thisObj,
-            Object[] args, Function funObj) {
+    public static void jsFunction_printf(Context cx, Scriptable thisObj, Object[] args, Function funObj) {
 
         if (args.length > 0) {
 
@@ -112,8 +110,7 @@
                 // arguments starting after that are formatting arguments
                 nextIdx++;
                 Object[] formatArgs = new Object[args.length - nextIdx];
-                System.arraycopy(args, nextIdx, formatArgs, 0,
-                    formatArgs.length);
+                System.arraycopy(args, nextIdx, formatArgs, 0, formatArgs.length);
 
                 // now get the writer and call printf
                 PrintWriter writer = ((ScriptablePrintWriter) thisObj).writer;
@@ -124,8 +121,7 @@
 
     // print args to the writer (if any) and append a line feed
     // this method supports println(Object)
-    public static void jsFunction_println(Context cx, Scriptable thisObj,
-            Object[] args, Function funObj) {
+    public static void jsFunction_println(Context cx, Scriptable thisObj, Object[] args, Function funObj) {
         print(thisObj, args).println();
     }
 
@@ -153,11 +149,10 @@
     //    - Otherwise or if getLocale returns null, we use the platform default
     private Locale getLocale() {
         if (locale == null) {
-            
+
             try {
                 // check whether we have a request object which has the locale
-                Object reqObj = ScriptRuntime.name(Context.getCurrentContext(),
-                    this, SlingBindings.REQUEST);
+                Object reqObj = ScriptRuntime.name(Context.getCurrentContext(), this, SlingBindings.REQUEST);
                 if (reqObj instanceof Wrapper) {
                     Object wrapped = ((Wrapper) reqObj).unwrap();
                     if (wrapped instanceof HttpServletRequest) {
@@ -172,7 +167,6 @@
             if (locale == null) {
                 locale = Locale.getDefault();
             }
-
         }
 
         return locale;
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableProperty.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableProperty.java
index ce6bce7..93529d2 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableProperty.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableProperty.java
@@ -33,7 +33,7 @@
 
     public static final String CLASSNAME = "Property";
 
-    private static final Class<?>[] WRAPPED_CLASSES = { Property.class };
+    private static final Class<?>[] WRAPPED_CLASSES = {Property.class};
 
     /**
      * The wrapped JCR Property instance. Will be {@code null} if the
@@ -42,8 +42,7 @@
      */
     private Property property;
 
-    public ScriptableProperty() {
-    }
+    public ScriptableProperty() {}
 
     public void jsConstructor(Object res) {
         this.property = (Property) res;
@@ -263,11 +262,11 @@
     @Override
     public Object get(String name, Scriptable start) {
         final Object fromSuperclass = super.get(name, start);
-        if(fromSuperclass != Scriptable.NOT_FOUND) {
+        if (fromSuperclass != Scriptable.NOT_FOUND) {
             return fromSuperclass;
         }
 
-        if(property == null) {
+        if (property == null) {
             return Undefined.instance;
         }
 
@@ -306,4 +305,4 @@
     protected Object getWrappedObject() {
         return property;
     }
-}
\ No newline at end of file
+}
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableResource.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableResource.java
index cf6e88c..957847e 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableResource.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableResource.java
@@ -1,18 +1,20 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
@@ -55,20 +57,18 @@
  * <li>[Object] properties</li>
  * </ul>
  */
-public class ScriptableResource extends ScriptableObject implements
-        SlingWrapper {
+public class ScriptableResource extends ScriptableObject implements SlingWrapper {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(ScriptableResource.class);
 
     public static final String CLASSNAME = "Resource";
 
-    private static final Class<?>[] WRAPPED_CLASSES = { Resource.class };
+    private static final Class<?>[] WRAPPED_CLASSES = {Resource.class};
 
     private Resource resource;
     private ValueMap properties;
 
-    public ScriptableResource() {
-    }
+    public ScriptableResource() {}
 
     public ScriptableResource(Resource resource) {
         this.resource = resource;
@@ -271,8 +271,7 @@
      *         the resource does not adapt to the required type or if the
      *         argument is of the wrong type or missing.
      */
-    public static Object jsFunction_adaptTo(Context cx, Scriptable thisObj,
-            Object[] args, Function funObj) {
+    public static Object jsFunction_adaptTo(Context cx, Scriptable thisObj, Object[] args, Function funObj) {
 
         // get and unwrap the argument
         Object arg = (args.length > 0) ? args[0] : null;
@@ -299,7 +298,6 @@
             } catch (Exception e) {
                 LOGGER.error("Unable to adapt object.", e);
             }
-
         }
 
         if (adapter != null) {
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableVersion.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableVersion.java
index 3a5944d..6adda82 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableVersion.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableVersion.java
@@ -1,18 +1,20 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
@@ -23,14 +25,14 @@
 public class ScriptableVersion extends ScriptableNode {
 
     public static final String CLASSNAME = "Version";
-    private static final Class<?> [] WRAPPED_CLASSES = { Version.class };
+    private static final Class<?>[] WRAPPED_CLASSES = {Version.class};
 
     private Version version;
 
     @Override
     public void jsConstructor(Object res) {
         super.jsConstructor(res);
-        version = (Version)res;
+        version = (Version) res;
     }
 
     @Override
@@ -52,4 +54,4 @@
     protected Object getWrappedObject() {
         return version;
     }
-}
\ No newline at end of file
+}
diff --git a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableVersionHistory.java b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableVersionHistory.java
index 267a348..142ebb1 100644
--- a/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableVersionHistory.java
+++ b/src/main/java/org/apache/sling/scripting/javascript/wrapper/ScriptableVersionHistory.java
@@ -1,18 +1,20 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
@@ -23,14 +25,14 @@
 public class ScriptableVersionHistory extends ScriptableNode {
 
     public static final String CLASSNAME = "VersionHistory";
-    private static final Class<?> [] WRAPPED_CLASSES = { VersionHistory.class };
+    private static final Class<?>[] WRAPPED_CLASSES = {VersionHistory.class};
 
     private VersionHistory versionHistory;
 
     @Override
     public void jsConstructor(Object res) {
         super.jsConstructor(res);
-        versionHistory = (VersionHistory)res;
+        versionHistory = (VersionHistory) res;
     }
 
     @Override
@@ -52,4 +54,4 @@
     protected Object getWrappedObject() {
         return versionHistory;
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/apache/sling/scripting/javascript/RepositoryScriptingTestBase.java b/src/test/java/org/apache/sling/scripting/javascript/RepositoryScriptingTestBase.java
index 0318332..e630f28 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/RepositoryScriptingTestBase.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/RepositoryScriptingTestBase.java
@@ -27,13 +27,12 @@
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 
-
 /** Base class for tests which need a Repository
  *  and scripting functionality */
 public class RepositoryScriptingTestBase extends RepositoryTestBase {
     protected ScriptEngineHelper script;
     private int counter;
-    
+
     @Override
     @BeforeEach
     protected void setUp() throws Exception {
@@ -50,5 +49,4 @@
     protected Node getNewNode() throws RepositoryException, NamingException {
         return getTestRootNode().addNode("test-" + (++counter));
     }
-
 }
diff --git a/src/test/java/org/apache/sling/scripting/javascript/TestSetupTest.java b/src/test/java/org/apache/sling/scripting/javascript/TestSetupTest.java
index 673b611..710881b 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/TestSetupTest.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/TestSetupTest.java
@@ -21,27 +21,26 @@
 import org.apache.sling.scripting.javascript.internal.ScriptEngineHelper;
 import org.junit.jupiter.api.Test;
 
-
 /** Verify that our test environment works */
 class TestSetupTest extends RepositoryScriptingTestBase {
-    
+
     /** Test our test repository setup */
     @Test
     void testRootNode() throws Exception {
         assertNotNull(getTestRootNode());
     }
-    
+
     /** Test our script engine setup */
     @Test
     void testScripting() throws Exception {
-        assertEquals("something",script.evalToString("out.print('something')"));
+        assertEquals("something", script.evalToString("out.print('something')"));
     }
-    
+
     @Test
     void testScriptingWithData() throws Exception {
         final ScriptEngineHelper.Data data = new ScriptEngineHelper.Data();
         data.put("a", "A");
         data.put("b", "B");
-        assertEquals("A1",script.evalToString("out.print(a + b.length)", data));
+        assertEquals("A1", script.evalToString("out.print(a + b.length)", data));
     }
 }
diff --git a/src/test/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactoryTest.java b/src/test/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactoryTest.java
index 218e1c6..d590351 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactoryTest.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineFactoryTest.java
@@ -1,33 +1,33 @@
-/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- ~ Licensed to the Apache Software Foundation (ASF) under one
- ~ or more contributor license agreements.  See the NOTICE file
- ~ distributed with this work for additional information
- ~ regarding copyright ownership.  The ASF licenses this file
- ~ to you under the Apache License, Version 2.0 (the
- ~ "License"); you may not use this file except in compliance
- ~ with the License.  You may obtain a copy of the License at
- ~
- ~   http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing,
- ~ software distributed under the License is distributed on an
- ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- ~ KIND, either express or implied.  See the License for the
- ~ specific language governing permissions and limitations
- ~ under the License.
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.sling.scripting.javascript.internal;
 
-import java.util.Arrays;
-
 import javax.script.ScriptEngineFactory;
 
+import java.util.Arrays;
+
 import org.apache.sling.commons.classloader.DynamicClassLoaderManager;
 import org.apache.sling.scripting.api.ScriptCache;
 import org.apache.sling.testing.mock.osgi.junit5.OsgiContext;
 import org.apache.sling.testing.mock.osgi.junit5.OsgiContextExtension;
-import org.junit.jupiter.api.extension.ExtendWith;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -42,15 +42,20 @@
     @Test
     void testRegistrationProperties() {
         DynamicClassLoaderManager dynamicClassLoaderManager = mock(DynamicClassLoaderManager.class);
-        when(dynamicClassLoaderManager.getDynamicClassLoader()).thenReturn(RhinoJavaScriptEngineFactoryTest.class.getClassLoader());
+        when(dynamicClassLoaderManager.getDynamicClassLoader())
+                .thenReturn(RhinoJavaScriptEngineFactoryTest.class.getClassLoader());
         context.registerService(DynamicClassLoaderManager.class, dynamicClassLoaderManager);
         context.registerService(ScriptCache.class, mock(ScriptCache.class));
         context.registerInjectActivateService(new RhinoJavaScriptEngineFactory());
-        RhinoJavaScriptEngineFactory instance = (RhinoJavaScriptEngineFactory) context.getService(ScriptEngineFactory.class);
-        assertEquals(Arrays.asList("rhino", "Rhino", "javascript", "JavaScript", "ecmascript", "ECMAScript"), instance.getNames());
+        RhinoJavaScriptEngineFactory instance =
+                (RhinoJavaScriptEngineFactory) context.getService(ScriptEngineFactory.class);
+        assertEquals(
+                Arrays.asList("rhino", "Rhino", "javascript", "JavaScript", "ecmascript", "ECMAScript"),
+                instance.getNames());
         assertEquals("ECMAScript", instance.getLanguageName());
         assertEquals("partial ECMAScript 2015 support", instance.getLanguageVersion());
-        assertTrue( instance.getEngineName() != null && instance.getEngineName().contains("Rhino 1.7.7.1_1"), "Unexpected engine name" );
+        assertTrue(
+                instance.getEngineName() != null && instance.getEngineName().contains("Rhino 1.7.7.1_1"),
+                "Unexpected engine name");
     }
-
 }
diff --git a/src/test/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineTest.java b/src/test/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineTest.java
index 88c1508..577b052 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineTest.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngineTest.java
@@ -26,12 +26,12 @@
 import org.apache.sling.api.scripting.LazyBindings;
 import org.apache.sling.scripting.api.ScriptCache;
 import org.apache.sling.scripting.javascript.helper.SlingWrapFactory;
+import org.junit.jupiter.api.Test;
 import org.mockito.Mockito;
 import org.mozilla.javascript.Context;
 import org.mozilla.javascript.ImporterTopLevel;
 import org.mozilla.javascript.Scriptable;
 
-import org.junit.jupiter.api.Test;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -105,5 +105,4 @@
             return wrapFactory;
         }
     }
-
 }
diff --git a/src/test/java/org/apache/sling/scripting/javascript/internal/ScriptEngineHelper.java b/src/test/java/org/apache/sling/scripting/javascript/internal/ScriptEngineHelper.java
index 045eb9f..98fcb62 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/internal/ScriptEngineHelper.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/internal/ScriptEngineHelper.java
@@ -18,11 +18,6 @@
  */
 package org.apache.sling.scripting.javascript.internal;
 
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.HashMap;
-import java.util.Map;
 import javax.script.Bindings;
 import javax.script.ScriptContext;
 import javax.script.ScriptEngine;
@@ -30,6 +25,12 @@
 import javax.script.SimpleBindings;
 import javax.script.SimpleScriptContext;
 
+import java.io.OutputStreamWriter;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.util.HashMap;
+import java.util.Map;
+
 import org.apache.sling.commons.testing.osgi.MockBundle;
 import org.apache.sling.commons.testing.osgi.MockComponentContext;
 import org.apache.sling.scripting.api.ScriptCache;
@@ -61,13 +62,12 @@
         MockitoAnnotations.openMocks(this);
     }
 
-    public static class Data extends HashMap<String, Object> {
-    }
+    public static class Data extends HashMap<String, Object> {}
 
     private ScriptEngine getEngine() {
         if (engine == null) {
             synchronized (ScriptEngineHelper.class) {
-                factory.activate( new RhinoMockComponentContext(), factoryConfiguration);
+                factory.activate(new RhinoMockComponentContext(), factoryConfiguration);
                 engine = factory.getScriptEngine();
             }
         }
@@ -78,20 +78,17 @@
         return evalToString(javascriptCode, null);
     }
 
-    public Object eval(String javascriptCode, Map<String, Object> data)
-            throws ScriptException {
+    public Object eval(String javascriptCode, Map<String, Object> data) throws ScriptException {
         return eval(javascriptCode, data, new StringWriter());
     }
 
-    public String evalToString(String javascriptCode, Map<String, Object> data)
-            throws ScriptException {
+    public String evalToString(String javascriptCode, Map<String, Object> data) throws ScriptException {
         final StringWriter sw = new StringWriter();
         eval(javascriptCode, data, sw);
         return sw.toString();
     }
 
-    public Object eval(String javascriptCode, Map<String, Object> data,
-            final StringWriter sw) throws ScriptException {
+    public Object eval(String javascriptCode, Map<String, Object> data, final StringWriter sw) throws ScriptException {
         final PrintWriter pw = new PrintWriter(sw, true);
         ScriptContext ctx = new SimpleScriptContext();
 
diff --git a/src/test/java/org/apache/sling/scripting/javascript/internal/TestPathRegexp.java b/src/test/java/org/apache/sling/scripting/javascript/internal/TestPathRegexp.java
index 691369c..ed423d9 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/internal/TestPathRegexp.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/internal/TestPathRegexp.java
@@ -19,25 +19,26 @@
 package org.apache.sling.scripting.javascript.internal;
 
 import org.junit.jupiter.api.Test;
+
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
 class TestPathRegexp {
 
-	@Test
-	void testParentPath() {
-		String regexp = "([^/]*/)?[^/]*/\\.\\./";
-		assertEquals("math", "/../math".replaceAll(regexp, ""));
-		assertEquals("math", "increment/../math".replaceAll(regexp, ""));
-		assertEquals("math", "foo/increment/../math".replaceAll(regexp, ""));
-		assertEquals("foo/math", "foo/bar/increment/../math".replaceAll(regexp, ""));
-	}
+    @Test
+    void testParentPath() {
+        String regexp = "([^/]*/)?[^/]*/\\.\\./";
+        assertEquals("math", "/../math".replaceAll(regexp, ""));
+        assertEquals("math", "increment/../math".replaceAll(regexp, ""));
+        assertEquals("math", "foo/increment/../math".replaceAll(regexp, ""));
+        assertEquals("foo/math", "foo/bar/increment/../math".replaceAll(regexp, ""));
+    }
 
-	@Test
-	void testCurrentPath() {
-		String regexp = "[^/]*/\\./";
-		assertEquals("math", "/./math".replaceAll(regexp, ""));
-		assertEquals("math", "increment/./math".replaceAll(regexp, ""));
-		assertEquals("foo/math", "foo/increment/./math".replaceAll(regexp, ""));
-		assertEquals("foo/bar/math", "foo/bar/increment/./math".replaceAll(regexp, ""));
-	}
+    @Test
+    void testCurrentPath() {
+        String regexp = "[^/]*/\\./";
+        assertEquals("math", "/./math".replaceAll(regexp, ""));
+        assertEquals("math", "increment/./math".replaceAll(regexp, ""));
+        assertEquals("foo/math", "foo/increment/./math".replaceAll(regexp, ""));
+        assertEquals("foo/bar/math", "foo/bar/increment/./math".replaceAll(regexp, ""));
+    }
 }
diff --git a/src/test/java/org/apache/sling/scripting/javascript/io/EspReaderTest.java b/src/test/java/org/apache/sling/scripting/javascript/io/EspReaderTest.java
index c10acdf..d8c9e77 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/io/EspReaderTest.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/io/EspReaderTest.java
@@ -18,12 +18,13 @@
  */
 package org.apache.sling.scripting.javascript.io;
 
+import javax.script.ScriptException;
+
 import java.io.IOException;
 import java.io.Reader;
 import java.io.StringReader;
 import java.util.stream.Stream;
 
-import javax.script.ScriptException;
 import org.apache.sling.scripting.javascript.internal.ScriptEngineHelper;
 import org.junit.jupiter.api.Named;
 import org.junit.jupiter.api.Test;
@@ -112,20 +113,20 @@
         assertEquals("out=response.writer;out.write(\"test\");", parse("test"));
         assertEquals("out=response.writer;out.write(\"test\\n\");\nout.write(\"test2\");", parse("test\ntest2"));
     }
-    
+
     /** Test with a custom "out" initialization */
     @Test
     void testOutInit() throws IOException {
         final String input = "test";
         final String expected = "out=getOut();out.write(\"test\");";
-            
+
         StringBuffer buf = new StringBuffer();
 
         EspReader r = new EspReader(new StringReader(input));
         r.setOutInitStatement("out=getOut();");
         int c;
-        while ( (c=r.read()) >= 0) {
-            buf.append( (char) c);
+        while ((c = r.read()) >= 0) {
+            buf.append((char) c);
         }
 
         assertEquals(expected, buf.toString());
@@ -142,7 +143,9 @@
     @Test
     void testExpr() throws IOException {
         assertEquals("out=response.writer;out.write( x + 1 );", parse("<%= x + 1 %>"));
-        assertEquals("out=response.writer;out.write(\"<!-- \");out.write( x + 1 );out.write(\" -->\");", parse("<!-- <%= x + 1 %> -->"));
+        assertEquals(
+                "out=response.writer;out.write(\"<!-- \");out.write( x + 1 );out.write(\" -->\");",
+                parse("<!-- <%= x + 1 %> -->"));
     }
 
     /** Test JavaScript comment */
@@ -154,77 +157,68 @@
     @ParameterizedTest
     @MethodSource("CompactExpressionCases")
     void testCompactExpressions(final String input, final String expected) throws IOException {
-    	final String actual = parse(input);
+        final String actual = parse(input);
         assertEquals(flatten(expected), flatten(actual));
     }
 
     static Stream<Arguments> CompactExpressionCases() {
-        return Stream.of( 
-            Arguments.of(
-                // input 
-                Named.of("testCompactExpressionsDouble", "<html version=\"${1+1}\">\n"),
-                // expected
-                "out=response.writer;out.write(\"<html version=\\\"\");out.write(1+1);out.write(\"\\\">\\n\");\n"
-            ),
-            Arguments.of(
-                // input
-                Named.of("testCompactExpressionsDoubleNegative", "<html version=\"{1+1}\">\n"),
-                // expected
-                "out=response.writer;out.write(\"<html version=\\\"{1+1}\\\">\\n\");\n"
-            ),
-            Arguments.of(
-                // input
-                Named.of("testCompactExpressionsSingle", "<html version='${1+1}'>\n"),
-                // expected
-                "out=response.writer;out.write(\"<html version='\");out.write(1+1);out.write(\"'>\\n\");\n"
-            ),
-            Arguments.of(
-                // input
-                Named.of("testCompactExpressionsSingleNegative", "<html version='{1+1}'>\n"),
-                // expected
-                "out=response.writer;out.write(\"<html version='{1+1}'>\\n\");\n"
-            )
-        );
+        return Stream.of(
+                Arguments.of(
+                        // input
+                        Named.of("testCompactExpressionsDouble", "<html version=\"${1+1}\">\n"),
+                        // expected
+                        "out=response.writer;out.write(\"<html version=\\\"\");out.write(1+1);out.write(\"\\\">\\n\");\n"),
+                Arguments.of(
+                        // input
+                        Named.of("testCompactExpressionsDoubleNegative", "<html version=\"{1+1}\">\n"),
+                        // expected
+                        "out=response.writer;out.write(\"<html version=\\\"{1+1}\\\">\\n\");\n"),
+                Arguments.of(
+                        // input
+                        Named.of("testCompactExpressionsSingle", "<html version='${1+1}'>\n"),
+                        // expected
+                        "out=response.writer;out.write(\"<html version='\");out.write(1+1);out.write(\"'>\\n\");\n"),
+                Arguments.of(
+                        // input
+                        Named.of("testCompactExpressionsSingleNegative", "<html version='{1+1}'>\n"),
+                        // expected
+                        "out=response.writer;out.write(\"<html version='{1+1}'>\\n\");\n"));
     }
 
     /** Test a complete template, using all features */
     @Test
     void testCompleteTemplate() throws IOException {
-        final String input =
-            "<html>\n"
-            + "<head><title><%= someExpr %></title></head>\n"
-            + "<!-- some HTML comment -->\n"
-            + "<-- some ESP comment -->\n"
-            + "// some javascript comment\n"
-            + "/* another javascript comment /*\n"
-            + "<%\n"
-            + "expr on\n"
-            + "two lines\n"
-            + "%>\n"
-            + "<verbatim stuff=\"quoted\">xyz</verbatim>\n"
-            + "<moreverbatim stuff=\'single\'>xx</moreverbatim>\n"
-            + "<!-- HTML comment with <% expr.here; %> and EOL\n-->\n"
-            + "</html>"
-        ;
-        
-        final String expected = 
-            "out=response.writer;out.write(\"<html>\\n\");\n"
-            + "out.write(\"<head><title>\");out.write( someExpr );out.write(\"</title></head>\\n\");\n"
-            + "out.write(\"<!-- some HTML comment -->\\n\");\n"
-            + "out.write(\"<-- some ESP comment -->\\n\");\n"
-            + "out.write(\"// some javascript comment\\n\");\n"
-            + "out.write(\"/* another javascript comment /*\\n\");\n"
-            + "\n"
-            + "expr on\n"
-            + "two lines\n"
-            + "out.write(\"\\n\");\n"
-            + "out.write(\"<verbatim stuff=\\\"quoted\\\">xyz</verbatim>\\n\");\n"
-            + "out.write(\"<moreverbatim stuff='single'>xx</moreverbatim>\\n\");\n"
-            + "out.write(\"<!-- HTML comment with \"); expr.here; out.write(\" and EOL\\n\");\n"
-            + "out.write(\"-->\\n\");\n"
-            + "out.write(\"</html>\");"
-        ;
-        
+        final String input = "<html>\n"
+                + "<head><title><%= someExpr %></title></head>\n"
+                + "<!-- some HTML comment -->\n"
+                + "<-- some ESP comment -->\n"
+                + "// some javascript comment\n"
+                + "/* another javascript comment /*\n"
+                + "<%\n"
+                + "expr on\n"
+                + "two lines\n"
+                + "%>\n"
+                + "<verbatim stuff=\"quoted\">xyz</verbatim>\n"
+                + "<moreverbatim stuff=\'single\'>xx</moreverbatim>\n"
+                + "<!-- HTML comment with <% expr.here; %> and EOL\n-->\n"
+                + "</html>";
+
+        final String expected = "out=response.writer;out.write(\"<html>\\n\");\n"
+                + "out.write(\"<head><title>\");out.write( someExpr );out.write(\"</title></head>\\n\");\n"
+                + "out.write(\"<!-- some HTML comment -->\\n\");\n"
+                + "out.write(\"<-- some ESP comment -->\\n\");\n"
+                + "out.write(\"// some javascript comment\\n\");\n"
+                + "out.write(\"/* another javascript comment /*\\n\");\n"
+                + "\n"
+                + "expr on\n"
+                + "two lines\n"
+                + "out.write(\"\\n\");\n"
+                + "out.write(\"<verbatim stuff=\\\"quoted\\\">xyz</verbatim>\\n\");\n"
+                + "out.write(\"<moreverbatim stuff='single'>xx</moreverbatim>\\n\");\n"
+                + "out.write(\"<!-- HTML comment with \"); expr.here; out.write(\" and EOL\\n\");\n"
+                + "out.write(\"-->\\n\");\n"
+                + "out.write(\"</html>\");";
+
         final String actual = parse(input);
         assertEquals(flatten(expected), flatten(actual));
     }
@@ -236,23 +230,23 @@
         String expected = "out=response.writer;out.write( 1 );";
         String actual = parse(input);
         assertEquals(expected, actual);
-        
+
         input = "<%= \"1\" %>";
         expected = "out=response.writer;out.write( \"1\" );";
         actual = parse(input);
         assertEquals(expected, actual);
-        
+
         input = "<%= '1' %>";
         expected = "out=response.writer;out.write( '1' );";
         actual = parse(input);
         assertEquals(expected, actual);
     }
-    
+
     /** Test a complete template, using all features */
     @Test
     void testNumericExpressionOutput() throws ScriptException {
         ScriptEngineHelper script = new ScriptEngineHelper();
-        
+
         String input = "out.write( 1 );";
         String actual = script.evalToString(input);
         String expected = "1";
@@ -268,57 +262,47 @@
         expected = "1";
         assertEquals(expected, actual);
     }
-    
+
     @Test
     void testColon() throws IOException {
         final String input = "currentNode.text:<%= currentNode.text %>";
-        final String expected = 
-            "out=response.writer;" 
-            + "out.write(\"currentNode.text:\");"
-            + "out.write( currentNode.text );"
-            ;
+        final String expected =
+                "out=response.writer;" + "out.write(\"currentNode.text:\");" + "out.write( currentNode.text );";
         final String actual = parse(input);
         assertEquals(expected, actual);
     }
-    
+
     @Test
     void testEqualSigns() throws IOException {
         final String input = "currentNode.text=<%= currentNode.text %>";
-        final String expected = 
-            "out=response.writer;" 
-            + "out.write(\"currentNode.text=\");"
-            + "out.write( currentNode.text );"
-            ;
+        final String expected =
+                "out=response.writer;" + "out.write(\"currentNode.text=\");" + "out.write( currentNode.text );";
         final String actual = parse(input);
         assertEquals(expected, actual);
     }
-    
+
     @Test
     void testSingleQuoted() throws IOException {
         final String input = "currentNode.text='<%= currentNode.text %>'";
-        final String expected = 
-            "out=response.writer;" 
-            + "out.write(\"currentNode.text='\");"
-            + "out.write( currentNode.text );"
-            + "out.write(\"'\");"
-            ;
+        final String expected = "out=response.writer;"
+                + "out.write(\"currentNode.text='\");"
+                + "out.write( currentNode.text );"
+                + "out.write(\"'\");";
         final String actual = parse(input);
         assertEquals(expected, actual);
     }
-    
+
     @Test
     void testDoubleQuoted() throws IOException {
         final String input = "currentNode.text=\"<%= currentNode.text %>\"";
-        final String expected = 
-            "out=response.writer;" 
-            + "out.write(\"currentNode.text=\\\"\");"
-            + "out.write( currentNode.text );"
-            + "out.write(\"\\\"\");"
-            ;
+        final String expected = "out=response.writer;"
+                + "out.write(\"currentNode.text=\\\"\");"
+                + "out.write( currentNode.text );"
+                + "out.write(\"\\\"\");";
         final String actual = parse(input);
         assertEquals(expected, actual);
     }
-    
+
     /** Helper to pass an ESP text through the EspReader and return the result */
     private String parse(String text) throws IOException {
         StringBuffer buf = new StringBuffer();
@@ -326,16 +310,16 @@
         Reader r = new EspReader(new StringReader(text));
         try {
             int c;
-            while ( (c=r.read()) >= 0) {
-                buf.append( (char) c);
+            while ((c = r.read()) >= 0) {
+                buf.append((char) c);
             }
 
             return buf.toString();
         } finally {
             r.close();
-        } 
+        }
     }
-    
+
     /** Replace \n with . in strings to make it easier to compare visually for testing */
     private static String flatten(String str) {
         return str.replace('\n', '.');
diff --git a/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableMapTest.java b/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableMapTest.java
index 3f05d14..5cb4bd1 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableMapTest.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableMapTest.java
@@ -1,24 +1,27 @@
 /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
- *     http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
-import java.util.HashMap;
 import javax.script.ScriptException;
 
+import java.util.HashMap;
+
 import org.apache.sling.api.resource.ValueMap;
 import org.apache.sling.api.wrappers.ValueMapDecorator;
 import org.apache.sling.scripting.javascript.RepositoryScriptingTestBase;
@@ -27,7 +30,6 @@
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
-
 class ScriptableMapTest extends RepositoryScriptingTestBase {
 
     private ValueMap valueMap;
@@ -37,10 +39,12 @@
     @BeforeEach
     public void setUp() throws Exception {
         super.setUp();
-        valueMap = new ValueMapDecorator(new HashMap<String, Object>() {{
-            put("a", "a");
-            put("b", 1);
-        }});
+        valueMap = new ValueMapDecorator(new HashMap<String, Object>() {
+            {
+                put("a", "a");
+                put("b", 1);
+            }
+        });
         data = new ScriptEngineHelper.Data();
         data.put("properties", valueMap);
     }
@@ -65,4 +69,4 @@
     void testJavaMethods() throws ScriptException {
         assertEquals(2, script.eval("properties.size()", data));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableNodeTest.java b/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableNodeTest.java
index 6372add..08ba279 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableNodeTest.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableNodeTest.java
@@ -18,19 +18,18 @@
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-
 import javax.jcr.Node;
 import javax.jcr.Property;
 import javax.jcr.Value;
 
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+
 import org.apache.sling.scripting.javascript.RepositoryScriptingTestBase;
 import org.apache.sling.scripting.javascript.internal.ScriptEngineHelper;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
-
 /** Test the ScriptableNode class "live", by retrieving
  *  Nodes from a Repository and executing javascript code
  *  using them.
@@ -76,114 +75,76 @@
     void testDefaultValue() throws Exception {
         final ScriptEngineHelper.Data data = new ScriptEngineHelper.Data();
         data.put("node", getTestRootNode());
-        assertEquals(
-                getTestRootNode().getPath(),
-                script.evalToString("out.print(node)", data)
-        );
+        assertEquals(getTestRootNode().getPath(), script.evalToString("out.print(node)", data));
     }
 
     @Test
     void testPrimaryNodeType() throws Exception {
         final ScriptEngineHelper.Data data = new ScriptEngineHelper.Data();
         data.put("node", getTestRootNode());
-        assertEquals(
-                "nt:unstructured",
-                script.evalToString("out.print(node.getPrimaryNodeType().getName())", data)
-        );
+        assertEquals("nt:unstructured", script.evalToString("out.print(node.getPrimaryNodeType().getName())", data));
     }
 
     @Test
     void testPrimaryNodeTypeProperty() throws Exception {
         final ScriptEngineHelper.Data data = new ScriptEngineHelper.Data();
         data.put("node", getTestRootNode());
-        assertEquals(
-                "nt:unstructured",
-                script.evalToString("out.print(node['jcr:primaryType'])", data)
-        );
+        assertEquals("nt:unstructured", script.evalToString("out.print(node['jcr:primaryType'])", data));
     }
 
     @Test
     void testViaPropertyNoWrappers() throws Exception {
-        assertEquals(
-            testText,
-            script.evalToString("out.print(property.value.string)", data)
-        );
+        assertEquals(testText, script.evalToString("out.print(property.value.string)", data));
     }
 
     @Test
     void testViaPropertyWithWrappers() throws Exception {
-        assertEquals(
-            textProperty.getString(),
-            script.evalToString("out.print(property)", data)
-        );
+        assertEquals(textProperty.getString(), script.evalToString("out.print(property)", data));
     }
 
     @Test
     void testViaNodeDirectPropertyAccess() throws Exception {
-        assertEquals(
-            testText,
-            script.evalToString("out.print(node.text)", data)
-        );
+        assertEquals(testText, script.evalToString("out.print(node.text)", data));
     }
 
     @Test
     void testViaPropertyNoWrappersNum() throws Exception {
-        assertEquals(
-            testNum,
-            script.eval("numProperty.value.getDouble()", data)
-        );
+        assertEquals(testNum, script.eval("numProperty.value.getDouble()", data));
     }
 
     @Test
     void testViaPropertyWithWrappersNum() throws Exception {
-        assertEquals(
-            testNum,
-            script.eval("0+numProperty", data)
-        );
+        assertEquals(testNum, script.eval("0+numProperty", data));
     }
 
     @Test
     void testViaNodeDirectPropertyAccessNum() throws Exception {
-        assertEquals(
-            testNum,
-            script.eval("node.num", data)
-        );
+        assertEquals(testNum, script.eval("node.num", data));
     }
 
     @Test
     void testViaPropertyNoWrappersCal() throws Exception {
-        assertEquals(
-                testCal.getTimeInMillis(),
-                script.eval("calProperty.value.getDate().getTimeInMillis()", data)
-        );
+        assertEquals(testCal.getTimeInMillis(), script.eval("calProperty.value.getDate().getTimeInMillis()", data));
     }
 
     @Test
     void testViaNodeDirectPropertyAccessCal() throws Exception {
-    	final SimpleDateFormat f = new SimpleDateFormat(ScriptableCalendar.ECMA_DATE_FORMAT, ScriptableCalendar.DATE_FORMAT_LOCALE);
-    	final String expected = f.format(testCal.getTime());
-        assertEquals(
-                expected,
-                script.evalToString("out.print(node.cal)", data)
-        );
+        final SimpleDateFormat f =
+                new SimpleDateFormat(ScriptableCalendar.ECMA_DATE_FORMAT, ScriptableCalendar.DATE_FORMAT_LOCALE);
+        final String expected = f.format(testCal.getTime());
+        assertEquals(expected, script.evalToString("out.print(node.cal)", data));
     }
 
     @Test
     void testCalDateClass() throws Exception {
-        assertEquals(
-                "number",
-                script.evalToString("out.print(typeof node.cal.date.time)", data)
-        );
+        assertEquals("number", script.evalToString("out.print(typeof node.cal.date.time)", data));
     }
 
     @Test
     void testPropertyParent() throws Exception {
         // need to use node.getProperty('num') to have a ScriptableProperty,
         // node.num only returns a wrapped value
-        assertEquals(
-                "nt:unstructured",
-                script.eval("node.getProperty('num').parent['jcr:primaryType']", data)
-        );
+        assertEquals("nt:unstructured", script.eval("node.getProperty('num').parent['jcr:primaryType']", data));
     }
 
     @Test
@@ -191,21 +152,16 @@
         // call getAncestor which is not explicitly defined in ScriptableProperty,
         // to verify that all Property methods are available and that we get a
         // correctly wrapped result (SLING-397)
-        assertEquals(
-                "rep:root",
-                script.eval("node.getProperty('num').getAncestor(0)['jcr:primaryType']", data)
-        );
+        assertEquals("rep:root", script.eval("node.getProperty('num').getAncestor(0)['jcr:primaryType']", data));
     }
 
     @Test
     void testPropertiesIterationNoWrapper() throws Exception {
         final String code =
-            "var props = node.getProperties();"
-            + " for(i in props) { out.print(props[i].name); out.print(' '); }"
-        ;
+                "var props = node.getProperties();" + " for(i in props) { out.print(props[i].name); out.print(' '); }";
         final String result = script.evalToString(code, data);
-        final String [] names = { "text", "otherProperty" };
-        for(String name : names) {
+        final String[] names = {"text", "otherProperty"};
+        for (String name : names) {
             assertTrue("result (" + result + ") contains '" + name + "'", result.contains(name));
         }
     }
@@ -213,10 +169,7 @@
     @Test
     void testAddNodeDefaultType() throws Exception {
         final String path = "subdt_" + System.currentTimeMillis();
-        final String code =
-            "var n = node.addNode('" + path + "');\n"
-            + "out.print(n['jcr:primaryType']);\n"
-        ;
+        final String code = "var n = node.addNode('" + path + "');\n" + "out.print(n['jcr:primaryType']);\n";
         assertEquals("nt:unstructured", script.evalToString(code, data));
     }
 
@@ -224,20 +177,16 @@
     void testAddNodeSpecificType() throws Exception {
         final String path = "subst_" + System.currentTimeMillis();
         final String code =
-            "var n = node.addNode('" + path + "', 'nt:folder');\n"
-            + "out.print(n['jcr:primaryType']);\n"
-        ;
+                "var n = node.addNode('" + path + "', 'nt:folder');\n" + "out.print(n['jcr:primaryType']);\n";
         assertEquals("nt:folder", script.evalToString(code, data));
     }
 
     @Test
     void testGetNode() throws Exception {
         final String path = "subgn_" + System.currentTimeMillis();
-        final String code =
-            "node.addNode('" + path + "', 'nt:resource');\n"
-            + "var n=node.getNode('" + path + "');\n"
-            + "out.print(n['jcr:primaryType']);\n"
-        ;
+        final String code = "node.addNode('" + path + "', 'nt:resource');\n"
+                + "var n=node.getNode('" + path + "');\n"
+                + "out.print(n['jcr:primaryType']);\n";
         assertEquals("nt:resource", script.evalToString(code, data));
     }
 
@@ -250,37 +199,31 @@
     @Test
     void testGetNodesNoPattern() throws Exception {
         final String path = "subgnnp_" + System.currentTimeMillis();
-        final String code =
-            "node.addNode('" + path + "_A');\n"
-            + "node.addNode('" + path + "_B');\n"
-            + "var nodes = node.getNodes();\n"
-            + "for (i in nodes) { out.print(nodes[i].getName() + ' '); }\n"
-        ;
+        final String code = "node.addNode('" + path + "_A');\n"
+                + "node.addNode('" + path + "_B');\n"
+                + "var nodes = node.getNodes();\n"
+                + "for (i in nodes) { out.print(nodes[i].getName() + ' '); }\n";
         assertEquals(path + "_A " + path + "_B ", script.evalToString(code, data));
     }
 
     @Test
     void testGetNodesWithPattern() throws Exception {
         final String path = "subgnnp_" + System.currentTimeMillis();
-        final String code =
-            "node.addNode('1_" + path + "_A');\n"
-            + "node.addNode('1_" + path + "_B');\n"
-            + "node.addNode('2_" + path + "_C');\n"
-            + "var nodes = node.getNodes('1_*');\n"
-            + "for (i in nodes) { out.print(nodes[i].getName() + ' '); }\n"
-        ;
+        final String code = "node.addNode('1_" + path + "_A');\n"
+                + "node.addNode('1_" + path + "_B');\n"
+                + "node.addNode('2_" + path + "_C');\n"
+                + "var nodes = node.getNodes('1_*');\n"
+                + "for (i in nodes) { out.print(nodes[i].getName() + ' '); }\n";
         assertEquals("1_" + path + "_A 1_" + path + "_B ", script.evalToString(code, data));
     }
 
     @Test
     void testRemoveNode() throws Exception {
-        final String code =
-            "node.addNode('toremove');\n"
-            + "out.print(node.hasNode('toremove'))\n"
-            + "out.print(' ')\n"
-            + "node.getNode('toremove').remove()\n"
-            + "out.print(node.hasNode('toremove'))\n"
-        ;
+        final String code = "node.addNode('toremove');\n"
+                + "out.print(node.hasNode('toremove'))\n"
+                + "out.print(' ')\n"
+                + "node.getNode('toremove').remove()\n"
+                + "out.print(node.hasNode('toremove'))\n";
         assertEquals("true false", script.evalToString(code, data));
     }
 
@@ -294,14 +237,12 @@
     @Test
     void testChildNodeAccess() throws Exception {
         final String path = "subtcna_" + System.currentTimeMillis();
-        final String code =
-            "node.addNode('" + path + "');\n"
-            + "var n=node.getNode('" + path + "');\n"
-            + "out.print(n['jcr:primaryType']);\n"
-            + "out.print(' ');\n"
-            + "var n2=node['" + path + "'];\n"
-            + "out.print(n2['jcr:primaryType']);\n"
-        ;
+        final String code = "node.addNode('" + path + "');\n"
+                + "var n=node.getNode('" + path + "');\n"
+                + "out.print(n['jcr:primaryType']);\n"
+                + "out.print(' ');\n"
+                + "var n2=node['" + path + "'];\n"
+                + "out.print(n2['jcr:primaryType']);\n";
         assertEquals("nt:unstructured nt:unstructured", script.evalToString(code, data));
     }
 
@@ -323,26 +264,20 @@
 
     @Test
     void testIsNodeType() throws Exception {
-        final String code =
-            "out.print(node.isNodeType('nt:unstructured'));\n"
-            + "out.print(' ');\n"
-            + "out.print(node.isNodeType('nt:file'));"
-        ;
+        final String code = "out.print(node.isNodeType('nt:unstructured'));\n"
+                + "out.print(' ');\n"
+                + "out.print(node.isNodeType('nt:file'));";
         assertEquals("true false", script.evalToString(code, data));
     }
 
     @Test
     void testGetSession() throws Exception {
         assertEquals(
-                "Root node found via node.session",
-                "/",
-                script.eval("node.session.getRootNode().getPath()", data)
-        );
+                "Root node found via node.session", "/", script.eval("node.session.getRootNode().getPath()", data));
         assertEquals(
                 "Root node found via node.getSession()",
                 "/",
-                script.eval("node.getSession().getRootNode().getPath()", data)
-        );
+                script.eval("node.getSession().getRootNode().getPath()", data));
     }
 
     /**
@@ -359,7 +294,8 @@
         node.setProperty("singleRef", refNode1);
         node.setProperty("multiRef", new Value[] {
             session.getValueFactory().createValue(refNode1),
-            session.getValueFactory().createValue(refNode2) });
+            session.getValueFactory().createValue(refNode2)
+        });
 
         String code = "node['singleRef']";
         assertTrue(script.eval(code, data) instanceof Node);
diff --git a/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableResourceTest.java b/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableResourceTest.java
index c627459..b03e80a 100644
--- a/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableResourceTest.java
+++ b/src/test/java/org/apache/sling/scripting/javascript/wrapper/ScriptableResourceTest.java
@@ -18,13 +18,6 @@
  */
 package org.apache.sling.scripting.javascript.wrapper;
 
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.GregorianCalendar;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
 import javax.jcr.Item;
 import javax.jcr.NamespaceException;
 import javax.jcr.Node;
@@ -35,6 +28,14 @@
 import javax.jcr.RepositoryException;
 import javax.jcr.Value;
 
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.GregorianCalendar;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.sling.api.SlingConstants;
 import org.apache.sling.api.resource.Resource;
@@ -46,18 +47,17 @@
 import org.apache.sling.jcr.resource.api.JcrResourceConstants;
 import org.apache.sling.scripting.javascript.RepositoryScriptingTestBase;
 import org.apache.sling.scripting.javascript.internal.ScriptEngineHelper;
-import org.apache.sling.testing.mock.sling.junit5.SlingContextExtension;
-import org.apache.sling.testing.mock.sling.junit5.SlingContext;
 import org.apache.sling.testing.mock.sling.ResourceResolverType;
+import org.apache.sling.testing.mock.sling.junit5.SlingContext;
+import org.apache.sling.testing.mock.sling.junit5.SlingContextExtension;
 import org.jetbrains.annotations.NotNull;
-import org.junit.jupiter.api.extension.ExtendWith;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
 import org.mozilla.javascript.Wrapper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-
 @ExtendWith(SlingContextExtension.class)
 class ScriptableResourceTest extends RepositoryScriptingTestBase {
 
@@ -81,9 +81,10 @@
         node = getNewNode();
 
         try {
-            node.getSession().getWorkspace().getNamespaceRegistry().registerNamespace(
-                SlingConstants.NAMESPACE_PREFIX,
-                JcrResourceConstants.SLING_NAMESPACE_URI);
+            node.getSession()
+                    .getWorkspace()
+                    .getNamespaceRegistry()
+                    .registerNamespace(SlingConstants.NAMESPACE_PREFIX, JcrResourceConstants.SLING_NAMESPACE_URI);
         } catch (NamespaceException ne) {
             // don't care, might happen if already registered
         }
@@ -95,8 +96,7 @@
         data.put("resource", new TestResource(node));
 
         // the path of the resource
-        assertEquals(node.getPath(), script.evalToString("out.print(resource)",
-            data));
+        assertEquals(node.getPath(), script.evalToString("out.print(resource)", data));
         assertEquals(node.getPath(), script.eval("resource.path", data));
         assertEquals(node.getPath(), script.eval("resource.getPath()", data));
     }
@@ -104,11 +104,8 @@
     @Test
     void testResourceType() throws Exception {
         // set resource and resource super type
-        node.setProperty(JcrResourceConstants.SLING_RESOURCE_TYPE_PROPERTY,
-            RESOURCE_TYPE);
-        node.setProperty(
-            JcrResourceConstants.SLING_RESOURCE_SUPER_TYPE_PROPERTY,
-            RESOURCE_SUPER_TYPE);
+        node.setProperty(JcrResourceConstants.SLING_RESOURCE_TYPE_PROPERTY, RESOURCE_TYPE);
+        node.setProperty(JcrResourceConstants.SLING_RESOURCE_SUPER_TYPE_PROPERTY, RESOURCE_SUPER_TYPE);
 
         final ScriptEngineHelper.Data data = new ScriptEngineHelper.Data();
         data.put("resource", new TestResource(node));
@@ -116,8 +113,7 @@
         // the resourceType of the resource
         assertEquals(RESOURCE_TYPE, script.eval("resource.type", data));
         assertEquals(RESOURCE_TYPE, script.eval("resource.resourceType", data));
-        assertEquals(RESOURCE_TYPE, script.eval("resource.getResourceType()",
-            data));
+        assertEquals(RESOURCE_TYPE, script.eval("resource.getResourceType()", data));
     }
 
     @Test
@@ -186,20 +182,15 @@
     @Test
     void testResourceSuperType() throws Exception {
         // set resource and resource super type
-        node.setProperty(JcrResourceConstants.SLING_RESOURCE_TYPE_PROPERTY,
-            RESOURCE_TYPE);
-        node.setProperty(
-            JcrResourceConstants.SLING_RESOURCE_SUPER_TYPE_PROPERTY,
-            RESOURCE_SUPER_TYPE);
+        node.setProperty(JcrResourceConstants.SLING_RESOURCE_TYPE_PROPERTY, RESOURCE_TYPE);
+        node.setProperty(JcrResourceConstants.SLING_RESOURCE_SUPER_TYPE_PROPERTY, RESOURCE_SUPER_TYPE);
 
         final ScriptEngineHelper.Data data = new ScriptEngineHelper.Data();
         data.put("resource", new TestResource(node));
 
         // the resourceType of the resource
-        assertEquals(RESOURCE_SUPER_TYPE, script.eval(
-            "resource.resourceSuperType", data));
-        assertEquals(RESOURCE_SUPER_TYPE, script.eval(
-            "resource.getResourceSuperType()", data));
+        assertEquals(RESOURCE_SUPER_TYPE, script.eval("resource.resourceSuperType", data));
+        assertEquals(RESOURCE_SUPER_TYPE, script.eval("resource.getResourceSuperType()", data));
     }
 
     @Test
@@ -209,8 +200,7 @@
 
         // official API
         assertResourceMetaData(script.eval("resource.resourceMetadata", data));
-        assertResourceMetaData(script.eval("resource.getResourceMetadata()",
-            data));
+        assertResourceMetaData(script.eval("resource.getResourceMetadata()", data));
 
         // deprecated mappings
         assertResourceMetaData(script.eval("resource.meta", data));
@@ -223,10 +213,8 @@
         data.put("resource", new TestResource(node));
 
         // official API
-        assertEquals(RESOURCE_RESOLVER, script.eval(
-            "resource.resourceResolver", data));
-        assertEquals(RESOURCE_RESOLVER, script.eval(
-            "resource.getResourceResolver()", data));
+        assertEquals(RESOURCE_RESOLVER, script.eval("resource.resourceResolver", data));
+        assertEquals(RESOURCE_RESOLVER, script.eval("resource.getResourceResolver()", data));
     }
 
     @Test
@@ -235,10 +223,8 @@
         data.put("resource", new TestResource(node));
 
         // the node to which the resource adapts
-        assertEquals(node, script.eval("resource.adaptTo('javax.jcr.Node')",
-            data));
-        assertEquals(node, script.eval(
-            "resource.adaptTo(Packages.javax.jcr.Node)", data));
+        assertEquals(node, script.eval("resource.adaptTo('javax.jcr.Node')", data));
+        assertEquals(node, script.eval("resource.adaptTo(Packages.javax.jcr.Node)", data));
     }
 
     @Test
@@ -261,7 +247,9 @@
         node.setProperty("test", "testProperties");
         node.getSession().save();
         data.put("resource", new TestResource(node));
-        assertEquals(date.getTimeInMillis(), script.eval("(resource.properties['jcr:lastModified']).getTimeInMillis()", data));
+        assertEquals(
+                date.getTimeInMillis(),
+                script.eval("(resource.properties['jcr:lastModified']).getTimeInMillis()", data));
         assertEquals("testProperties", script.eval("resource.properties.test", data));
     }
 
@@ -415,37 +403,33 @@
         }
 
         public Resource getChild(String relPath) {
-            try
-            {
-                Node childNode = node.getNode( relPath );
-                if ( childNode !=  null ) {
-                    return new TestResource( childNode );
+            try {
+                Node childNode = node.getNode(relPath);
+                if (childNode != null) {
+                    return new TestResource(childNode);
                 } else {
                     return null;
                 }
-            } catch ( RepositoryException re )
-            {
+            } catch (RepositoryException re) {
                 return null;
             }
         }
 
         public Resource getParent() {
-            try
-            {
+            try {
                 Node parentNode = node.getParent();
-                if ( parentNode !=  null ) {
-                    return new TestResource( parentNode );
+                if (parentNode != null) {
+                    return new TestResource(parentNode);
                 } else {
                     return null;
                 }
-            } catch ( RepositoryException re )
-            {
+            } catch (RepositoryException re) {
                 return null;
             }
         }
 
         public boolean isResourceType(String resourceType) {
-            return getResourceType().equals( resourceType );
+            return getResourceType().equals(resourceType);
         }
 
         public Iterator<Resource> listChildren() {
@@ -454,23 +438,17 @@
 
         @Override
         public @NotNull Iterable<Resource> getChildren() {
-            try
-            {
+            try {
                 List<Resource> childList = new ArrayList<Resource>();
                 NodeIterator it = node.getNodes();
-                while ( it.hasNext() )
-                {
+                while (it.hasNext()) {
                     Node nextNode = it.nextNode();
-                    childList.add( new TestResource( nextNode ) );
+                    childList.add(new TestResource(nextNode));
                 }
                 return childList;
-            } catch ( RepositoryException re )
-            {
+            } catch (RepositoryException re) {
                 return null;
             }
         }
-
-
     }
-
 }