Class Dictionary

java.lang.Object
org.apache.lucene.analysis.hunspell.Dictionary

public class Dictionary extends Object
In-memory structure for the dictionary (.dic) and affix (.aff) data of a hunspell dictionary.
  • Constructor Details

    • Dictionary

      public Dictionary(Directory tempDir, String tempFileNamePrefix, InputStream affix, InputStream dictionary) throws IOException, ParseException
      Creates a new Dictionary containing the information read from the provided InputStreams to hunspell affix and dictionary files. You have to close the provided InputStreams yourself.
      Parameters:
      tempDir - Directory to use for offline sorting
      tempFileNamePrefix - prefix to use to generate temp file names
      affix - InputStream for reading the hunspell affix file (won't be closed).
      dictionary - InputStream for reading the hunspell dictionary file (won't be closed).
      Throws:
      IOException - Can be thrown while reading from the InputStreams
      ParseException - Can be thrown if the content of the files does not meet expected formats
    • Dictionary

      public Dictionary(Directory tempDir, String tempFileNamePrefix, InputStream affix, List<InputStream> dictionaries, boolean ignoreCase) throws IOException, ParseException
      Creates a new Dictionary containing the information read from the provided InputStreams to hunspell affix and dictionary files. You have to close the provided InputStreams yourself.
      Parameters:
      tempDir - Directory to use for offline sorting
      tempFileNamePrefix - prefix to use to generate temp file names
      affix - InputStream for reading the hunspell affix file (won't be closed).
      dictionaries - InputStream for reading the hunspell dictionary files (won't be closed).
      Throws:
      IOException - Can be thrown while reading from the InputStreams
      ParseException - Can be thrown if the content of the files does not meet expected formats
    • Dictionary

      public Dictionary(InputStream affix, List<InputStream> dictionaries, boolean ignoreCase, SortingStrategy sortingStrategy) throws IOException, ParseException
      Creates a new Dictionary containing the information read from the provided InputStreams to hunspell affix and dictionary files. You have to close the provided InputStreams yourself.
      Parameters:
      affix - InputStream for reading the hunspell affix file (won't be closed).
      dictionaries - InputStream for reading the hunspell dictionary files (won't be closed).
      sortingStrategy - the entry strategy for the dictionary loading
      Throws:
      IOException - Can be thrown while reading from the InputStreams
      ParseException - Can be thrown if the content of the files does not meet expected formats
  • Method Details

    • lookupEntries

      public DictEntries lookupEntries(String root)
      Parameters:
      root - a string to look up in the dictionary. No case conversion or affix removal is performed. To get the possible roots of any word, you may call Hunspell.getRoots(String)
      Returns:
      the dictionary entries for the given root, or null if there's none
    • hashFactor

      protected double hashFactor()
      The factor determining the size of the internal hash table used for storing the entries. The table size is entry_count * hashFactor. The default factor is 1.0. If there are too many hash collisions, the factor can be increased, resulting in faster access, but more memory usage.
    • tolerateAffixRuleCountMismatches

      protected boolean tolerateAffixRuleCountMismatches()
      Whether incorrect PFX/SFX rule counts should be silently ignored. False by default: a ParseException will happen.
    • getIgnoreCase

      public boolean getIgnoreCase()
      Returns true if this dictionary was constructed with the ignoreCase option