tidy up
diff --git a/src/main/java/org/apache/log4j/xml/Log4jEntityResolver.java b/src/main/java/org/apache/log4j/xml/Log4jEntityResolver.java
index dfcd95d..4433680 100644
--- a/src/main/java/org/apache/log4j/xml/Log4jEntityResolver.java
+++ b/src/main/java/org/apache/log4j/xml/Log4jEntityResolver.java
@@ -32,15 +32,16 @@
  * */
 public class Log4jEntityResolver implements EntityResolver {
     private static final String PUBLIC_ID = "-//APACHE//DTD LOG4J 1.2//EN";
-    private static final Logger logger = LogManager.getLogger();
+    private static final Logger logger = LogManager.getLogger(Log4jEntityResolver.class);
 
     public InputSource resolveEntity(String publicId, String systemId) {
         if (systemId.endsWith("log4j.dtd") || PUBLIC_ID.equals(publicId)) {
             Class clazz = getClass();
             InputStream in = clazz.getResourceAsStream("/org/apache/log4j/xml/log4j.dtd");
             if (in == null) {
-                logger.warn("Could not find [log4j.dtd] using [" + clazz.getClassLoader()
-                        + "] class loader, parsed without DTD.");
+                logger.warn(
+                        "Could not find [log4j.dtd] using [{}] class loader, parsed without DTD.",
+                        clazz.getClassLoader());
                 in = new ByteArrayInputStream(new byte[0]);
             }
             return new InputSource(in);
diff --git a/src/main/java/org/apache/log4j/xml/LogFileXMLReceiver.java b/src/main/java/org/apache/log4j/xml/LogFileXMLReceiver.java
index d1a70db..036cc4a 100644
--- a/src/main/java/org/apache/log4j/xml/LogFileXMLReceiver.java
+++ b/src/main/java/org/apache/log4j/xml/LogFileXMLReceiver.java
@@ -56,6 +56,8 @@
  * @since 1.3
  */
 public class LogFileXMLReceiver extends ChainsawReceiverSkeleton {
+    private static final Logger logger = LogManager.getLogger(LogFileXMLReceiver.class);
+
     private String fileURL;
     private Rule expressionRule;
     private String filterExpression;
@@ -69,13 +71,6 @@
     private String path;
     private boolean useCurrentThread;
 
-    private static final Logger logger = LogManager.getLogger();
-
-    /**
-     * Accessor
-     *
-     * @return file URL
-     */
     public String getFileURL() {
         return fileURL;
     }
@@ -89,11 +84,6 @@
         this.fileURL = fileURL;
     }
 
-    /**
-     * Accessor
-     *
-     * @return
-     */
     public String getDecoder() {
         return decoder;
     }
@@ -107,20 +97,10 @@
         decoder = _decoder;
     }
 
-    /**
-     * Accessor
-     *
-     * @return filter expression
-     */
     public String getFilterExpression() {
         return filterExpression;
     }
 
-    /**
-     * Accessor
-     *
-     * @return tailing flag
-     */
     public boolean isTailing() {
         return tailing;
     }
@@ -146,10 +126,8 @@
     }
 
     private boolean passesExpression(ChainsawLoggingEvent event) {
-        if (event != null) {
-            if (expressionRule != null) {
-                return (expressionRule.evaluate(event, null));
-            }
+        if (event != null && expressionRule != null) {
+            return (expressionRule.evaluate(event, null));
         }
         return true;
     }
@@ -179,10 +157,10 @@
     private void process(Reader unbufferedReader) throws IOException {
         BufferedReader bufferedReader = new BufferedReader(unbufferedReader);
         char[] content = new char[10000];
-        logger.debug("processing starting: " + fileURL);
+        logger.debug("processing starting: {}", fileURL);
         int length;
         do {
-            System.out.println("in do loop-about to process");
+            logger.debug("in do loop-about to process");
             while ((length = bufferedReader.read(content)) > -1) {
                 processEvents(decoderInstance.decodeEvents(String.valueOf(content, 0, length)));
             }
@@ -190,30 +168,29 @@
                 try {
                     Thread.sleep(5000);
                 } catch (InterruptedException e) {
-                    // TODO Auto-generated catch block
-                    e.printStackTrace();
+                    logger.error(e, e);
                 }
             }
         } while (tailing);
-        logger.debug("processing complete: " + fileURL);
+        logger.debug("processing complete: {}", fileURL);
 
         shutdown();
     }
 
-    private void processEvents(Collection<ChainsawLoggingEvent> c) {
-        if (c == null) {
+    private void processEvents(Collection<ChainsawLoggingEvent> chainsawLoggingEvents) {
+        if (chainsawLoggingEvents == null) {
             return;
         }
 
-        for (ChainsawLoggingEvent evt : c) {
-            if (passesExpression(evt)) {
-                if (evt.getProperty(Constants.HOSTNAME_KEY) != null) {
-                    evt.setProperty(Constants.HOSTNAME_KEY, host);
+        for (ChainsawLoggingEvent event : chainsawLoggingEvents) {
+            if (passesExpression(event)) {
+                if (event.getProperty(Constants.HOSTNAME_KEY) != null) {
+                    event.setProperty(Constants.HOSTNAME_KEY, host);
                 }
-                if (evt.getProperty(Constants.APPLICATION_KEY) != null) {
-                    evt.setProperty(Constants.APPLICATION_KEY, path);
+                if (event.getProperty(Constants.APPLICATION_KEY) != null) {
+                    event.setProperty(Constants.APPLICATION_KEY, path);
                 }
-                append(evt);
+                append(event);
             }
         }
     }
@@ -253,8 +230,7 @@
                         }
                         path = url.getPath();
                     } catch (MalformedURLException e1) {
-                        // TODO Auto-generated catch block
-                        e1.printStackTrace();
+                        logger.error(e1, e1);
                     }
 
                     try {
@@ -262,7 +238,8 @@
                             expressionRule = ExpressionRule.getRule(filterExpression);
                         }
                     } catch (Exception e) {
-                        logger.warn("Invalid filter expression: " + filterExpression, e);
+                        logger.warn("Invalid filter expression: {}", filterExpression);
+                        logger.warn(e);
                     }
 
                     Class c;
@@ -273,8 +250,7 @@
                             decoderInstance = (Decoder) o;
                         }
                     } catch (ClassNotFoundException | IllegalAccessException | InstantiationException e) {
-                        // TODO Auto-generated catch block
-                        e.printStackTrace();
+                        logger.error(e, e);
                     }
 
                     try {
@@ -284,16 +260,15 @@
                         logger.info("file not available");
                     } catch (IOException ioe) {
                         logger.warn("unable to load file", ioe);
-                        return;
                     }
                 }
             }
         };
+
         if (useCurrentThread) {
             runnable.run();
         } else {
             Thread thread = new Thread(runnable, "LogFileXMLReceiver-" + getName());
-
             thread.start();
         }
     }
diff --git a/src/main/java/org/apache/log4j/xml/UtilLoggingXMLDecoder.java b/src/main/java/org/apache/log4j/xml/UtilLoggingXMLDecoder.java
index c45d855..bdb632b 100644
--- a/src/main/java/org/apache/log4j/xml/UtilLoggingXMLDecoder.java
+++ b/src/main/java/org/apache/log4j/xml/UtilLoggingXMLDecoder.java
@@ -32,6 +32,8 @@
 import org.apache.log4j.chainsaw.logevents.ChainsawLoggingEventBuilder;
 import org.apache.log4j.chainsaw.logevents.LocationInfo;
 import org.apache.log4j.spi.Decoder;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.w3c.dom.Document;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
@@ -45,6 +47,7 @@
  * @author Paul Smith (psmith@apache.org)
  */
 public class UtilLoggingXMLDecoder implements Decoder {
+    private static final Logger logger = LogManager.getLogger(UtilLoggingXMLDecoder.class);
     // NOTE: xml section is only handed on first delivery of events
     // on this first delivery of events, there is no end tag for the log element
     /**
@@ -74,9 +77,9 @@
     /**
      * Owner.
      */
-    private Component owner = null;
+    private final Component owner = null;
 
-    private ChainsawLoggingEventBuilder builder = new ChainsawLoggingEventBuilder();
+    private final ChainsawLoggingEventBuilder builder = new ChainsawLoggingEventBuilder();
 
     private static final String ENCODING = "UTF-8";
 
@@ -91,7 +94,7 @@
             docBuilder = dbf.newDocumentBuilder();
             docBuilder.setEntityResolver(new UtilLoggingEntityResolver());
         } catch (ParserConfigurationException pce) {
-            System.err.println("Unable to get document builder");
+            logger.error("Unable to get document builder");
         }
     }
 
@@ -147,7 +150,7 @@
             InputSource inputSource = new InputSource(new StringReader(buf.toString()));
             document = docBuilder.parse(inputSource);
         } catch (Exception e) {
-            e.printStackTrace();
+            logger.error(e, e);
         }
 
         return document;
@@ -200,7 +203,7 @@
                     reader.close();
                 }
             } catch (Exception e) {
-                e.printStackTrace();
+                logger.error(e, e);
             }
         }
         return v;
@@ -216,7 +219,6 @@
     public Vector<ChainsawLoggingEvent> decodeEvents(final String document) {
 
         if (document != null) {
-
             if (document.trim().isEmpty()) {
                 return null;
             }
@@ -271,7 +273,7 @@
 
         Vector<ChainsawLoggingEvent> events = decodeEvents(document);
 
-        if (events.size() > 0) {
+        if (!events.isEmpty()) {
             return events.firstElement();
         }
 
@@ -417,21 +419,21 @@
     /**
      * Get contents of CDATASection.
      *
-     * @param n CDATASection
+     * @param node CDATASection
      * @return text content of all text or CDATA children of node.
      */
-    private String getCData(final Node n) {
-        StringBuilder buf = new StringBuilder();
-        NodeList nl = n.getChildNodes();
+    private String getCData(final Node node) {
+        StringBuilder cDataBuilder = new StringBuilder();
+        NodeList nodeList = node.getChildNodes();
 
-        for (int x = 0; x < nl.getLength(); x++) {
-            Node innerNode = nl.item(x);
+        for (int x = 0; x < nodeList.getLength(); x++) {
+            Node innerNode = nodeList.item(x);
 
             if ((innerNode.getNodeType() == Node.TEXT_NODE) || (innerNode.getNodeType() == Node.CDATA_SECTION_NODE)) {
-                buf.append(innerNode.getNodeValue());
+                cDataBuilder.append(innerNode.getNodeValue());
             }
         }
 
-        return buf.toString();
+        return cDataBuilder.toString();
     }
 }
diff --git a/src/main/java/org/apache/log4j/xml/XMLDecoder.java b/src/main/java/org/apache/log4j/xml/XMLDecoder.java
index 518352e..de763d9 100644
--- a/src/main/java/org/apache/log4j/xml/XMLDecoder.java
+++ b/src/main/java/org/apache/log4j/xml/XMLDecoder.java
@@ -35,6 +35,8 @@
 import org.apache.log4j.chainsaw.logevents.ChainsawLoggingEventBuilder;
 import org.apache.log4j.chainsaw.logevents.LocationInfo;
 import org.apache.log4j.spi.Decoder;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.w3c.dom.Document;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
@@ -58,6 +60,7 @@
  * @author Paul Smith (psmith@apache.org)
  */
 public class XMLDecoder implements Decoder {
+    private static final Logger logger = LogManager.getLogger(XMLDecoder.class);
 
     private static final String ENCODING = "UTF-8";
 
@@ -94,7 +97,7 @@
      */
     private Component owner = null;
 
-    private ChainsawLoggingEventBuilder builder = new ChainsawLoggingEventBuilder();
+    private final ChainsawLoggingEventBuilder builder = new ChainsawLoggingEventBuilder();
 
     /**
      * Create new instance.
@@ -119,7 +122,7 @@
             //            docBuilder.setErrorHandler(new SAXErrorHandler());
             docBuilder.setEntityResolver(new Log4jEntityResolver());
         } catch (ParserConfigurationException pce) {
-            System.err.println("Unable to get document builder");
+            logger.error(pce, pce);
         }
     }
 
@@ -163,7 +166,7 @@
             InputSource inputSource = new InputSource(new StringReader(buf));
             document = docBuilder.parse(inputSource);
         } catch (Exception e) {
-            e.printStackTrace();
+            logger.error(e, e);
         }
 
         return document;
@@ -285,7 +288,7 @@
 
         Vector<ChainsawLoggingEvent> events = decodeEvents(document);
 
-        if (events.size() > 0) {
+        if (!events.isEmpty()) {
             return events.firstElement();
         }
 
@@ -464,21 +467,21 @@
     /**
      * Get contents of CDATASection.
      *
-     * @param n CDATASection
+     * @param node CDATASection
      * @return text content of all text or CDATA children of node.
      */
-    private String getCData(final Node n) {
-        StringBuilder buf = new StringBuilder();
-        NodeList nl = n.getChildNodes();
+    private String getCData(final Node node) {
+        StringBuilder cDataBuilder = new StringBuilder();
+        NodeList nodeList = node.getChildNodes();
 
-        for (int x = 0; x < nl.getLength(); x++) {
-            Node innerNode = nl.item(x);
+        for (int x = 0; x < nodeList.getLength(); x++) {
+            Node innerNode = nodeList.item(x);
 
             if ((innerNode.getNodeType() == Node.TEXT_NODE) || (innerNode.getNodeType() == Node.CDATA_SECTION_NODE)) {
-                buf.append(innerNode.getNodeValue());
+                cDataBuilder.append(innerNode.getNodeValue());
             }
         }
 
-        return buf.toString();
+        return cDataBuilder.toString();
     }
 }