org.apache.lucene.facet.taxonomy.directory

## Class DirectoryTaxonomyWriter.DiskOrdinalMap

- java.lang.Object
- - org.apache.lucene.facet.taxonomy.directory.DirectoryTaxonomyWriter.DiskOrdinalMap

- All Implemented Interfaces:
    DirectoryTaxonomyWriter.OrdinalMap
  Enclosing class:
    DirectoryTaxonomyWriter

      public static final class DirectoryTaxonomyWriter.DiskOrdinalMap
      extends Object
      implements DirectoryTaxonomyWriter.OrdinalMap

  `DirectoryTaxonomyWriter.OrdinalMap` maintained on file system

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `DiskOrdinalMap(Path tmpfile)` Sole constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDone()` Call addDone() to say that all addMapping() have been done.
    `void` | `addMapping(int origOrdinal, int newOrdinal)` Record a mapping.
    `int[]` | `getMap()` Return the map from the taxonomy's original (consecutive) ordinals to the new taxonomy's ordinals.
    `void` | `setSize(int taxonomySize)` Set the size of the map.

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

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

- - ### Constructor Detail

    - #### DiskOrdinalMap

          public DiskOrdinalMap(Path tmpfile)
                         throws IOException

      Sole constructor.
      Throws:
        `IOException`

  - ### Method Detail

    - #### addMapping

          public void addMapping(int origOrdinal,
                                 int newOrdinal)
                          throws IOException

      Description copied from interface: `DirectoryTaxonomyWriter.OrdinalMap`
      Record a mapping.
      Specified by:
        `addMapping` in interface `DirectoryTaxonomyWriter.OrdinalMap`
      Throws:
        `IOException`

    - #### setSize

          public void setSize(int taxonomySize)
                       throws IOException

      Description copied from interface: `DirectoryTaxonomyWriter.OrdinalMap`
      Set the size of the map. This MUST be called before addMapping(). It is assumed (but not verified) that addMapping() will then be called exactly 'size' times, with different origOrdinals between 0 and size-1.
      Specified by:
        `setSize` in interface `DirectoryTaxonomyWriter.OrdinalMap`
      Throws:
        `IOException`

    - #### addDone

          public void addDone()
                       throws IOException

      Description copied from interface: `DirectoryTaxonomyWriter.OrdinalMap`
      Call addDone() to say that all addMapping() have been done. In some implementations this might free some resources.
      Specified by:
        `addDone` in interface `DirectoryTaxonomyWriter.OrdinalMap`
      Throws:
        `IOException`

    - #### getMap

          public int[] getMap()
                       throws IOException

      Description copied from interface: `DirectoryTaxonomyWriter.OrdinalMap`
      Return the map from the taxonomy's original (consecutive) ordinals to the new taxonomy's ordinals. If the map has to be read from disk and ordered appropriately, it is done when getMap() is called. getMap() should only be called once, and only when the map is actually needed. Calling it will also free all resources that the map might be holding (such as temporary disk space), other than the returned int[].
      Specified by:
        `getMap` in interface `DirectoryTaxonomyWriter.OrdinalMap`
      Throws:
        `IOException`

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