org.apache.lucene.analysis.ko.dict

## Class BinaryDictionary

- java.lang.Object
- - org.apache.lucene.analysis.ko.dict.BinaryDictionary

- All Implemented Interfaces:
    Dictionary
  Direct Known Subclasses:
    TokenInfoDictionary, UnknownDictionary

      public abstract class BinaryDictionary
      extends Object
      implements Dictionary

  Base class for a binary-encoded in-memory dictionary.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `BinaryDictionary.ResourceScheme` Used to specify where (dictionary) resources get loaded from.

    - ### Nested classes/interfaces inherited from interface org.apache.lucene.analysis.ko.dict.Dictionary

      `Dictionary.Morpheme`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `DICT_FILENAME_SUFFIX`
    `static String` | `DICT_HEADER`
    `static int` | `HAS_READING` flag that the entry has reading data.
    `static int` | `HAS_SINGLE_POS` flag that the entry has a single part of speech (leftPOS)
    `static String` | `POSDICT_FILENAME_SUFFIX`
    `static String` | `POSDICT_HEADER`
    `static String` | `TARGETMAP_FILENAME_SUFFIX`
    `static String` | `TARGETMAP_HEADER`
    `static int` | `VERSION`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `BinaryDictionary()`
    `protected` | `BinaryDictionary(BinaryDictionary.ResourceScheme resourceScheme, String resourcePath)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static InputStream` | `getClassResource(Class<?> clazz, String suffix)`
    `int` | `getLeftId(int wordId)` Get left id of specified word
    `POS.Tag` | `getLeftPOS(int wordId)` Get the left `POS.Tag` of specfied word.
    `Dictionary.Morpheme[]` | `getMorphemes(int wordId, char[] surfaceForm, int off, int len)` Get the morphemes of specified word (e.g.
    `POS.Type` | `getPOSType(int wordId)` Get the `POS.Type` of specified word (morpheme, compound, inflect or pre-analysis)
    `String` | `getReading(int wordId)` Get the reading of specified word (mainly used for Hanja to Hangul conversion).
    `static InputStream` | `getResource(BinaryDictionary.ResourceScheme scheme, String path)`
    `protected InputStream` | `getResource(String suffix)`
    `int` | `getRightId(int wordId)` Get right id of specified word
    `POS.Tag` | `getRightPOS(int wordId)` Get the right `POS.Tag` of specfied word.
    `int` | `getWordCost(int wordId)` Get word cost of specified word
    `void` | `lookupWordIds(int sourceId, IntsRef ref)`

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

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

- - ### Field Detail

    - #### TARGETMAP_FILENAME_SUFFIX

          public static final String TARGETMAP_FILENAME_SUFFIX

      See Also:
        Constant Field Values

    - #### DICT_FILENAME_SUFFIX

          public static final String DICT_FILENAME_SUFFIX

      See Also:
        Constant Field Values

    - #### POSDICT_FILENAME_SUFFIX

          public static final String POSDICT_FILENAME_SUFFIX

      See Also:
        Constant Field Values

    - #### DICT_HEADER

          public static final String DICT_HEADER

      See Also:
        Constant Field Values

    - #### TARGETMAP_HEADER

          public static final String TARGETMAP_HEADER

      See Also:
        Constant Field Values

    - #### POSDICT_HEADER

          public static final String POSDICT_HEADER

      See Also:
        Constant Field Values

    - #### VERSION

          public static final int VERSION

      See Also:
        Constant Field Values

    - #### HAS_SINGLE_POS

          public static final int HAS_SINGLE_POS

      flag that the entry has a single part of speech (leftPOS)
      See Also:
        Constant Field Values

    - #### HAS_READING

          public static final int HAS_READING

      flag that the entry has reading data. otherwise reading is surface form
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### BinaryDictionary

          protected BinaryDictionary()
                              throws IOException

      Throws:
        `IOException`

    - #### BinaryDictionary

          protected BinaryDictionary(BinaryDictionary.ResourceScheme resourceScheme,
                                     String resourcePath)
                              throws IOException

      Parameters:
        `resourceScheme` - - scheme for loading resources (FILE or CLASSPATH).
        `resourcePath` - - where to load resources (dictionaries) from. If null, with CLASSPATH scheme only, use this class's name as the path.
      Throws:
        `IOException`

  - ### Method Detail

    - #### getResource

          protected final InputStream getResource(String suffix)
                                           throws IOException

      Throws:
        `IOException`

    - #### getResource

          public static InputStream getResource(BinaryDictionary.ResourceScheme scheme,
                                                String path)
                                         throws IOException

      Throws:
        `IOException`

    - #### getClassResource

          public static InputStream getClassResource(Class<?> clazz,
                                                     String suffix)
                                              throws IOException

      Throws:
        `IOException`

    - #### lookupWordIds

          public void lookupWordIds(int sourceId,
                                    IntsRef ref)

    - #### getLeftId

          public int getLeftId(int wordId)

      Description copied from interface: `Dictionary`
      Get left id of specified word
      Specified by:
        `getLeftId` in interface `Dictionary`

    - #### getRightId

          public int getRightId(int wordId)

      Description copied from interface: `Dictionary`
      Get right id of specified word
      Specified by:
        `getRightId` in interface `Dictionary`

    - #### getWordCost

          public int getWordCost(int wordId)

      Description copied from interface: `Dictionary`
      Get word cost of specified word
      Specified by:
        `getWordCost` in interface `Dictionary`

    - #### getPOSType

          public POS.Type getPOSType(int wordId)

      Description copied from interface: `Dictionary`
      Get the `POS.Type` of specified word (morpheme, compound, inflect or pre-analysis)
      Specified by:
        `getPOSType` in interface `Dictionary`

    - #### getLeftPOS

          public POS.Tag getLeftPOS(int wordId)

      Description copied from interface: `Dictionary`
      Get the left `POS.Tag` of specfied word. For `POS.Type.MORPHEME` and `POS.Type.COMPOUND` the left and right POS are the same.
      Specified by:
        `getLeftPOS` in interface `Dictionary`

    - #### getRightPOS

          public POS.Tag getRightPOS(int wordId)

      Description copied from interface: `Dictionary`
      Get the right `POS.Tag` of specfied word. For `POS.Type.MORPHEME` and `POS.Type.COMPOUND` the left and right POS are the same.
      Specified by:
        `getRightPOS` in interface `Dictionary`

    - #### getReading

          public String getReading(int wordId)

      Description copied from interface: `Dictionary`
      Get the reading of specified word (mainly used for Hanja to Hangul conversion).
      Specified by:
        `getReading` in interface `Dictionary`

    - #### getMorphemes

          public Dictionary.Morpheme[] getMorphemes(int wordId,
                                                    char[] surfaceForm,
                                                    int off,
                                                    int len)

      Description copied from interface: `Dictionary`
      Get the morphemes of specified word (e.g. 가깝으나: 가깝 + 으나).
      Specified by:
        `getMorphemes` in interface `Dictionary`

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