Class ObjectEncoderOutputStream

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

    public class ObjectEncoderOutputStream
    extends java.io.OutputStream
    implements java.io.ObjectOutput
    An ObjectOutput which is interoperable with ObjectDecoder and ObjectDecoderInputStream.
    • Field Detail

      • out

        private final java.io.DataOutputStream out
      • estimatedLength

        private final int estimatedLength
    • Constructor Detail

      • ObjectEncoderOutputStream

        public ObjectEncoderOutputStream​(java.io.OutputStream out)
        Creates a new ObjectOutput with the estimated length of 512 bytes.
        Parameters:
        out - the OutputStream where the serialized form will be written out
      • ObjectEncoderOutputStream

        public ObjectEncoderOutputStream​(java.io.OutputStream out,
                                         int estimatedLength)
        Creates a new ObjectOutput.
        Parameters:
        out - the OutputStream where the serialized form will be written out
        estimatedLength - the estimated byte length of the serialized form of an object. If the length of the serialized form exceeds this value, the internal buffer will be expanded automatically at the cost of memory bandwidth. If this value is too big, it will also waste memory bandwidth. To avoid unnecessary memory copy or allocation cost, please specify the properly estimated value.
    • Method Detail

      • writeObject

        public void writeObject​(java.lang.Object obj)
                         throws java.io.IOException
        Specified by:
        writeObject in interface java.io.ObjectOutput
        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 interface java.io.ObjectOutput
        Specified by:
        write 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.io.Closeable
        Specified by:
        close in interface java.io.ObjectOutput
        Overrides:
        close 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
        Specified by:
        flush in interface java.io.ObjectOutput
        Overrides:
        flush in class java.io.OutputStream
        Throws:
        java.io.IOException
      • size

        public final int size()
      • write

        public void write​(byte[] b,
                          int off,
                          int len)
                   throws java.io.IOException
        Specified by:
        write in interface java.io.DataOutput
        Specified by:
        write in interface java.io.ObjectOutput
        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
        Specified by:
        write in interface java.io.ObjectOutput
        Overrides:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • writeBoolean

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

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

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

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

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

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

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

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

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

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

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