## org.apache.lucene.store
Class BufferedIndexOutput

    java.lang.Object
      org.apache.lucene.store.IndexOutput
          org.apache.lucene.store.BufferedIndexOutput

Direct Known Subclasses:
  FSDirectory.FSIndexOutput

    public abstract class BufferedIndexOutput

extends IndexOutput

Base implementation class for buffered `IndexOutput`.

Constructor Summary
`BufferedIndexOutput()`

Method Summary
`void` `close()` Closes this stream to further operations.
`void` `flush()` Forces any buffered output to be written.
`protected abstract void` `flushBuffer(byte[] b, int offset, int len)` Expert: implements buffer write.
`long` `getFilePointer()` Returns the current position in this file, where the next write will occur.
`abstract long` `length()` The number of bytes in the file.
`void` `seek(long pos)` Sets current position in this file, where the next write will occur.
`void` `writeByte(byte b)` Writes a single byte.
`void` `writeBytes(byte[] b, int offset, int length)` Writes an array of bytes.

Methods inherited from class org.apache.lucene.store.IndexOutput
`copyBytes, writeBytes, writeChars, writeChars, writeInt, writeLong, writeString, writeVInt, writeVLong`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### BufferedIndexOutput

    public BufferedIndexOutput()

Method Detail

### writeByte

    public void writeByte(byte b)
                   throws IOException

  Writes a single byte.

  Specified by:
    `writeByte` in class `IndexOutput`
  Throws:
    `IOException`
  See Also:
    `IndexInput.readByte()`

### writeBytes

    public void writeBytes(byte[] b,
                           int offset,
                           int length)
                    throws IOException

  Writes an array of bytes.

  Specified by:
    `writeBytes` in class `IndexOutput`
  Parameters:
    `b` - the bytes to write
    `length` - the number of bytes to write
    `offset` - the offset in the byte array
  Throws:
    `IOException`
  See Also:
    `IndexInput.readBytes(byte[],int,int)`

### flush

    public void flush()
               throws IOException

  Forces any buffered output to be written.

  Specified by:
    `flush` in class `IndexOutput`
  Throws:
    `IOException`

### flushBuffer

    protected abstract void flushBuffer(byte[] b,
                                        int offset,
                                        int len)
                                 throws IOException

  Expert: implements buffer write. Writes bytes at the current position in the output.

  Parameters:
    `b` - the bytes to write
    `offset` - the offset in the byte array
    `len` - the number of bytes to write
  Throws:
    `IOException`

### close

    public void close()
               throws IOException

  Closes this stream to further operations.

  Specified by:
    `close` in class `IndexOutput`
  Throws:
    `IOException`

### getFilePointer

    public long getFilePointer()

  Returns the current position in this file, where the next write will occur.

  Specified by:
    `getFilePointer` in class `IndexOutput`
  See Also:
    `seek(long)`

### seek

    public void seek(long pos)
              throws IOException

  Sets current position in this file, where the next write will occur.

  Specified by:
    `seek` in class `IndexOutput`
  Throws:
    `IOException`
  See Also:
    `getFilePointer()`

### length

    public abstract long length()
                         throws IOException

  The number of bytes in the file.

  Specified by:
    `length` in class `IndexOutput`
  Throws:
    `IOException`

Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.