IndonesianAnalyzer (Lucene 10.5.0 common API)
Description: declaration: package: org.apache.lucene.analysis.id, class: IndonesianAnalyzer

Package org.apache.lucene.analysis.id

# Class IndonesianAnalyzer

java.lang.Object
org.apache.lucene.analysis.Analyzer
org.apache.lucene.analysis.StopwordAnalyzerBase
org.apache.lucene.analysis.id.IndonesianAnalyzer

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`

public final class IndonesianAnalyzer extends StopwordAnalyzerBase
Analyzer for Indonesian (Bahasa)

Since:
  3.1

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class org.apache.lucene.analysis.Analyzer

  `Analyzer.ReuseStrategy, Analyzer.TokenStreamComponents`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `DEFAULT_STOPWORD_FILE`
  File containing default Indonesian stopwords.

  ### Fields inherited from class org.apache.lucene.analysis.StopwordAnalyzerBase

  `stopwords`

  ### Fields inherited from class org.apache.lucene.analysis.Analyzer

  `GLOBAL_REUSE_STRATEGY, PER_FIELD_REUSE_STRATEGY`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `IndonesianAnalyzer()`
  Builds an analyzer with the default stop words: `DEFAULT_STOPWORD_FILE`.
  `IndonesianAnalyzer(CharArraySet stopwords)`
  Builds an analyzer with the given stop words
  `IndonesianAnalyzer(CharArraySet stopwords, CharArraySet stemExclusionSet)`
  Builds an analyzer with the given stop word.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected Analyzer.TokenStreamComponents`
  `createComponents(String fieldName)`
  Creates `Analyzer.TokenStreamComponents` used to tokenize all the text in the provided `Reader`.
  `static CharArraySet`
  `getDefaultStopSet()`
  Returns an unmodifiable instance of the default stop-words set.
  `protected TokenStream`
  `normalize(String fieldName, TokenStream in)`

  ### Methods inherited from class org.apache.lucene.analysis.StopwordAnalyzerBase

  `getStopwordSet, loadStopwordSet, loadStopwordSet`

  ### Methods inherited from class org.apache.lucene.analysis.Analyzer

  `attributeFactory, close, getOffsetGap, getPositionIncrementGap, getReuseStrategy, initReader, initReaderForNormalization, normalize, tokenStream, tokenStream`

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

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

- ## Field Details

  - ### DEFAULT_STOPWORD_FILE

    public static final String DEFAULT_STOPWORD_FILE
    File containing default Indonesian stopwords.
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### IndonesianAnalyzer

    public IndonesianAnalyzer()
    Builds an analyzer with the default stop words: `DEFAULT_STOPWORD_FILE`.

  - ### IndonesianAnalyzer

    public IndonesianAnalyzer(CharArraySet stopwords)
    Builds an analyzer with the given stop words
    Parameters:
      `stopwords` - a stopword set

  - ### IndonesianAnalyzer

    public IndonesianAnalyzer(CharArraySet stopwords, CharArraySet stemExclusionSet)
    Builds an analyzer with the given stop word. If a none-empty stem exclusion set is provided this analyzer will add a `SetKeywordMarkerFilter` before `IndonesianStemFilter`.
    Parameters:
      `stopwords` - a stopword set
      `stemExclusionSet` - a set of terms not to be stemmed

- ## Method Details

  - ### getDefaultStopSet

    public static CharArraySet getDefaultStopSet()
    Returns an unmodifiable instance of the default stop-words set.
    Returns:
      an unmodifiable instance of the default stop-words set.

  - ### createComponents

    protected Analyzer.TokenStreamComponents createComponents(String fieldName)
    Creates `Analyzer.TokenStreamComponents` used to tokenize all the text in the provided `Reader`.
    Specified by:
      `createComponents` in class `Analyzer`
    Returns:
      `Analyzer.TokenStreamComponents` built from an `StandardTokenizer` filtered with `LowerCaseFilter`, `StopFilter`, `SetKeywordMarkerFilter` if a stem exclusion set is provided and `IndonesianStemFilter`.

  - ### normalize

    protected TokenStream normalize(String fieldName, TokenStream in)
    Overrides:
      `normalize` in class `Analyzer`