com.sshtools.j2ssh
Class SftpClient

java.lang.Object
  extended bycom.sshtools.j2ssh.SftpClient

public class SftpClient
extends java.lang.Object

Implements a Secure File Transfer (SFTP) client.

Since:
0.2.0

Method Summary
 void cd(java.lang.String dir)
           Changes the working directory on the remote server.
 void chgrp(int gid, java.lang.String path)
           Sets the group ID for the file or directory.
 void chmod(int permissions, java.lang.String path)
           Changes the access permissions or modes of the specified file or directory.
 void chown(int uid, java.lang.String path)
           Sets the user ID to owner for the file or directory.
 void get(java.lang.String path)
           Download the remote file to the local computer.
 void get(java.lang.String remote, java.io.OutputStream local)
           Download the remote file writing it to the specified OutputStream.
 void get(java.lang.String remote, java.lang.String local)
           Download the remote file to the local computer.
 boolean isClosed()
           Returns the state of the SFTP client.
 void lcd(java.lang.String path)
           Changes the local working directory.
 java.lang.String lpwd()
           Returns the absolute path to the local working directory.
 java.util.List ls()
           List the contents of the current remote working directory.
 java.util.List ls(java.lang.String path)
           List the contents remote directory.
 void mkdir(java.lang.String dir)
           Creates a new directory on the remote server.
 void mkdirs(java.lang.String dir)
           Create a directory or set of directories.
 void put(java.io.InputStream in, java.lang.String remote)
           Upload a file to the remote computer reading from the specified InputStream.
 void put(java.lang.String local)
           Upload a file to the remote computer.
 void put(java.lang.String local, java.lang.String remote)
           Upload a file to the remote computer.
 java.lang.String pwd()
           Returns the absolute path name of the current remote working directory.
 void quit()
           Close the SFTP client.
 void rename(java.lang.String oldpath, java.lang.String newpath)
           Rename a file on the remote computer.
 void rm(java.lang.String path)
           Remove a file or directory from the remote computer.
 FileAttributes stat(java.lang.String path)
           Returns the attributes of the file from the remote computer.
 void symlink(java.lang.String path, java.lang.String link)
           Create a symbolic link on the remote computer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

cd

public void cd(java.lang.String dir)
        throws java.io.IOException

Changes the working directory on the remote server.

Parameters:
dir - the new working directory
Throws:
java.io.IOException - if an IO error occurs or the file does not exist
java.io.FileNotFoundException - DOCUMENT ME!
Since:
0.2.0

mkdir

public void mkdir(java.lang.String dir)
           throws java.io.IOException

Creates a new directory on the remote server. This method will throw an exception if the directory already exists. To create directories and disregard any errors use the mkdirs method.

Parameters:
dir - the name of the new directory
Throws:
java.io.IOException - if an IO error occurs or if the directory already exists
Since:
0.2.0

mkdirs

public void mkdirs(java.lang.String dir)

Create a directory or set of directories. This method will not fail even if the directories exist. It is advisable to test whether the directory exists before attempting an operation by using the stat method to return the directories attributes.

Parameters:
dir - the path of directories to create.

pwd

public java.lang.String pwd()

Returns the absolute path name of the current remote working directory.

Returns:
the absolute path of the remote working directory.
Since:
0.2.0

ls

public java.util.List ls()
                  throws java.io.IOException

List the contents of the current remote working directory.

Returns a list of SftpFile instances for the current working directory.

Returns:
a list of SftpFile for the current working directory
Throws:
java.io.IOException - if an IO error occurs
Since:
0.2.0
See Also:
SftpFile

ls

public java.util.List ls(java.lang.String path)
                  throws java.io.IOException

List the contents remote directory.

Returns a list of SftpFile instances for the remote directory.

Parameters:
path - the path on the remote server to list
Returns:
a list of SftpFile for the remote directory
Throws:
java.io.IOException - if an IO error occurs
Since:
0.2.0
See Also:
SftpFile

lcd

public void lcd(java.lang.String path)
         throws java.io.IOException

Changes the local working directory.

Parameters:
path - the path to the new working directory
Throws:
java.io.IOException - if an IO error occurs
Since:
0.2.0

lpwd

public java.lang.String lpwd()

Returns the absolute path to the local working directory.

Returns:
the absolute path of the local working directory.
Since:
0.2.0

get

public void get(java.lang.String path)
         throws java.io.IOException

Download the remote file to the local computer.

Parameters:
path - the path to the remote file
Throws:
java.io.IOException - if an IO error occurs of the file does not exist
Since:
0.2.0

get

public void get(java.lang.String remote,
                java.lang.String local)
         throws java.io.IOException

Download the remote file to the local computer. If the paths provided are not absolute the current working directory is used.

Parameters:
remote - the path/name of the remote file
local - the path/name to place the file on the local computer
Throws:
java.io.IOException - if an IO error occurs or the file does not exist
Since:
0.2.0

get

public void get(java.lang.String remote,
                java.io.OutputStream local)
         throws java.io.IOException

Download the remote file writing it to the specified OutputStream. The OutputStream is closed by this mehtod even if the operation fails.

Parameters:
remote - the path/name of the remote file
local - the OutputStream to write
Throws:
java.io.IOException - if an IO error occurs or the file does not exist
Since:
0.2.0

isClosed

public boolean isClosed()

Returns the state of the SFTP client. The client is closed if the underlying session channel is closed. Invoking the quit method of this object will close the underlying session channel.

Returns:
true if the client is still connected, otherwise false
Since:
0.2.0

put

public void put(java.lang.String local)
         throws java.io.IOException

Upload a file to the remote computer.

Parameters:
local - the path/name of the local file
Throws:
java.io.IOException - if an IO error occurs or the file does not exist
Since:
0.2.0

put

public void put(java.lang.String local,
                java.lang.String remote)
         throws java.io.IOException

Upload a file to the remote computer. If the paths provided are not absolute the current working directory is used.

Parameters:
local - the path/name of the local file
remote - the path/name of the destination file
Throws:
java.io.IOException - if an IO error occurs or the file does not exist
Since:
0.2.0

put

public void put(java.io.InputStream in,
                java.lang.String remote)
         throws java.io.IOException

Upload a file to the remote computer reading from the specified InputStream. The InputStream is closed, even if the operation fails.

Parameters:
in - the InputStream being read
remote - the path/name of the destination file
Throws:
java.io.IOException - if an IO error occurs
Since:
0.2.0

chown

public void chown(int uid,
                  java.lang.String path)
           throws java.io.IOException

Sets the user ID to owner for the file or directory.

Parameters:
uid - numeric user id of the new owner
path - the path to the remote file/directory
Throws:
java.io.IOException - if an IO error occurs or the file does not exist
Since:
0.2.0

chgrp

public void chgrp(int gid,
                  java.lang.String path)
           throws java.io.IOException

Sets the group ID for the file or directory.

Parameters:
gid - the numeric group id for the new group
path - the path to the remote file/directory
Throws:
java.io.IOException - if an IO error occurs or the file does not exist
Since:
0.2.0

chmod

public void chmod(int permissions,
                  java.lang.String path)
           throws java.io.IOException

Changes the access permissions or modes of the specified file or directory.

Modes determine who can read, change or execute a file.

Absolute modes are octal numbers specifying the complete list of attributes for the files; you specify attributes by OR'ing together these bits. 01000000 temporary file 02000000 compressed file 4000 Hidden file (setuid bit) 2000 System file (setgid bit) 1000 Archive bit (sticky bit) 0400 Individual read 0200 Individual write 0100 Individual execute (or list directory) 0040 Group read 0020 Group write 0010 Group execute 0004 Other read 0002 Other write 0001 Other execute

Parameters:
permissions - the absolute mode of the file/directory
path - the path to the file/directory on the remote server
Throws:
java.io.IOException - if an IO error occurs or the file if not found
Since:
0.2.0

rename

public void rename(java.lang.String oldpath,
                   java.lang.String newpath)
            throws java.io.IOException

Rename a file on the remote computer.

Parameters:
oldpath - the old path
newpath - the new path
Throws:
java.io.IOException - if an IO error occurs
Since:
0.2.0

rm

public void rm(java.lang.String path)
        throws java.io.IOException

Remove a file or directory from the remote computer.

Parameters:
path - the path of the remote file/directory
Throws:
java.io.IOException - if an IO error occurs
Since:
0.2.0

symlink

public void symlink(java.lang.String path,
                    java.lang.String link)
             throws java.io.IOException

Create a symbolic link on the remote computer.

Parameters:
path - the path to the existing file
link - the new link
Throws:
java.io.IOException - if an IO error occurs or the operation is not supported on the remote platform
Since:
0.2.0

stat

public FileAttributes stat(java.lang.String path)
                    throws java.io.IOException

Returns the attributes of the file from the remote computer.

Parameters:
path - the path of the file on the remote computer
Returns:
the attributes
Throws:
java.io.IOException - if an IO error occurs or the file does not exist
Since:
0.2.0
See Also:
FileAttributes

quit

public void quit()
          throws java.io.IOException

Close the SFTP client.

Throws:
java.io.IOException
Since:
0.2.0