Class ByteBufOutputStream

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

    public class ByteBufOutputStream
    extends java.io.OutputStream
    implements java.io.DataOutput
    An OutputStream which writes data to a ByteBuf.

    A write operation against this stream will occur at the writerIndex of its underlying buffer and the writerIndex will increase during the write operation.

    This stream implements DataOutput for your convenience. The endianness of the stream is not always big endian but depends on the endianness of the underlying buffer.

    See Also:
    ByteBufInputStream
    • Constructor Summary

      Constructors 
      Constructor Description
      ByteBufOutputStream​(ByteBuf buffer)
      Creates a new stream which writes data to the specified buffer.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      ByteBuf buffer()
      Returns the buffer where this stream is writing data.
      void write​(byte[] b)  
      void write​(byte[] b, int off, int len)  
      void write​(int b)  
      void writeBoolean​(boolean v)  
      void writeByte​(int v)  
      void writeBytes​(java.lang.String s)  
      void writeChar​(int v)  
      void writeChars​(java.lang.String s)  
      void writeDouble​(double v)  
      void writeFloat​(float v)  
      void writeInt​(int v)  
      void writeLong​(long v)  
      void writeShort​(int v)  
      void writeUTF​(java.lang.String s)  
      int writtenBytes()
      Returns the number of written bytes by this stream so far.
      • Methods inherited from class java.io.OutputStream

        close, flush, nullOutputStream
      • Methods inherited from class java.lang.Object

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

      • ByteBufOutputStream

        public ByteBufOutputStream​(ByteBuf buffer)
        Creates a new stream which writes data to the specified buffer.
    • Method Detail

      • writtenBytes

        public int writtenBytes()
        Returns the number of written bytes by this stream so far.
      • write

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

        public void write​(byte[] b)
                   throws java.io.IOException
        Specified by:
        write in interface java.io.DataOutput
        Overrides:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • write

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

        public void writeBoolean​(boolean v)
                          throws java.io.IOException
        Specified by:
        writeBoolean in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeByte

        public void writeByte​(int v)
                       throws java.io.IOException
        Specified by:
        writeByte in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeBytes

        public void writeBytes​(java.lang.String s)
                        throws java.io.IOException
        Specified by:
        writeBytes in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeChar

        public void writeChar​(int v)
                       throws java.io.IOException
        Specified by:
        writeChar in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeChars

        public void writeChars​(java.lang.String s)
                        throws java.io.IOException
        Specified by:
        writeChars in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeDouble

        public void writeDouble​(double v)
                         throws java.io.IOException
        Specified by:
        writeDouble in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeFloat

        public void writeFloat​(float v)
                        throws java.io.IOException
        Specified by:
        writeFloat in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeInt

        public void writeInt​(int v)
                      throws java.io.IOException
        Specified by:
        writeInt in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeLong

        public void writeLong​(long v)
                       throws java.io.IOException
        Specified by:
        writeLong in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeShort

        public void writeShort​(int v)
                        throws java.io.IOException
        Specified by:
        writeShort in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • writeUTF

        public void writeUTF​(java.lang.String s)
                      throws java.io.IOException
        Specified by:
        writeUTF in interface java.io.DataOutput
        Throws:
        java.io.IOException
      • buffer

        public ByteBuf buffer()
        Returns the buffer where this stream is writing data.