Class SftpOutputStreamAsync

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable, java.nio.channels.Channel, SftpClientHolder

    public class SftpOutputStreamAsync
    extends OutputStreamWithChannel
    implements SftpClientHolder
    Implements an output stream for a given remote file
    • Field Detail

      • log

        protected final org.slf4j.Logger log
      • bb

        protected final byte[] bb
      • bufferSize

        protected final int bufferSize
      • buffer

        protected Buffer buffer
      • offset

        protected long offset
      • pendingWrites

        protected final java.util.Deque<SftpAckData> pendingWrites
      • path

        private final java.lang.String path
    • Constructor Detail

      • SftpOutputStreamAsync

        public SftpOutputStreamAsync​(AbstractSftpClient client,
                                     int bufferSize,
                                     java.lang.String path,
                                     java.util.Collection<SftpClient.OpenMode> mode)
                              throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • setOffset

        public void setOffset​(long offset)
      • getPath

        public final java.lang.String getPath()
        The remotely accessed file path
        Returns:
        Remote file path
      • isOpen

        public boolean isOpen()
        Specified by:
        isOpen in interface java.nio.channels.Channel
      • write

        public void write​(int b)
                   throws java.io.IOException
        Specified by:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • write

        public void write​(byte[] b,
                          int off,
                          int len)
                   throws java.io.IOException
        Overrides:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • flush

        public void flush()
                   throws java.io.IOException
        Specified by:
        flush in interface java.io.Flushable
        Overrides:
        flush in class java.io.OutputStream
        Throws:
        java.io.IOException
      • close

        public void close()
                   throws java.io.IOException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.nio.channels.Channel
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.OutputStream
        Throws:
        java.io.IOException
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object