Package org.apache.lucene.analysis.util
Class AbstractAnalysisFactory
- java.lang.Object
-
- org.apache.lucene.analysis.util.AbstractAnalysisFactory
-
- Direct Known Subclasses:
CharFilterFactory
,TokenFilterFactory
,TokenizerFactory
public abstract class AbstractAnalysisFactory extends Object
Abstract parent class for analysis factoriesTokenizerFactory
,TokenFilterFactory
andCharFilterFactory
.The typical lifecycle for a factory consumer is:
- Create factory via its constructor (or via XXXFactory.forName)
- (Optional) If the factory uses resources such as files,
ResourceLoaderAware.inform(ResourceLoader)
is called to initialize those resources. - Consumer calls create() to obtain instances.
-
-
Field Summary
Fields Modifier and Type Field Description static String
LUCENE_MATCH_VERSION_PARAM
protected Version
luceneMatchVersion
the luceneVersion arg
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractAnalysisFactory(Map<String,String> args)
Initialize this factory via a set of key-value pairs.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
get(Map<String,String> args, String name)
String
get(Map<String,String> args, String name, String defaultVal)
String
get(Map<String,String> args, String name, Collection<String> allowedValues)
String
get(Map<String,String> args, String name, Collection<String> allowedValues, String defaultVal)
String
get(Map<String,String> args, String name, Collection<String> allowedValues, String defaultVal, boolean caseSensitive)
protected boolean
getBoolean(Map<String,String> args, String name, boolean defaultVal)
char
getChar(Map<String,String> args, String name, char defaultValue)
String
getClassArg()
protected float
getFloat(Map<String,String> args, String name, float defaultVal)
protected int
getInt(Map<String,String> args, String name, int defaultVal)
protected List<String>
getLines(ResourceLoader loader, String resource)
Returns the resource's lines (with content treated as UTF-8)Version
getLuceneMatchVersion()
Map<String,String>
getOriginalArgs()
protected Pattern
getPattern(Map<String,String> args, String name)
Compiles a pattern for the value of the specified argument keyname
Set<String>
getSet(Map<String,String> args, String name)
Returns whitespace- and/or comma-separated set of values, or null if none are foundprotected CharArraySet
getSnowballWordSet(ResourceLoader loader, String wordFiles, boolean ignoreCase)
same asgetWordSet(ResourceLoader, String, boolean)
, except the input is in snowball format.protected CharArraySet
getWordSet(ResourceLoader loader, String wordFiles, boolean ignoreCase)
Returns asCharArraySet
from wordFiles, which can be a comma-separated list of filenamesboolean
isExplicitLuceneMatchVersion()
String
require(Map<String,String> args, String name)
String
require(Map<String,String> args, String name, Collection<String> allowedValues)
String
require(Map<String,String> args, String name, Collection<String> allowedValues, boolean caseSensitive)
protected boolean
requireBoolean(Map<String,String> args, String name)
char
requireChar(Map<String,String> args, String name)
protected float
requireFloat(Map<String,String> args, String name)
protected int
requireInt(Map<String,String> args, String name)
void
setExplicitLuceneMatchVersion(boolean isExplicitLuceneMatchVersion)
protected List<String>
splitAt(char separator, String list)
Splits a list separated by zero or more given separator characters.protected List<String>
splitFileNames(String fileNames)
Splits file names separated by comma character.
-
-
-
Field Detail
-
LUCENE_MATCH_VERSION_PARAM
public static final String LUCENE_MATCH_VERSION_PARAM
- See Also:
- Constant Field Values
-
luceneMatchVersion
protected final Version luceneMatchVersion
the luceneVersion arg
-
-
Method Detail
-
getLuceneMatchVersion
public final Version getLuceneMatchVersion()
-
require
public String require(Map<String,String> args, String name, Collection<String> allowedValues)
-
require
public String require(Map<String,String> args, String name, Collection<String> allowedValues, boolean caseSensitive)
-
get
public String get(Map<String,String> args, String name, Collection<String> allowedValues, String defaultVal)
-
get
public String get(Map<String,String> args, String name, Collection<String> allowedValues, String defaultVal, boolean caseSensitive)
-
getBoolean
protected final boolean getBoolean(Map<String,String> args, String name, boolean defaultVal)
-
getSet
public Set<String> getSet(Map<String,String> args, String name)
Returns whitespace- and/or comma-separated set of values, or null if none are found
-
getPattern
protected final Pattern getPattern(Map<String,String> args, String name)
Compiles a pattern for the value of the specified argument keyname
-
getWordSet
protected final CharArraySet getWordSet(ResourceLoader loader, String wordFiles, boolean ignoreCase) throws IOException
Returns asCharArraySet
from wordFiles, which can be a comma-separated list of filenames- Throws:
IOException
-
getLines
protected final List<String> getLines(ResourceLoader loader, String resource) throws IOException
Returns the resource's lines (with content treated as UTF-8)- Throws:
IOException
-
getSnowballWordSet
protected final CharArraySet getSnowballWordSet(ResourceLoader loader, String wordFiles, boolean ignoreCase) throws IOException
same asgetWordSet(ResourceLoader, String, boolean)
, except the input is in snowball format.- Throws:
IOException
-
splitFileNames
protected final List<String> splitFileNames(String fileNames)
Splits file names separated by comma character. File names can contain comma characters escaped by backslash '\'- Parameters:
fileNames
- the string containing file names- Returns:
- a list of file names with the escaping backslashed removed
-
splitAt
protected final List<String> splitAt(char separator, String list)
Splits a list separated by zero or more given separator characters. List items can contain comma characters escaped by backslash '\'. Whitespace is NOT trimmed from the returned list items.- Parameters:
list
- the string containing the split list items- Returns:
- a list of items with the escaping backslashes removed
-
getClassArg
public String getClassArg()
- Returns:
- the string used to specify the concrete class name in a serialized representation: the class arg.
If the concrete class name was not specified via a class arg, returns
getClass().getName()
.
-
isExplicitLuceneMatchVersion
public boolean isExplicitLuceneMatchVersion()
-
setExplicitLuceneMatchVersion
public void setExplicitLuceneMatchVersion(boolean isExplicitLuceneMatchVersion)
-
-