commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From s...@apache.org
Subject svn commit: r1082789 - in /commons/proper/net/trunk/src: changes/changes.xml main/java/org/apache/commons/net/ftp/FTPClient.java
Date Fri, 18 Mar 2011 01:51:54 GMT
Author: sebb
Date: Fri Mar 18 01:51:54 2011
New Revision: 1082789

URL: http://svn.apache.org/viewvc?rev=1082789&view=rev
Log:
NET-379 FTPClient - support for processing arbitrary commands that only use the control channel

Modified:
    commons/proper/net/trunk/src/changes/changes.xml
    commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPClient.java

Modified: commons/proper/net/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/commons/proper/net/trunk/src/changes/changes.xml?rev=1082789&r1=1082788&r2=1082789&view=diff
==============================================================================
--- commons/proper/net/trunk/src/changes/changes.xml (original)
+++ commons/proper/net/trunk/src/changes/changes.xml Fri Mar 18 01:51:54 2011
@@ -57,6 +57,9 @@ The <action> type attribute can be add,u
 
     <body>
         <release version="3.0" date="TBA" description="TBA">
+            <action issue="NET-379" dev="sebb" type="add">
+            FTPClient - support for processing arbitrary commands that only use the control
channel
+            </action>
             <action issue="NET-378" dev="sebb" type="add">
             FTP listing should support MLST and MLSD.
             </action>

Modified: commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPClient.java
URL: http://svn.apache.org/viewvc/commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPClient.java?rev=1082789&r1=1082788&r2=1082789&view=diff
==============================================================================
--- commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPClient.java (original)
+++ commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPClient.java Fri Mar
18 01:51:54 2011
@@ -1955,6 +1955,53 @@ implements Configurable
 
 
     /**
+     * Issue a command and wait for the reply.
+     * <p>
+     * Should only be used with commands that return replies on the
+     * command channel - do not use for LIST, NLST, MLSD etc.
+     * <p>
+     * @param command  The command to invoke
+     * @param params  The parameters string, may be {@code null}
+     * @return True if successfully completed, false if not, in which case
+     * call {@link #getReplyCode()} or {@link #getReplyString()}
+     * to get the reason.
+     * 
+     * @exception IOException  If an I/O error occurs while either sending a
+     *      command to the server or receiving a reply from the server.
+     * @since 3.0
+     */
+    public boolean doCommand(String command, String params) throws IOException
+    {
+        return FTPReply.isPositiveCompletion(sendCommand(command, params));
+    }
+
+    /**
+     * Issue a command and wait for the reply, returning it as an array of strings.
+     * <p>
+     * Should only be used with commands that return replies on the
+     * command channel - do not use for LIST, NLST, MLSD etc.
+     * <p>
+     * @param command  The command to invoke
+     * @param params  The parameters string, may be {@code null}
+     * @return The array of replies, or {@code null} if the command failed, in which case
+     * call {@link #getReplyCode()} or {@link #getReplyString()}
+     * to get the reason.
+     * 
+     * @exception IOException  If an I/O error occurs while either sending a
+     *      command to the server or receiving a reply from the server.
+     * @since 3.0
+     */
+    public String[] doCommandAsStrings(String command, String params) throws IOException
+    {
+        boolean success = FTPReply.isPositiveCompletion(sendCommand(command, params));
+        if (success){
+            return getReplyStrings();
+        } else {
+            return null;
+        }
+    }
+
+    /**
      * Get file details using the MLST command
      * 
      * @param pathname the file or directory to list, may be {@code} null



Mime
View raw message