Package org.apache.lucene.util.bkd

# Class OfflinePointWriter

java.lang.Object
org.apache.lucene.util.bkd.OfflinePointWriter

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`, `PointWriter`

public final class OfflinePointWriter extends Object implements PointWriter
Writes points to disk in a fixed-with format.

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `final String`
  `name`
  `final IndexOutput`
  `out`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `OfflinePointWriter(BKDConfig config, Directory tempDir, String tempFileNamePrefix, String desc, long expectedCount)`
  Create a new writer with an unknown number of incoming points

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `append(byte[] packedValue, int docID)`
  Add a new point from the packed value and docId
  `void`
  `append(PointValue pointValue)`
  Add a new point from a `PointValue`
  `void`
  `close()`
  `long`
  `count()`
  Return the number of points in this writer
  `void`
  `destroy()`
  Removes any temp files behind this writer
  `PointReader`
  `getReader(long start, long length)`
  Returns a `PointReader` iterator to step through all previously added points
  `protected OfflinePointReader`
  `getReader(long start, long length, byte[] reusableBuffer)`
  `String`
  `toString()`

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

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

- ## Field Details

  - ### out

    public final IndexOutput out

  - ### name

    public final String name

- ## Constructor Details

  - ### OfflinePointWriter

    public OfflinePointWriter(BKDConfig config, Directory tempDir, String tempFileNamePrefix, String desc, long expectedCount) throws IOException
    Create a new writer with an unknown number of incoming points
    Throws:
      `IOException`

- ## Method Details

  - ### append

    public void append(byte[] packedValue, int docID) throws IOException
    Description copied from interface: `PointWriter`
    Add a new point from the packed value and docId
    Specified by:
      `append` in interface `PointWriter`
    Throws:
      `IOException`

  - ### append

    public void append(PointValue pointValue) throws IOException
    Description copied from interface: `PointWriter`
    Add a new point from a `PointValue`
    Specified by:
      `append` in interface `PointWriter`
    Throws:
      `IOException`

  - ### getReader

    public PointReader getReader(long start, long length) throws IOException
    Description copied from interface: `PointWriter`
    Returns a `PointReader` iterator to step through all previously added points
    Specified by:
      `getReader` in interface `PointWriter`
    Throws:
      `IOException`

  - ### getReader

    protected OfflinePointReader getReader(long start, long length, byte[] reusableBuffer) throws IOException
    Throws:
      `IOException`

  - ### count

    public long count()
    Description copied from interface: `PointWriter`
    Return the number of points in this writer
    Specified by:
      `count` in interface `PointWriter`

  - ### close

    public void close() throws IOException
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`
    Throws:
      `IOException`

  - ### destroy

    public void destroy() throws IOException
    Description copied from interface: `PointWriter`
    Removes any temp files behind this writer
    Specified by:
      `destroy` in interface `PointWriter`
    Throws:
      `IOException`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`