You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2011/09/22 15:04:11 UTC

svn commit: r1174106 - /maven/wagon/trunk/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java

Author: olamy
Date: Thu Sep 22 13:04:11 2011
New Revision: 1174106

URL: http://svn.apache.org/viewvc?rev=1174106&view=rev
Log:
[WAGON-289] wagon-ftp should support the character encoding used by the FTP control connection.
Submitted by Masahiko Murakami

Modified:
    maven/wagon/trunk/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java

Modified: maven/wagon/trunk/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java?rev=1174106&r1=1174105&r2=1174106&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java Thu Sep 22 13:04:11 2011
@@ -67,6 +67,11 @@ public class FtpWagon
      */
     private boolean passiveMode = true;
 
+    /**
+     * @plexus.configuration default-value="ISO-8859-1"
+     */
+    private String controlEncoding = FTP.DEFAULT_CONTROL_ENCODING;
+
     public boolean isPassiveMode()
     {
         return passiveMode;
@@ -110,6 +115,7 @@ public class FtpWagon
         ftp = new FTPClient();
         ftp.setDefaultTimeout( getTimeout() );
         ftp.setDataTimeout( getTimeout() );
+        ftp.setControlEncoding( getControlEncoding() );
 
         ftp.addProtocolCommandListener( new PrintCommandListener( this ) );
 
@@ -474,8 +480,8 @@ public class FtpWagon
             String filename = PathUtils.filename( resource.getName() );
             int status = ftp.stat( filename );
 
-            return ( ( status == FTPReply.FILE_STATUS ) || ( status == FTPReply.DIRECTORY_STATUS )
-                || ( status == FTPReply.FILE_STATUS_OK ) // not in the RFC but used by some FTP servers
+            return ( ( status == FTPReply.FILE_STATUS ) || ( status == FTPReply.DIRECTORY_STATUS ) || ( status
+                == FTPReply.FILE_STATUS_OK ) // not in the RFC but used by some FTP servers
                 || ( status == FTPReply.COMMAND_OK )     // not in the RFC but used by some FTP servers
                 || ( status == FTPReply.SYSTEM_STATUS ) );
         }
@@ -779,4 +785,14 @@ public class FtpWagon
 
         return ok;
     }
+
+    public String getControlEncoding()
+    {
+        return controlEncoding;
+    }
+
+    public void setControlEncoding( String controlEncoding )
+    {
+        this.controlEncoding = controlEncoding;
+    }
 }