Class TFramedTransport

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public class TFramedTransport
    extends TLayeredTransport
    TFramedTransport is a buffered TTransport that ensures a fully read message every time by preceding messages with a 4-byte frame size.
    • Method Detail

      • isOpen

        public boolean isOpen()
        Description copied from class: TTransport
        Queries whether the transport is open.
        Specified by:
        isOpen in class TTransport
        Returns:
        True if the transport is open.
      • close

        public void close()
        Description copied from class: TTransport
        Closes the transport.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Specified by:
        close in class TTransport
      • read

        public int read​(byte[] buf,
                        int off,
                        int len)
                 throws TTransportException
        Description copied from class: TTransport
        Reads up to len bytes into buffer buf, starting at offset off.
        Specified by:
        read in class TTransport
        Parameters:
        buf - Array to read into
        off - Index to start reading at
        len - Maximum number of bytes to read
        Returns:
        The number of bytes actually read
        Throws:
        TTransportException - if there was an error reading data
      • getBuffer

        public byte[] getBuffer()
        Description copied from class: TTransport
        Access the protocol's underlying buffer directly. If this is not a buffered transport, return null.
        Overrides:
        getBuffer in class TTransport
        Returns:
        protocol's Underlying buffer
      • getBufferPosition

        public int getBufferPosition()
        Description copied from class: TTransport
        Return the index within the underlying buffer that specifies the next spot that should be read from.
        Overrides:
        getBufferPosition in class TTransport
        Returns:
        index within the underlying buffer that specifies the next spot that should be read from
      • getBytesRemainingInBuffer

        public int getBytesRemainingInBuffer()
        Description copied from class: TTransport
        Get the number of bytes remaining in the underlying buffer. Returns -1 if this is a non-buffered transport.
        Overrides:
        getBytesRemainingInBuffer in class TTransport
        Returns:
        the number of bytes remaining in the underlying buffer.
        Returns -1 if this is a non-buffered transport.
      • consumeBuffer

        public void consumeBuffer​(int len)
        Description copied from class: TTransport
        Consume len bytes from the underlying buffer.
        Overrides:
        consumeBuffer in class TTransport
      • clear

        public void clear()
      • write

        public void write​(byte[] buf,
                          int off,
                          int len)
                   throws TTransportException
        Description copied from class: TTransport
        Writes up to len bytes from the buffer.
        Specified by:
        write in class TTransport
        Parameters:
        buf - The output data buffer
        off - The offset to start writing from
        len - The number of bytes to write
        Throws:
        TTransportException - if there was an error writing data
      • encodeFrameSize

        public static final void encodeFrameSize​(int frameSize,
                                                 byte[] buf)
      • decodeFrameSize

        public static final int decodeFrameSize​(byte[] buf)