public abstract class AbstractAnalysisFactory
extends java.lang.Object
TokenizerFactory
,
TokenFilterFactory
and CharFilterFactory
.
The typical lifecycle for a factory consumer is:
ResourceLoaderAware.inform(ResourceLoader)
is called to initialize those resources.
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
CLASS_NAME |
private boolean |
isExplicitLuceneMatchVersion
whether the luceneMatchVersion arg is explicitly specified in the serialized schema
|
private static java.util.regex.Pattern |
ITEM_PATTERN |
static java.lang.String |
LUCENE_MATCH_VERSION_PARAM |
protected Version |
luceneMatchVersion
the luceneVersion arg
|
private java.util.Map<java.lang.String,java.lang.String> |
originalArgs
The original args, before any processing
|
Modifier | Constructor and Description |
---|---|
protected |
AbstractAnalysisFactory(java.util.Map<java.lang.String,java.lang.String> args)
Initialize this factory via a set of key-value pairs.
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
get(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name) |
java.lang.String |
get(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
java.util.Collection<java.lang.String> allowedValues) |
java.lang.String |
get(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
java.util.Collection<java.lang.String> allowedValues,
java.lang.String defaultVal) |
java.lang.String |
get(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
java.util.Collection<java.lang.String> allowedValues,
java.lang.String defaultVal,
boolean caseSensitive) |
java.lang.String |
get(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
java.lang.String defaultVal) |
protected boolean |
getBoolean(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
boolean defaultVal) |
char |
getChar(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
char defaultValue) |
java.lang.String |
getClassArg() |
protected float |
getFloat(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
float defaultVal) |
protected int |
getInt(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
int defaultVal) |
protected java.util.List<java.lang.String> |
getLines(ResourceLoader loader,
java.lang.String resource)
Returns the resource's lines (with content treated as UTF-8)
|
Version |
getLuceneMatchVersion() |
java.util.Map<java.lang.String,java.lang.String> |
getOriginalArgs() |
protected java.util.regex.Pattern |
getPattern(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name)
Compiles a pattern for the value of the specified argument key
name |
java.util.Set<java.lang.String> |
getSet(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name)
Returns whitespace- and/or comma-separated set of values, or null if none are found
|
protected CharArraySet |
getSnowballWordSet(ResourceLoader loader,
java.lang.String wordFiles,
boolean ignoreCase)
same as
getWordSet(ResourceLoader, String, boolean) ,
except the input is in snowball format. |
protected CharArraySet |
getWordSet(ResourceLoader loader,
java.lang.String wordFiles,
boolean ignoreCase)
Returns as
CharArraySet from wordFiles, which
can be a comma-separated list of filenames |
boolean |
isExplicitLuceneMatchVersion() |
java.lang.String |
require(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name) |
java.lang.String |
require(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
java.util.Collection<java.lang.String> allowedValues) |
java.lang.String |
require(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name,
java.util.Collection<java.lang.String> allowedValues,
boolean caseSensitive) |
protected boolean |
requireBoolean(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name) |
char |
requireChar(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name) |
protected float |
requireFloat(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name) |
protected int |
requireInt(java.util.Map<java.lang.String,java.lang.String> args,
java.lang.String name) |
void |
setExplicitLuceneMatchVersion(boolean isExplicitLuceneMatchVersion) |
protected java.util.List<java.lang.String> |
splitAt(char separator,
java.lang.String list)
Splits a list separated by zero or more given separator characters.
|
protected java.util.List<java.lang.String> |
splitFileNames(java.lang.String fileNames)
Splits file names separated by comma character.
|
public static final java.lang.String LUCENE_MATCH_VERSION_PARAM
private final java.util.Map<java.lang.String,java.lang.String> originalArgs
protected final Version luceneMatchVersion
private boolean isExplicitLuceneMatchVersion
private static final java.util.regex.Pattern ITEM_PATTERN
private static final java.lang.String CLASS_NAME
protected AbstractAnalysisFactory(java.util.Map<java.lang.String,java.lang.String> args)
public final java.util.Map<java.lang.String,java.lang.String> getOriginalArgs()
public final Version getLuceneMatchVersion()
public java.lang.String require(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name)
public java.lang.String require(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, java.util.Collection<java.lang.String> allowedValues)
public java.lang.String require(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, java.util.Collection<java.lang.String> allowedValues, boolean caseSensitive)
public java.lang.String get(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name)
public java.lang.String get(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, java.lang.String defaultVal)
public java.lang.String get(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, java.util.Collection<java.lang.String> allowedValues)
public java.lang.String get(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, java.util.Collection<java.lang.String> allowedValues, java.lang.String defaultVal)
public java.lang.String get(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, java.util.Collection<java.lang.String> allowedValues, java.lang.String defaultVal, boolean caseSensitive)
protected final int requireInt(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name)
protected final int getInt(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, int defaultVal)
protected final boolean requireBoolean(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name)
protected final boolean getBoolean(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, boolean defaultVal)
protected final float requireFloat(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name)
protected final float getFloat(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, float defaultVal)
public char requireChar(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name)
public char getChar(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name, char defaultValue)
public java.util.Set<java.lang.String> getSet(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name)
protected final java.util.regex.Pattern getPattern(java.util.Map<java.lang.String,java.lang.String> args, java.lang.String name)
name
protected final CharArraySet getWordSet(ResourceLoader loader, java.lang.String wordFiles, boolean ignoreCase) throws java.io.IOException
CharArraySet
from wordFiles, which
can be a comma-separated list of filenamesjava.io.IOException
protected final java.util.List<java.lang.String> getLines(ResourceLoader loader, java.lang.String resource) throws java.io.IOException
java.io.IOException
protected final CharArraySet getSnowballWordSet(ResourceLoader loader, java.lang.String wordFiles, boolean ignoreCase) throws java.io.IOException
getWordSet(ResourceLoader, String, boolean)
,
except the input is in snowball format.java.io.IOException
protected final java.util.List<java.lang.String> splitFileNames(java.lang.String fileNames)
fileNames
- the string containing file namesprotected final java.util.List<java.lang.String> splitAt(char separator, java.lang.String list)
list
- the string containing the split list itemspublic java.lang.String getClassArg()
getClass().getName()
.public boolean isExplicitLuceneMatchVersion()
public void setExplicitLuceneMatchVersion(boolean isExplicitLuceneMatchVersion)