Class ScpClient


  • public final class ScpClient
    extends java.lang.Object

    Implements a Secure Copy (SCP) client. This may be useful when the server does not support SFTP.

    Since:
    0.2.0
    Version:
    $Revision: 1.18 $
    Author:
    Lee David Painter
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.io.InputStream get​(java.lang.String remoteFile)
      Gets a remote file as an java.io.InputStream.
      void get​(java.lang.String localFile, java.lang.String[] remoteFiles, boolean recursive)
      Downloads an array of remote files to the local computer.
      void get​(java.lang.String localFile, java.lang.String remoteFile, boolean recursive)
      Downloads a remote file onto the local computer.
      void put​(java.io.InputStream in, long length, java.lang.String localFile, java.lang.String remoteFile)
      Uploads a java.io.InputStream to a remove server as file.
      void put​(java.lang.String[] localFiles, java.lang.String remoteFile, boolean recursive)
      Uploads an array of local files onto the remote server.
      void put​(java.lang.String localFile, java.lang.String remoteFile, boolean recursive)
      Uploads a local file onto the remote server.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ScpClient

        public ScpClient​(SshClient ssh,
                         boolean verbose,
                         ChannelEventListener eventListener)

        Creates an SCP client. CWD (Current working directory) will be the CWD of the process that started this JVM.

        Parameters:
        ssh - A connected SshClient
        verbose - Output verbose detail
        eventListener -
        Since:
        0.2.0
      • ScpClient

        public ScpClient​(java.io.File cwd,
                         SshClient ssh,
                         boolean verbose,
                         ChannelEventListener eventListener)

        Creates an SCP client.

        Parameters:
        cwd - The current local directory
        ssh - A connected SshClient
        verbose - Output verbose detail
        eventListener -
        Since:
        0.2.0
    • Method Detail

      • put

        public void put​(java.io.InputStream in,
                        long length,
                        java.lang.String localFile,
                        java.lang.String remoteFile)
                 throws java.io.IOException

        Uploads a java.io.InputStream to a remove server as file. You must supply the correct number of bytes that will be written.

        Parameters:
        in - stream providing file
        length - number of bytes that will be written
        localFile - local file name
        remoteFile - remote file name
        Throws:
        java.io.IOException - on any error
      • get

        public java.io.InputStream get​(java.lang.String remoteFile)
                                throws java.io.IOException

        Gets a remote file as an java.io.InputStream.

        Parameters:
        remoteFile - remote file name
        Returns:
        stream
        Throws:
        java.io.IOException - on any error
      • put

        public void put​(java.lang.String localFile,
                        java.lang.String remoteFile,
                        boolean recursive)
                 throws java.io.IOException

        Uploads a local file onto the remote server.

        Parameters:
        localFile - The path to the local file relative to the local current directory; may be a file or directory
        remoteFile - The path on the remote server, may be a file or directory
        recursive - Copy the contents of a directory recursivly
        Throws:
        java.io.IOException - if an IO error occurs during the operation
        Since:
        0.2.0
      • put

        public void put​(java.lang.String[] localFiles,
                        java.lang.String remoteFile,
                        boolean recursive)
                 throws java.io.IOException

        Uploads an array of local files onto the remote server.

        Parameters:
        localFiles - an array of local files; may be files or directories
        remoteFile - the path on the remote server, may be a file or directory1
        recursive - Copy the contents of directorys recursivly
        Throws:
        java.io.IOException - if an IO error occurs during the operation
        Since:
        0.2.0
      • get

        public void get​(java.lang.String localFile,
                        java.lang.String[] remoteFiles,
                        boolean recursive)
                 throws java.io.IOException

        Downloads an array of remote files to the local computer.

        Parameters:
        localFile - The local path to place the files
        remoteFiles - The path of the remote files
        recursive - recursivly copy the contents of a directory
        Throws:
        java.io.IOException - if an IO error occurs during the operation
        Since:
        0.2.0
      • get

        public void get​(java.lang.String localFile,
                        java.lang.String remoteFile,
                        boolean recursive)
                 throws java.io.IOException

        Downloads a remote file onto the local computer.

        Parameters:
        localFile - The path to place the file
        remoteFile - The path of the file on the remote server
        recursive - recursivly copy the contents of a directory
        Throws:
        java.io.IOException - if an IO error occurs during the operation
        Since:
        0.2.0