Class SynonymMap.Builder

  • Direct Known Subclasses:
    SolrSynonymParser, WordnetSynonymParser
    Enclosing class:
    SynonymMap

    public static class SynonymMap.Builder
    extends Object
    Builds an FSTSynonymMap.

    Call add() until you have added all the mappings, then call build() to get an FSTSynonymMap

    WARNING: This API is experimental and might change in incompatible ways in the next release.
    • Constructor Detail

      • Builder

        public Builder​(boolean dedup)
        If dedup is true then identical rules (same input, same output) will be added only once.
    • Method Detail

      • join

        public static org.apache.lucene.util.CharsRef join​(String[] words,
                                                           org.apache.lucene.util.CharsRef reuse)
        Sugar: just joins the provided terms with SynonymMap.WORD_SEPARATOR. reuse and its chars must not be null.
      • analyze

        public static org.apache.lucene.util.CharsRef analyze​(org.apache.lucene.analysis.Analyzer analyzer,
                                                              String text,
                                                              org.apache.lucene.util.CharsRef reuse)
                                                       throws IOException
        Sugar: analyzes the text with the analyzer and separates by SynonymMap.WORD_SEPARATOR. reuse and its chars must not be null.
        Throws:
        IOException
      • add

        public void add​(org.apache.lucene.util.CharsRef input,
                        org.apache.lucene.util.CharsRef output,
                        boolean includeOrig)
        Add a phrase->phrase synonym mapping. Phrases are character sequences where words are separated with character zero (). Empty words (two s in a row) are not allowed in the input nor the output!
        Parameters:
        input - input phrase
        output - output phrase
        includeOrig - true if the original should be included