Package org.apache.solr.search
Class FunctionQParser
- java.lang.Object
-
- org.apache.solr.search.QParser
-
- org.apache.solr.search.FunctionQParser
-
public class FunctionQParser extends QParser
-
-
Field Summary
Fields Modifier and Type Field Description static intFLAG_CONSUME_DELIMITERstatic intFLAG_DEFAULTstatic intFLAG_IS_AGGstatic intFLAG_PARSE_VECTOR_BYTE_ENCODINGstatic intFLAG_USE_FIELDNAME_SOURCEStrParsersp-
Fields inherited from class org.apache.solr.search.QParser
FLAG_FILTER, flags, localParams, localParamsEnd, params, qstr, query, recurseCount, req, stringIncludingLocalParams, valFollowedParams
-
-
Constructor Summary
Constructors Constructor Description FunctionQParser(String qstr, org.apache.solr.common.params.SolrParams localParams, org.apache.solr.common.params.SolrParams params, SolrQueryRequest req)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanargWasQuoted()protected booleanconsumeArgumentDelimiter()Consume an argument delimiter (a comma) from the token stream.booleangetParseMultipleSources()parse multiple comma separated value sourcesbooleangetParseToEnd()throw exception if there is extra stuff at the end of the parsed valuesource(s).booleanhasMoreArguments()Are there more arguments in the argument list being parsed?org.apache.lucene.search.Queryparse()Create and return theQueryobject represented byqstr.AggValueSourceparseAgg(int flags)StringparseArg()org.apache.lucene.queries.function.ValueSourceparseConstVector(int flags)doubleparseDouble()Parse a DoubleFloatparseFloat()Parse a float.StringparseId()intparseInt()Parse an integerorg.apache.lucene.search.QueryparseNestedQuery()org.apache.lucene.queries.function.ValueSourceparseValueSource()Parse an individual ValueSource.protected org.apache.lucene.queries.function.ValueSourceparseValueSource(boolean doConsumeDelimiter)Parse an individual value source.protected org.apache.lucene.queries.function.ValueSourceparseValueSource(int flags)List<org.apache.lucene.queries.function.ValueSource>parseValueSourceList()Parse a list of ValueSource.List<org.apache.lucene.queries.function.ValueSource>parseValueSourceList(int flags)Parse a list of ValueSource.List<Number>parseVector(org.apache.lucene.index.VectorEncoding encoding)voidsetParseMultipleSources(boolean parseMultipleSources)voidsetParseToEnd(boolean parseToEnd)voidsetString(String s)-
Methods inherited from class org.apache.solr.search.QParser
addDebugInfo, getDefaultHighlightFields, getFlags, getHighlightQuery, getLocalParams, getParam, getParams, getParser, getParser, getParser, getQuery, getReq, getSortSpec, getString, isFilter, setFlags, setIsFilter, setLocalParams, setParams, setReq, subQuery
-
-
-
-
Field Detail
-
FLAG_CONSUME_DELIMITER
public static final int FLAG_CONSUME_DELIMITER
- See Also:
- Constant Field Values
-
FLAG_IS_AGG
public static final int FLAG_IS_AGG
- See Also:
- Constant Field Values
-
FLAG_USE_FIELDNAME_SOURCE
public static final int FLAG_USE_FIELDNAME_SOURCE
- See Also:
- Constant Field Values
-
FLAG_PARSE_VECTOR_BYTE_ENCODING
public static final int FLAG_PARSE_VECTOR_BYTE_ENCODING
- See Also:
- Constant Field Values
-
FLAG_DEFAULT
public static final int FLAG_DEFAULT
- See Also:
- Constant Field Values
-
sp
public StrParser sp
- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
-
Constructor Detail
-
FunctionQParser
public FunctionQParser(String qstr, org.apache.solr.common.params.SolrParams localParams, org.apache.solr.common.params.SolrParams params, SolrQueryRequest req)
-
-
Method Detail
-
setParseMultipleSources
public void setParseMultipleSources(boolean parseMultipleSources)
-
getParseMultipleSources
public boolean getParseMultipleSources()
parse multiple comma separated value sources
-
setParseToEnd
public void setParseToEnd(boolean parseToEnd)
-
getParseToEnd
public boolean getParseToEnd()
throw exception if there is extra stuff at the end of the parsed valuesource(s).
-
parse
public org.apache.lucene.search.Query parse() throws SyntaxErrorDescription copied from class:QParserCreate and return theQueryobject represented byqstr. Null MAY be returned to signify there was no input (e.g. no query string) to parse.- Specified by:
parsein classQParser- Throws:
SyntaxError- See Also:
QParser.getQuery()
-
hasMoreArguments
public boolean hasMoreArguments() throws SyntaxErrorAre there more arguments in the argument list being parsed?- Returns:
- whether more args exist
- Throws:
SyntaxError
-
parseId
public String parseId() throws SyntaxError
- Throws:
SyntaxError
-
parseFloat
public Float parseFloat() throws SyntaxError
Parse a float.- Returns:
- Float
- Throws:
SyntaxError
-
parseDouble
public double parseDouble() throws SyntaxErrorParse a Double- Returns:
- double
- Throws:
SyntaxError
-
parseInt
public int parseInt() throws SyntaxErrorParse an integer- Returns:
- An int
- Throws:
SyntaxError
-
argWasQuoted
public boolean argWasQuoted()
-
parseArg
public String parseArg() throws SyntaxError
- Throws:
SyntaxError
-
parseVector
public List<Number> parseVector(org.apache.lucene.index.VectorEncoding encoding) throws SyntaxError
- Throws:
SyntaxError
-
parseValueSourceList
public List<org.apache.lucene.queries.function.ValueSource> parseValueSourceList() throws SyntaxError
Parse a list of ValueSource. Must be the final set of arguments to a ValueSource.- Returns:
- List<ValueSource>
- Throws:
SyntaxError
-
parseValueSourceList
public List<org.apache.lucene.queries.function.ValueSource> parseValueSourceList(int flags) throws SyntaxError
Parse a list of ValueSource. Must be the final set of arguments to a ValueSource.- Parameters:
flags- - customize parsing behavior- Returns:
- List<ValueSource>
- Throws:
SyntaxError
-
parseValueSource
public org.apache.lucene.queries.function.ValueSource parseValueSource() throws SyntaxErrorParse an individual ValueSource.- Throws:
SyntaxError
-
parseNestedQuery
public org.apache.lucene.search.Query parseNestedQuery() throws SyntaxError- Throws:
SyntaxError
-
parseValueSource
protected org.apache.lucene.queries.function.ValueSource parseValueSource(boolean doConsumeDelimiter) throws SyntaxErrorParse an individual value source.- Parameters:
doConsumeDelimiter- whether to consume a delimiter following the ValueSource- Throws:
SyntaxError
-
parseValueSource
protected org.apache.lucene.queries.function.ValueSource parseValueSource(int flags) throws SyntaxError- Throws:
SyntaxError
-
parseConstVector
public org.apache.lucene.queries.function.ValueSource parseConstVector(int flags) throws SyntaxError- Throws:
SyntaxError
-
parseAgg
public AggValueSource parseAgg(int flags) throws SyntaxError
- Throws:
SyntaxError- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
consumeArgumentDelimiter
protected boolean consumeArgumentDelimiter() throws SyntaxErrorConsume an argument delimiter (a comma) from the token stream. Only consumes if more arguments should exist (no ending parens or end of string).- Returns:
- whether a delimiter was consumed
- Throws:
SyntaxError
-
-