org.apache.lucene.store

## Class IndexOutput

- java.lang.Object
- - org.apache.lucene.store.DataOutput
  - - org.apache.lucene.store.IndexOutput

All Implemented Interfaces:
  Closeable, AutoCloseable

Direct Known Subclasses:
  ByteBuffersIndexOutput, OutputStreamIndexOutput, RAMOutputStream, RateLimitedIndexOutput

    public abstract class IndexOutput
    extends DataOutput
    implements Closeable

A `DataOutput` for appending data to a file in a `Directory`. Instances of this class are not thread-safe.

See Also:
  `Directory`, `IndexInput`

### Constructor Summary

Constructors
`protected` `IndexOutput(String resourceDescription, String name)` Sole constructor.

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`abstract void` `close()` Closes this stream to further operations.
`abstract long` `getChecksum()` Returns the current checksum of bytes written so far
`abstract long` `getFilePointer()` Returns the current position in this file, where the next write will occur.
`String` `getName()` Returns the name used to create this `IndexOutput`.
`String` `toString()`

### Methods inherited from class org.apache.lucene.store.DataOutput

`copyBytes, writeByte, writeBytes, writeBytes, writeInt, writeLong, writeMapOfStrings, writeSetOfStrings, writeShort, writeString, writeVInt, writeVLong, writeZInt, writeZLong`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### IndexOutput

    protected IndexOutput(String resourceDescription,
                          String name)

Sole constructor. resourceDescription should be non-null, opaque string describing this resource; it's returned from `toString()`.

### Method Detail

#### getName

    public String getName()

Returns the name used to create this `IndexOutput`. This is especially useful when using `Directory.createTempOutput(java.lang.String, java.lang.String, org.apache.lucene.store.IOContext)`.

#### close

    public abstract void close()
                        throws IOException

Closes this stream to further operations.

Specified by:
  `close` in interface `Closeable`
Specified by:
  `close` in interface `AutoCloseable`
Throws:
  `IOException`

#### getFilePointer

    public abstract long getFilePointer()

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

#### getChecksum

    public abstract long getChecksum()
                              throws IOException

Returns the current checksum of bytes written so far

Throws:
  `IOException`

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`