Class BufferedIndexOutput

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

    public abstract class BufferedIndexOutput
    extends IndexOutput
    Base implementation class for buffered IndexOutput.
    • Field Detail

      • DEFAULT_BUFFER_SIZE

        public static final int DEFAULT_BUFFER_SIZE
        The default buffer size in bytes (16384).
        See Also:
        Constant Field Values
    • Constructor Detail

      • BufferedIndexOutput

        public BufferedIndexOutput​(int bufferSize)
        Creates a new BufferedIndexOutput with the given buffer size.
        Parameters:
        bufferSize - the buffer size in bytes used to buffer writes internally.
        Throws:
        java.lang.IllegalArgumentException - if the given buffer size is less or equal to 0
    • Method Detail

      • writeByte

        public void writeByte​(byte b)
                       throws java.io.IOException
        Description copied from class: DataOutput
        Writes a single byte.

        The most primitive data type is an eight-bit byte. Files are accessed as sequences of bytes. All other data types are defined as sequences of bytes, so file formats are byte-order independent.

        Specified by:
        writeByte in class DataOutput
        Throws:
        java.io.IOException
        See Also:
        DataInput.readByte()
      • writeBytes

        public void writeBytes​(byte[] b,
                               int offset,
                               int length)
                        throws java.io.IOException
        Description copied from class: DataOutput
        Writes an array of bytes.
        Specified by:
        writeBytes in class DataOutput
        Parameters:
        b - the bytes to write
        offset - the offset in the byte array
        length - the number of bytes to write
        Throws:
        java.io.IOException
        See Also:
        DataInput.readBytes(byte[],int,int)
      • flush

        public void flush()
                   throws java.io.IOException
        Description copied from class: IndexOutput
        Forces any buffered output to be written.
        Specified by:
        flush in class IndexOutput
        Throws:
        java.io.IOException
      • close

        public void close()
                   throws java.io.IOException
        Description copied from class: IndexOutput
        Closes this stream to further operations.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Specified by:
        close in class IndexOutput
        Throws:
        java.io.IOException
      • seek

        public void seek​(long pos)
                  throws java.io.IOException
        Description copied from class: IndexOutput
        Sets current position in this file, where the next write will occur.
        Specified by:
        seek in class IndexOutput
        Throws:
        java.io.IOException
        See Also:
        IndexOutput.getFilePointer()
      • length

        public abstract long length()
                             throws java.io.IOException
        Description copied from class: IndexOutput
        The number of bytes in the file.
        Specified by:
        length in class IndexOutput
        Throws:
        java.io.IOException
      • getBufferSize

        public final int getBufferSize()
        Returns size of the used output buffer in bytes.