org.apache.lucene.analysis.synonym

## Class SynonymMap.Builder

- java.lang.Object
- - org.apache.lucene.analysis.synonym.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 Summary

    Constructors
    Constructor and Description
    `SynonymMap.Builder(boolean dedup)` If dedup is true then identical rules (same input, same output) will be added only once.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(CharsRef input, CharsRef output, boolean includeOrig)` Add a phrase->phrase synonym mapping.
    `static CharsRef` | `analyze(Analyzer analyzer, String text, CharsRef reuse)` Sugar: analyzes the text with the analyzer and separates by `SynonymMap.WORD_SEPARATOR`.
    `SynonymMap` | `build()` Builds an `SynonymMap` and returns it.
    `static CharsRef` | `join(String[] words, CharsRef reuse)` Sugar: just joins the provided terms with `SynonymMap.WORD_SEPARATOR`.

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

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

- - ### Constructor Detail

    - #### SynonymMap.Builder

          public SynonymMap.Builder(boolean dedup)

      If dedup is true then identical rules (same input, same output) will be added only once.

  - ### Method Detail

    - #### join

          public static CharsRef join(String[] words,
                      CharsRef reuse)

      Sugar: just joins the provided terms with `SynonymMap.WORD_SEPARATOR`. reuse and its chars must not be null.

    - #### analyze

          public static CharsRef analyze(Analyzer analyzer,
                         String text,
                         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(CharsRef input,
                 CharsRef output,
                 boolean includeOrig)

      Add a phrase->phrase synonym mapping. Phrases are character sequences where words are separated with character zero (U+0000). Empty words (two U+0000s 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

    - #### build

          public SynonymMap build()
                           throws IOException

      Builds an `SynonymMap` and returns it.
      Throws:
        `IOException`

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