Class ScpIoUtils


  • public final class ScpIoUtils
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private ScpIoUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.String getExitStatusName​(java.lang.Integer exitStatus)  
      static void handleCommandExitStatus​(ClientSession session, java.lang.String cmd, java.lang.Integer exitStatus, org.slf4j.Logger log)
      Invoked by the various upload/download methods after having successfully completed the remote copy command and (optionally) having received an exit status from the remote server
      static void handleCommandExitStatus​(ClientSession session, java.lang.String cmd, ClientChannel channel, CommandStatusHandler handler, org.slf4j.Logger log)
      Invoked by the various upload/download methods after having successfully completed the remote copy command and (optionally) having received an exit status from the remote server.
      static ChannelExec openCommandChannel​(ClientSession session, java.lang.String cmd, org.slf4j.Logger log)  
      static java.lang.String readLine​(java.io.InputStream in, java.nio.charset.Charset cs)  
      static java.lang.String readLine​(java.io.InputStream in, java.nio.charset.Charset cs, boolean canEof)  
      static ScpAckInfo sendAcknowledgedCommand​(java.lang.String cmd, java.io.InputStream in, java.nio.charset.Charset csIn, java.io.OutputStream out, java.nio.charset.Charset csOut)  
      static ScpAckInfo sendAcknowledgedCommand​(AbstractScpCommandDetails cmd, java.io.InputStream in, java.nio.charset.Charset csIn, java.io.OutputStream out, java.nio.charset.Charset csOut)  
      static void writeLine​(java.io.OutputStream out, java.nio.charset.Charset cs, java.lang.String cmd)  
      • Methods inherited from class java.lang.Object

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

      • COMMAND_WAIT_EVENTS

        public static final java.util.Set<ClientChannelEvent> COMMAND_WAIT_EVENTS
    • Constructor Detail

      • ScpIoUtils

        private ScpIoUtils()
    • Method Detail

      • readLine

        public static java.lang.String readLine​(java.io.InputStream in,
                                                java.nio.charset.Charset cs)
                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • readLine

        public static java.lang.String readLine​(java.io.InputStream in,
                                                java.nio.charset.Charset cs,
                                                boolean canEof)
                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • writeLine

        public static void writeLine​(java.io.OutputStream out,
                                     java.nio.charset.Charset cs,
                                     java.lang.String cmd)
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • sendAcknowledgedCommand

        public static ScpAckInfo sendAcknowledgedCommand​(AbstractScpCommandDetails cmd,
                                                         java.io.InputStream in,
                                                         java.nio.charset.Charset csIn,
                                                         java.io.OutputStream out,
                                                         java.nio.charset.Charset csOut)
                                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • sendAcknowledgedCommand

        public static ScpAckInfo sendAcknowledgedCommand​(java.lang.String cmd,
                                                         java.io.InputStream in,
                                                         java.nio.charset.Charset csIn,
                                                         java.io.OutputStream out,
                                                         java.nio.charset.Charset csOut)
                                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • getExitStatusName

        public static java.lang.String getExitStatusName​(java.lang.Integer exitStatus)
      • openCommandChannel

        public static ChannelExec openCommandChannel​(ClientSession session,
                                                     java.lang.String cmd,
                                                     org.slf4j.Logger log)
                                              throws java.io.IOException
        Throws:
        java.io.IOException
      • handleCommandExitStatus

        public static void handleCommandExitStatus​(ClientSession session,
                                                   java.lang.String cmd,
                                                   ClientChannel channel,
                                                   CommandStatusHandler handler,
                                                   org.slf4j.Logger log)
                                            throws java.io.IOException
        Invoked by the various upload/download methods after having successfully completed the remote copy command and (optionally) having received an exit status from the remote server. If no exit status received within CoreModuleProperties.CHANNEL_CLOSE_TIMEOUT the no further action is taken. Otherwise, the exit status is examined to ensure it is either OK or WARNING - if not, an ScpException is thrown
        Parameters:
        session - The associated ClientSession
        cmd - The attempted remote copy command
        channel - The ClientChannel through which the command was sent - Note: then channel may be in the process of being closed
        handler - The CommandStatusHandler to invoke once the exit status is received. if null then handleCommandExitStatus(ClientSession, String, Integer, Logger) is called
        log - An optional Logger to use for issuing log messages - ignored if null
        Throws:
        java.io.IOException - If failed the command
      • handleCommandExitStatus

        public static void handleCommandExitStatus​(ClientSession session,
                                                   java.lang.String cmd,
                                                   java.lang.Integer exitStatus,
                                                   org.slf4j.Logger log)
                                            throws java.io.IOException
        Invoked by the various upload/download methods after having successfully completed the remote copy command and (optionally) having received an exit status from the remote server
        Parameters:
        session - The associated ClientSession
        cmd - The attempted remote copy command
        exitStatus - The exit status - if null then no status was reported
        log - An optional Logger to use for issuing log messages - ignored if null
        Throws:
        java.io.IOException - If got a an error exit status