Author: rajikak
Date: Thu Sep 16 04:53:31 2010
New Revision: 997588
URL: http://svn.apache.org/viewvc?rev=997588&view=rev
Log:
Fixed SYNAPSE-620.
Modified:
synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java
synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSUtils.java
Modified:
synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java?rev=997588&r1=997587&r2=997588&view=diff
==============================================================================
---
synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java
(original)
+++
synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java
Thu Sep 16 04:53:31 2010
@@ -156,7 +156,7 @@ public class VFSTransportListener extend
FileObject fileObject = null;
if (log.isDebugEnabled()) {
- log.debug("Scanning directory or file : " + fileURI);
+ log.debug("Scanning directory or file : " +
VFSUtils.maskURLPassword(fileURI));
}
boolean wasError = true;
@@ -295,11 +295,11 @@ public class VFSTransportListener extend
entry.setNextPollTime(now + entry.getPollInterval());
} else if (log.isDebugEnabled()) {
- log.debug("Unable to access or read file or directory : " +
fileURI);
+ log.debug("Unable to access or read file or directory : " +
VFSUtils.maskURLPassword(fileURI));
}
onPollCompletion(entry);
} catch (FileSystemException e) {
- processFailure("Error checking for existence and readability : " +
fileURI, e, entry);
+ processFailure("Error checking for existence and readability : " +
VFSUtils.maskURLPassword(fileURI), e, entry);
}
}
Modified:
synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSUtils.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSUtils.java?rev=997588&r1=997587&r2=997588&view=diff
==============================================================================
---
synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSUtils.java
(original)
+++
synapse/trunk/java/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSUtils.java
Thu Sep 16 04:53:31 2010
@@ -34,12 +34,24 @@ import java.io.OutputStream;
import java.util.Arrays;
import java.util.Map;
import java.util.Random;
+import java.util.regex.Pattern;
+import java.util.regex.Matcher;
public class VFSUtils extends BaseUtils {
private static final Log log = LogFactory.getLog(VFSUtils.class);
/**
+ * URL pattern
+ */
+ private static final Pattern URL_PATTERN = Pattern.compile("[a-z]+://.*");
+
+ /**
+ * Password pattern
+ */
+ private static final Pattern PASSWORD_PATTERN =
Pattern.compile(":(?:[^/]+)@");
+
+ /**
* Get a String property from FileContent message
*
* @param message the File message
@@ -168,6 +180,23 @@ public class VFSUtils extends BaseUtils
}
}
+ /**
+ * Mask the password of the connection url with ***
+ * @param url the actual url
+ * @return the masked url
+ */
+ public static String maskURLPassword(String url) {
+ final Matcher urlMatcher = URL_PATTERN.matcher(url);
+ String maskUrl;
+ if (urlMatcher.find()) {
+ final Matcher pwdMatcher = PASSWORD_PATTERN.matcher(url);
+ maskUrl = pwdMatcher.replaceFirst("\":*...@\"");
+ return maskUrl;
+ }
+ return url;
+ }
+
+
private static boolean verifyLock(byte[] lockValue, FileObject lockObject)
{
try {
InputStream is = lockObject.getContent().getInputStream();