Author: rwinston
Date: Tue Feb 19 14:30:06 2008
New Revision: 629252
URL: http://svn.apache.org/viewvc?rev=629252&view=rev
Log:
Add fix for owner name containing spaces (NET-170)
Modified:
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParser.java
commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParserTest.java
Modified:
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParser.java
URL:
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParser.java?rev=629252&r1=629251&r2=629252&view=diff
==============================================================================
---
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParser.java
(original)
+++
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParser.java
Tue Feb 19 14:30:06 2008
@@ -33,12 +33,6 @@
*/
public class UnixFTPEntryParser extends ConfigurableFTPFileEntryParserImpl
{
- /**
- * months abbreviations looked for by this parser. Also used
- * to determine which month is matched by the parser
- */
- private static final String DEFAULT_MONTHS =
- "(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)";
static final String DEFAULT_DATE_FORMAT
= "MMM d yyyy"; //Nov 9 2001
@@ -91,8 +85,8 @@
"([bcdelfmpSs-])"
+"(((r|-)(w|-)([xsStTL-]))((r|-)(w|-)([xsStTL-]))((r|-)(w|-)([xsStTL-])))\\+?\\s+"
+ "(\\d+)\\s+"
- + "(\\S+)\\s+"
- + "(?:(\\S+(?:\\s\\S+)*)\\s+)?"
+ + "(?:(\\S+(?:\\s\\S+)*)\\s+)?"
// owner name (optional spaces)
+ + "(?:(\\S+(?:\\s\\S+)*)\\s+)?" // group name (optional spaces)
+ "(\\d+)\\s+"
/*
Modified:
commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParserTest.java
URL:
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParserTest.java?rev=629252&r1=629251&r2=629252&view=diff
==============================================================================
---
commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParserTest.java
(original)
+++
commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/ftp/parser/UnixFTPEntryParserTest.java
Tue Feb 19 14:30:06 2008
@@ -138,6 +138,19 @@
protected FTPFileEntryParser getParser() {
return (new UnixFTPEntryParser());
}
+
+ public void testOwnerNameWithSpaces() {
+ FTPFile f = getParser().parseFTPEntry("drwxr-xr-x 2 john
smith group 4096 Mar 2 15:13 zxbox");
+ assertNotNull(f);
+ assertEquals("john smith", f.getUser());
+ }
+
+ public void testOwnerANdGroupNameWithSpaces() {
+ FTPFile f = getParser().parseFTPEntry("drwxr-xr-x 2 john
smith test group 4096 Mar 2 15:13 zxbox");
+ assertNotNull(f);
+ assertEquals("john smith", f.getUser());
+ assertEquals("test group", f.getGroup());
+ }
/**
* @see
org.apache.commons.net.ftp.parser.FTPParseTestFramework#testParseFieldsOnDirectory()