public final class CustomAnalyzer extends Analyzer
TokenizerFactory,
TokenFilterFactory, and CharFilterFactory.
You can create an instance of this Analyzer using the builder:
Analyzer ana = CustomAnalyzer.builder(Paths.get("/path/to/config/dir"))
.withTokenizer(StandardTokenizerFactory.class)
.addTokenFilter(StandardFilterFactory.class)
.addTokenFilter(LowerCaseFilterFactory.class)
.addTokenFilter(StopFilterFactory.class, "ignoreCase", "false", "words", "stopwords.txt", "format", "wordset")
.build();
The parameters passed to components are also used by Apache Solr and are documented
on their corresponding factory classes. Refer to documentation of subclasses
of TokenizerFactory, TokenFilterFactory, and CharFilterFactory.
You can also use the SPI names (as defined by ServiceLoader interface):
Analyzer ana = CustomAnalyzer.builder(Paths.get("/path/to/config/dir"))
.withTokenizer("standard")
.addTokenFilter("standard")
.addTokenFilter("lowercase")
.addTokenFilter("stop", "ignoreCase", "false", "words", "stopwords.txt", "format", "wordset")
.build();
The list of names to be used for components can be looked up through:
TokenizerFactory.availableTokenizers(), TokenFilterFactory.availableTokenFilters(),
and CharFilterFactory.availableCharFilters().
| Modifier and Type | Class and Description |
|---|---|
static class |
CustomAnalyzer.Builder
Builder for
CustomAnalyzer. |
Analyzer.ReuseStrategy, Analyzer.TokenStreamComponentsGLOBAL_REUSE_STRATEGY, PER_FIELD_REUSE_STRATEGY| Modifier and Type | Method and Description |
|---|---|
static CustomAnalyzer.Builder |
builder()
Returns a builder for custom analyzers that loads all resources from classpath.
|
static CustomAnalyzer.Builder |
builder(Path configDir)
Returns a builder for custom analyzers that loads all resources from the given
file system base directory.
|
static CustomAnalyzer.Builder |
builder(ResourceLoader loader)
Returns a builder for custom analyzers that loads all resources using the given
ResourceLoader. |
protected Analyzer.TokenStreamComponents |
createComponents(String fieldName) |
List<CharFilterFactory> |
getCharFilterFactories()
Returns the list of char filters that are used in this analyzer.
|
int |
getOffsetGap(String fieldName) |
int |
getPositionIncrementGap(String fieldName) |
List<TokenFilterFactory> |
getTokenFilterFactories()
Returns the list of token filters that are used in this analyzer.
|
TokenizerFactory |
getTokenizerFactory()
Returns the tokenizer that is used in this analyzer.
|
protected Reader |
initReader(String fieldName,
Reader reader) |
protected Reader |
initReaderForNormalization(String fieldName,
Reader reader) |
protected TokenStream |
normalize(String fieldName,
TokenStream in) |
String |
toString() |
attributeFactory, close, getReuseStrategy, getVersion, normalize, setVersion, tokenStream, tokenStreampublic static CustomAnalyzer.Builder builder()
public static CustomAnalyzer.Builder builder(Path configDir)
public static CustomAnalyzer.Builder builder(ResourceLoader loader)
ResourceLoader.protected Reader initReader(String fieldName, Reader reader)
initReader in class Analyzerprotected Reader initReaderForNormalization(String fieldName, Reader reader)
initReaderForNormalization in class Analyzerprotected Analyzer.TokenStreamComponents createComponents(String fieldName)
createComponents in class Analyzerprotected TokenStream normalize(String fieldName, TokenStream in)
public int getPositionIncrementGap(String fieldName)
getPositionIncrementGap in class Analyzerpublic int getOffsetGap(String fieldName)
getOffsetGap in class Analyzerpublic List<CharFilterFactory> getCharFilterFactories()
public TokenizerFactory getTokenizerFactory()
public List<TokenFilterFactory> getTokenFilterFactories()
Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.