Branching for release
git-svn-id: https://svn.apache.org/repos/asf/mina/ftpserver/branches/1.0.4@920077 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/core/pom.xml b/core/pom.xml
index c019346..0c5e23f 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -17,13 +17,13 @@
<parent>
<artifactId>ftpserver-parent</artifactId>
<groupId>org.apache.ftpserver</groupId>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.ftpserver</groupId>
<artifactId>ftpserver-core</artifactId>
<name>Apache FtpServer Core</name>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<packaging>bundle</packaging>
<scm>
<connection>
diff --git a/distribution/pom.xml b/distribution/pom.xml
index 798bda7..733c506 100644
--- a/distribution/pom.xml
+++ b/distribution/pom.xml
@@ -22,14 +22,14 @@
<parent>
<artifactId>ftpserver-parent</artifactId>
<groupId>org.apache.ftpserver</groupId>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.ftpserver</groupId>
<artifactId>ftpserver</artifactId>
<packaging>pom</packaging>
<name>Apache FtpServer</name>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/mina/ftpserver/trunk/distribution</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/mina/ftpserver/trunk/distribution</developerConnection>
diff --git a/examples/ftpserver-example-spring-war/pom.xml b/examples/ftpserver-example-spring-war/pom.xml
index 0ad58b9..4482ec0 100644
--- a/examples/ftpserver-example-spring-war/pom.xml
+++ b/examples/ftpserver-example-spring-war/pom.xml
@@ -18,7 +18,7 @@
<parent>
<artifactId>ftpserver-parent</artifactId>
<groupId>org.apache.ftpserver</groupId>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
@@ -27,7 +27,7 @@
<artifactId>ftpserver-spring-war</artifactId>
<name>FtpServer Spring web project example</name>
<packaging>war</packaging>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
diff --git a/examples/ftpserver-osgi-ftplet-service/pom.xml b/examples/ftpserver-osgi-ftplet-service/pom.xml
index 6e7924a..a6574cf 100644
--- a/examples/ftpserver-osgi-ftplet-service/pom.xml
+++ b/examples/ftpserver-osgi-ftplet-service/pom.xml
@@ -19,7 +19,7 @@
<parent>
<artifactId>ftpserver-parent</artifactId>
<groupId>org.apache.ftpserver</groupId>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
@@ -27,7 +27,7 @@
<artifactId>ftpserver-osgi-ftplet-service</artifactId>
<name>FtpServer OSGi Ftplet service example</name>
<packaging>bundle</packaging>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.apache.ftpserver</groupId>
diff --git a/examples/ftpserver-osgi-spring-service/pom.xml b/examples/ftpserver-osgi-spring-service/pom.xml
index 6c39c62..032671b 100644
--- a/examples/ftpserver-osgi-spring-service/pom.xml
+++ b/examples/ftpserver-osgi-spring-service/pom.xml
@@ -19,7 +19,7 @@
<parent>
<artifactId>ftpserver-parent</artifactId>
<groupId>org.apache.ftpserver</groupId>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
@@ -27,7 +27,7 @@
<artifactId>ftpserver-osgi-spring-service</artifactId>
<name>FtpServer OSGi Spring-DM example</name>
<packaging>bundle</packaging>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.apache.ftpserver</groupId>
diff --git a/examples/pom.xml b/examples/pom.xml
index 0db04aa..fd33a83 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -21,14 +21,14 @@
<parent>
<artifactId>ftpserver-parent</artifactId>
<groupId>org.apache.ftpserver</groupId>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.ftpserver</groupId>r
<artifactId>ftpserver-examples</artifactId>
<packaging>pom</packaging>
<name>Apache FtpServer Examples</name>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<modules>
<module>ftpserver-example-spring-war</module>
<module>ftpserver-osgi-ftplet-service</module>
diff --git a/ftplet-api/pom.xml b/ftplet-api/pom.xml
index 3a90fd4..a765ab9 100644
--- a/ftplet-api/pom.xml
+++ b/ftplet-api/pom.xml
@@ -17,12 +17,12 @@
<parent>
<artifactId>ftpserver-parent</artifactId>
<groupId>org.apache.ftpserver</groupId>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.ftpserver</groupId>
<artifactId>ftplet-api</artifactId>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<packaging>bundle</packaging>
<name>Apache Ftplet API</name>
<description> Ftplets are, similar to servlets, an API to plug into the
diff --git a/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java b/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
index 4a38e6a..2e6da2a 100644
--- a/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
+++ b/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
@@ -19,6 +19,7 @@
package org.apache.ftpserver.ftplet;
+
/**
* FTP reply object.
*
@@ -72,6 +73,10 @@
return message;
}
+ private boolean isDigit(char c) {
+ return c >= 48 && c <= 57;
+ }
+
/*
* (non-Javadoc)
*
@@ -106,7 +111,15 @@
sb.append(" ");
}
- if(line.length() > 0 && Character.isDigit(line.charAt(0))) {
+ // "If an intermediary line begins with a 3-digit number, the Server
+ // must pad the front to avoid confusion.
+ if(i > 0
+ && i + 1 < lines.length
+ && line.length() > 2
+ && isDigit(line.charAt(0))
+ && isDigit(line.charAt(1))
+ && isDigit(line.charAt(2))
+ ) {
sb.append(" ");
}
sb.append(line);
diff --git a/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java b/ftplet-api/src/test/java/org/apache/ftpserver/ftplet/DefaultFtpReplyTest.java
similarity index 76%
rename from core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
rename to ftplet-api/src/test/java/org/apache/ftpserver/ftplet/DefaultFtpReplyTest.java
index 05f629b..6abd560 100644
--- a/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
+++ b/ftplet-api/src/test/java/org/apache/ftpserver/ftplet/DefaultFtpReplyTest.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.ftpserver.impl;
+package org.apache.ftpserver.ftplet;
import junit.framework.TestCase;
@@ -25,7 +25,8 @@
/**
*
- * @author <a href="http://mina.apache.org">Apache MINA Project</a> *
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ *
*/
public class DefaultFtpReplyTest extends TestCase {
@@ -72,10 +73,28 @@
assertEquals("123-foo\r\n bar\r\n123 baz\r\n", response.toString());
}
- public void testMultipleLinesToStringNumberFirst() {
+ public void testMultipleLinesToStringThreeNumbers() {
DefaultFtpReply response = new DefaultFtpReply(123, "foo\n234bar\nbaz");
assertEquals("123-foo\r\n 234bar\r\n123 baz\r\n", response.toString());
}
+ public void testMultipleLinesToStringThreeNumbersOnFirstLine() {
+ DefaultFtpReply response = new DefaultFtpReply(123, "234foo\nbar\nbaz");
+
+ assertEquals("123-234foo\r\nbar\r\n123 baz\r\n", response.toString());
+ }
+
+ public void testMultipleLinesToStringThreeNumbersOnLastLine() {
+ DefaultFtpReply response = new DefaultFtpReply(123, "foo\nbar\n234baz");
+
+ assertEquals("123-foo\r\nbar\r\n123 234baz\r\n", response.toString());
+ }
+
+ public void testMultipleLinesToStringSingleNumberOnLine() {
+ DefaultFtpReply response = new DefaultFtpReply(123, "foo\n2bar\nbaz");
+
+ assertEquals("123-foo\r\n2bar\r\n123 baz\r\n", response.toString());
+ }
+
}
diff --git a/pom.xml b/pom.xml
index b98026e..6531c19 100644
--- a/pom.xml
+++ b/pom.xml
@@ -28,7 +28,7 @@
<artifactId>ftpserver-parent</artifactId>
<packaging>pom</packaging>
<name>Apache FtpServer Parent</name>
- <version>1.0.4</version>
+ <version>1.0.5-SNAPSHOT</version>
<url>http://mina.apache.org/ftpserver</url>
<issueManagement>
<system>Jira</system>