Fix case sensitivity in configuration parsing
Fix VFS tailing, particularly with sftp (the filesystem needed to be closed)


Project: http://git-wip-us.apache.org/repos/asf/logging-chainsaw/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-chainsaw/commit/7329254a
Tree: http://git-wip-us.apache.org/repos/asf/logging-chainsaw/tree/7329254a
Diff: http://git-wip-us.apache.org/repos/asf/logging-chainsaw/diff/7329254a

Branch: refs/heads/master
Commit: 7329254a317c7a06232149904dc8a5c1a6ae2850
Parents: 8fcf375
Author: Scott Deboy <[email protected]>
Authored: Wed Aug 17 07:13:43 2011 +0000
Committer: Scott Deboy <[email protected]>
Committed: Wed Aug 17 07:13:43 2011 +0000

----------------------------------------------------------------------
 .../log4j/chainsaw/LogFilePatternLayoutBuilder.java    |  8 +++++---
 src/main/java/org/apache/log4j/chainsaw/LogUI.java     |  2 +-
 .../log4j/chainsaw/vfs/VFSLogFilePatternReceiver.java  | 13 ++-----------
 3 files changed, 8 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-chainsaw/blob/7329254a/src/main/java/org/apache/log4j/chainsaw/LogFilePatternLayoutBuilder.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/log4j/chainsaw/LogFilePatternLayoutBuilder.java 
b/src/main/java/org/apache/log4j/chainsaw/LogFilePatternLayoutBuilder.java
index 7c8bc26..cd5a016 100644
--- a/src/main/java/org/apache/log4j/chainsaw/LogFilePatternLayoutBuilder.java
+++ b/src/main/java/org/apache/log4j/chainsaw/LogFilePatternLayoutBuilder.java
@@ -32,6 +32,7 @@ import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
 import javax.xml.parsers.ParserConfigurationException;
 
+import org.apache.log4j.chainsaw.messages.MessageCenter;
 import org.apache.log4j.helpers.OptionConverter;
 import org.apache.log4j.pattern.ClassNamePatternConverter;
 import org.apache.log4j.pattern.DatePatternConverter;
@@ -255,14 +256,14 @@ public class LogFilePatternLayoutBuilder
               Node appenderChild = appenderChildren.item(j);
               if (appenderChild.getNodeName().equals("param") && 
appenderChild.hasAttributes()) {
                 Node fileNameNode = 
appenderChild.getAttributes().getNamedItem("name");
-                if (fileNameNode != null && 
fileNameNode.getNodeValue().equals("file")) {
+                if (fileNameNode != null && 
fileNameNode.getNodeValue().toLowerCase().equals("file")) {
                   Node fileValueNode = 
appenderChild.getAttributes().getNamedItem("value");
                   if (fileValueNode != null) {
                     entry.put("file", fileValueNode.getNodeValue());
                   }
                 }
               }
-              if (appenderChild.getNodeName().equals("layout") && 
appenderChild.hasAttributes()) {
+              if (appenderChild.getNodeName().toLowerCase().equals("layout") 
&& appenderChild.hasAttributes()) {
                 NamedNodeMap layoutAttributes = appenderChild.getAttributes();
                 Node layoutNode = layoutAttributes.getNamedItem("class");
                 if (layoutNode != null && layoutNode.getNodeValue() != null && 
layoutNode.getNodeValue().equals("org.apache.log4j.PatternLayout")) {
@@ -271,7 +272,7 @@ public class LogFilePatternLayoutBuilder
                     Node layoutChild = layoutChildren.item(k);
                     if (layoutChild.getNodeName().equals("param") && 
layoutChild.hasAttributes()) {
                       Node layoutName = 
layoutChild.getAttributes().getNamedItem("name");
-                      if (layoutName != null && layoutName.getNodeValue() != 
null && layoutName.getNodeValue().equals("ConversionPattern")) {
+                      if (layoutName != null && layoutName.getNodeValue() != 
null && layoutName.getNodeValue().toLowerCase().equals("conversionpattern")) {
                         Node conversionValue = 
layoutChild.getAttributes().getNamedItem("value");
                         if (conversionValue != null) {
                           entry.put("conversion", 
conversionValue.getNodeValue());
@@ -289,6 +290,7 @@ public class LogFilePatternLayoutBuilder
     } finally {
       stream.close();
     }
+    
MessageCenter.getInstance().getLogger().info("getXMLFileAppenderConfiguration 
for file: " + file + ", result: " + result);
     return result;
   }
 }

http://git-wip-us.apache.org/repos/asf/logging-chainsaw/blob/7329254a/src/main/java/org/apache/log4j/chainsaw/LogUI.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/log4j/chainsaw/LogUI.java 
b/src/main/java/org/apache/log4j/chainsaw/LogUI.java
index e1a71f5..c62efe0 100644
--- a/src/main/java/org/apache/log4j/chainsaw/LogUI.java
+++ b/src/main/java/org/apache/log4j/chainsaw/LogUI.java
@@ -1427,7 +1427,7 @@ public class LogUI extends JFrame implements 
ChainsawViewer, SettingsListener {
   }
 
   /**
-   * Displays a dialog which will provide options for selecting a configuratino
+   * Displays a dialog which will provide options for selecting a configuration
    */
   private void showReceiverConfigurationPanel() {
     SwingUtilities.invokeLater(

http://git-wip-us.apache.org/repos/asf/logging-chainsaw/blob/7329254a/src/main/java/org/apache/log4j/chainsaw/vfs/VFSLogFilePatternReceiver.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/log4j/chainsaw/vfs/VFSLogFilePatternReceiver.java 
b/src/main/java/org/apache/log4j/chainsaw/vfs/VFSLogFilePatternReceiver.java
index fadc480..29dc146 100644
--- a/src/main/java/org/apache/log4j/chainsaw/vfs/VFSLogFilePatternReceiver.java
+++ b/src/main/java/org/apache/log4j/chainsaw/vfs/VFSLogFilePatternReceiver.java
@@ -314,9 +314,8 @@ public class VFSLogFilePatternReceiver extends 
LogFilePatternReceiver implements
           }
           vfsReader = new VFSReader();
           new Thread(vfsReader).start();
-        }
+        } else if (oldURL != null && oldURL.indexOf("://") > -1) {
         //starts with protocol://
-        if (oldURL != null && oldURL.indexOf("://") > -1) {
             int index = oldURL.indexOf("://");
             String lastPart = oldURL.substring(index + "://".length());
             int passEndIndex = lastPart.indexOf("@");
@@ -403,6 +402,7 @@ public class VFSLogFilePatternReceiver extends 
LogFilePatternReceiver implements
 
                         //fileobject was created above, release it and 
construct a new one
                         if (fileObject != null) {
+                            
fileObject.getFileSystem().getFileSystemManager().closeFileSystem(fileObject.getFileSystem());
                             fileObject.close();
                             fileObject = null;
                         }
@@ -435,15 +435,6 @@ public class VFSLogFilePatternReceiver extends 
LogFilePatternReceiver implements
                                 rac.close();
                             }
                             try {
-                                //release file so it can be externally 
deleted/renamed if necessary
-                                fileObject.close();
-                                fileObject = null;
-                            }
-                            catch (IOException e)
-                            {
-                                getLogger().debug(getPath() + " - unable to 
close fileobject", e);
-                            }
-                            try {
                                 if (reader != null) {
                                     reader.close();
                                     reader = null;

Reply via email to