public abstract class Query extends Object implements LocaleAware, QueryParameters
Modifier and Type | Class and Description |
---|---|
protected static class |
QueryComponent.Parameter
Linked list of parameters.
|
Modifier and Type | Field and Description |
---|---|
protected int |
boost |
protected static BaseTypesMap<String,Object> |
DEFAULT_PARAMETERS
Map of default values for query parameters
|
protected static Set<String> |
IGNORE_PARAMETERS
Set of parameters to ignore for equality checks.
|
protected QueryComponent.Parameter |
parameters |
ACL, ACRONYMS, ACRONYMS_EXPANDED, ACRONYMS_ORIGINAL, ALIAS, ALLOW, ANONYMOUS, BOOST, BOOST_FREQUENCY, BOOST_POSITION, BOOST_PROXIMITY, COMPLETENESS_BOOST, DEFAULT_BOOST, DEFAULT_DEPTH, DEFAULT_FIELD_NORMS, DEFAULT_FUZZY_MAX_TERMS, DEFAULT_MINIMUM, DEFAULT_QUOTED, DEFAULT_RECURSIVE, DEFAULT_ROLLUP_LIMIT, DEFAULT_SCORE_DEPTH, DEFAULT_SCORE_EXPLAIN, DEFAULT_SEARCH_FIELD, DEFAULT_SIMILARITY, DEFAULT_SPAN, DENY, DEPTH, DISABLE_COORD, DISTANCE, FACET, FIELD_NORMS, FUZZY_MAX_TERMS, LANGUAGE, LOWER, METHOD, MINIMUM, ON, ORDER, QUERY, QUERY_LANGUAGE, QUOTED, RECURSIVE, RELEVANCY_MODEL, ROLLUP, SCORE_DEPTH, SCORE_EXPLAIN, SCORE_FUNCTIONS, SCORE_MODE, SIMILARITY, SIMILARITY_PREFIX, SOUNDS_LIKE, SPAN, SPELLCHECK_CORRECTED, SPELLCHECK_EXPANDED, SPELLCHECK_MODE, SPELLCHECK_ORIGINAL, SPELLCHECK_SUGGESTIONS, STOPWORDS, SYNONYMS, SYNONYMS_EXPANDED, SYNONYMS_ORIGINAL, TOKENIZE, UNSECURED_ZONES, UPPER, WARNING, WILDCARD, XON
Modifier | Constructor and Description |
---|---|
protected |
Query() |
Modifier and Type | Method and Description |
---|---|
protected static void |
addParameter(StringBuilder buffer,
String name,
Object value)
Add "\"
name \"=\"value \"" to buffer . |
protected void |
addParameters(StringBuilder buffer,
boolean compact)
Append all parameters for this query to
buffer . |
protected static void |
appendParameter(StringBuilder buffer,
String name,
Object value)
Add ", \"
name \"=\"value \"" to buffer . |
protected void |
appendParameters(StringBuilder buffer,
boolean compact)
Append all
parameters to buffer . |
Query |
clone()
Returns a deep copy of this Query instance.
|
boolean |
containsParameter(String name)
Returns true if the specified parameter exists for this Query object.
|
boolean |
containsParameters() |
boolean |
equals(Object other) |
protected boolean |
equals(Object other,
Map<String,Object> defaults,
Set<String> ignore)
Checks whether
query equals this Query object. |
boolean |
equals(Query other,
Map<String,Object> defaults,
String... ignore)
Checks whether
query equals this Query object. |
protected static boolean |
equals(Query a,
Query b,
Map<String,Object> defaults,
Set<String> ignore)
Query equality method for 2 arbitrary query objects (null aware).
|
protected static void |
escape(StringBuilder buffer,
Object value) |
protected void |
escape(StringBuilder buffer,
String value,
boolean quote)
Helper method to escape a string for toString() .
|
int |
getBoost()
Gets the boost value for this Query.
|
Query |
getFirstNode(QueryHandler selector)
Get the first query in the tree that has
parameter set to value . |
protected Object |
getInternalParameter(String name) |
Locale |
getLocale()
Gets the local associated with this object or null if not set.
|
protected void |
getNodes(List<Query> nodes,
QueryHandler selector)
Internal method to collect all nodes that have
parameter set to value . |
Iterable<Query> |
getNodes(QueryHandler selector)
Get all nodes in the query tree that have
parameter set to value . |
Object |
getParameter(String name)
Returns a named property for this Query object.
|
boolean |
getParameter(String name,
boolean defaultValue)
Gets a boolean parameter.
|
double |
getParameter(String name,
double defaultValue)
Gets a double parameter.
|
float |
getParameter(String name,
float defaultValue)
Gets a float parameter.
|
int |
getParameter(String name,
int defaultValue)
Gets an integer parameter.
|
long |
getParameter(String name,
long defaultValue)
Gets a long parameter.
|
Object |
getParameter(String name,
Object defaultValue)
Gets a parameter.
|
String |
getParameter(String name,
String defaultValue)
Gets a String parameter.
|
String |
getQueryLanguage()
Get the query language for this query.
|
String |
getQueryString()
Get the query string used to create this query.
|
int |
hashCode() |
protected static StringBuilder |
indent(StringBuilder buffer,
int indent)
Support method to indent a "line" in a StringBuilder.
|
protected boolean |
isCompactParameter(String key,
Object value)
Check if parameter should be included in compact representation.
|
Query |
optimize()
Optimizes this query object, removing unnecessary levels of expressions.
|
Iterator<Map.Entry<String,Object>> |
parameters()
Get an iterator for returning all custom parameters.
|
protected static int |
parseIntParameter(Object value,
int defaultValue) |
String |
prettyFormat()
Returns a hierarchical representation of this query as a string.
|
protected void |
prettyFormat(StringBuilder buffer,
int indent)
Pretty format all parameters for this Query instance.
|
protected void |
prettyFormatParameters(StringBuilder buffer,
int indent) |
void |
prettyPrint()
Sends a hierarchical representation of this query to standard out.
|
void |
prettyPrint(PrintStream out)
Sends a hierarchical representation of this query specified PrintStream.
|
Object |
removeParameter(String name)
Remove the value for a parameter for this Query object.
|
Query |
rewrite(QueryHandler handler)
Recursively rewrite this query using
handler . |
void |
rewriteChildren(QueryHandler handler)
Rewrite child nodes using
handler . |
protected void |
setBooleanParameter(String key,
Object value)
Internal method for setting a boolean parameter.
|
void |
setBoost(int value)
Sets the boost for this Query.
|
void |
setBoost(String value)
Sets the boost for this Query.
|
protected void |
setEnumParameter(String key,
Object value,
String... enumValues)
Internal method for setting an object parameter.
|
protected void |
setIntegerParameter(String key,
Object value)
Internal method for setting an integer parameter.
|
void |
setLocale(Locale locale)
Sets the local associated with this object.
|
void |
setParameter(String name,
Object value) |
void |
setParameters(Map<String,Object> value) |
void |
setParameters(Map<String,Object> params,
boolean override)
Copies parameters from a Map into this Query.
|
void |
setParameters(Query query)
Copies all parameters from another query into this Query instance.
|
void |
setParameters(Query query,
boolean override)
Copies all parameters from another query into this Query instance.
|
protected void |
setRollupParameter(String key,
Object value) |
protected void |
setStringParameter(String key,
Object value)
Internal method for setting a string parameter.
|
protected void |
setUnsignedParameter(String key,
Object value)
Internal method for setting an integer parameter.
|
String |
toString() |
String |
toString(boolean compact) |
protected abstract void |
toString(StringBuilder buffer,
boolean compact)
Write the String representation of this query to
buffer . |
protected static final BaseTypesMap<String,Object> DEFAULT_PARAMETERS
protected static final Set<String> IGNORE_PARAMETERS
protected int boost
protected QueryComponent.Parameter parameters
public void setParameters(Query query)
query
- the Query to copy parameters frompublic void setParameters(Query query, boolean override)
query
- the Query to copy parameters from.override
- indicates if parameters from query should overwrite existing parameters in this Queryprotected boolean isCompactParameter(String key, Object value)
public boolean containsParameters()
protected void addParameters(StringBuilder buffer, boolean compact)
buffer
.protected void appendParameters(StringBuilder buffer, boolean compact)
parameters
to buffer
.protected void prettyFormatParameters(StringBuilder buffer, int indent)
public int getBoost()
public void setBoost(int value)
public void setBoost(String value) throws IllegalArgumentException
value
- the boost to setIllegalArgumentException
- if value is not parsable as a numberpublic Locale getLocale()
getLocale
in interface LocaleAware
public void setLocale(Locale locale)
setLocale
in interface LocaleAware
public String getQueryString()
NOTE: this may be null if the query object was created manually.
QueryParameters.QUERY
public String getQueryLanguage()
NOTE: this may not be meaningful in the event that this query was programatically created.
public Query rewrite(QueryHandler handler)
handler
.public void rewriteChildren(QueryHandler handler)
handler
.public Query getFirstNode(QueryHandler selector)
parameter
set to value
.
WARNING: this is an experimental API and may change in the near future.
selector
, or null
if no match found.public final Iterable<Query> getNodes(QueryHandler selector)
parameter
set to value
.
WARNING: this is an experimental API and may change in the near future.
protected void getNodes(List<Query> nodes, QueryHandler selector)
parameter
set to value
.public Query optimize()
public final boolean equals(Query other, Map<String,Object> defaults, String... ignore)
query
equals this Query object.other
- the query to compare todefaults
- map of default values for query parametersignore
- varargs of query parameter names to ignore when checking for equalityprotected boolean equals(Object other, Map<String,Object> defaults, Set<String> ignore)
query
equals this Query object.other
- the query to compare todefaults
- map of default values for query parametersignore
- set of query parameters to ignore during equality check.public Query clone()
NOTE: values for parameters are shallow copied.
protected static boolean equals(Query a, Query b, Map<String,Object> defaults, Set<String> ignore)
public Iterator<Map.Entry<String,Object>> parameters()
public boolean containsParameter(String name)
name
- parameter name.public final Object getParameter(String name)
name
- parameter name.public final String getParameter(String name, String defaultValue)
name
- parameter name.defaultValue
- default value to return if not set.public final boolean getParameter(String name, boolean defaultValue)
name
- parameter name.defaultValue
- default value to return if not set.public final int getParameter(String name, int defaultValue)
name
- parameter name.defaultValue
- default value to return if not set.public final long getParameter(String name, long defaultValue)
name
- parameter name.defaultValue
- default value to return if not set.public final float getParameter(String name, float defaultValue)
name
- parameter name.defaultValue
- default value to return if not set.public final double getParameter(String name, double defaultValue)
name
- parameter name.defaultValue
- default value to return if not set.public Object getParameter(String name, Object defaultValue)
name
- name of parameter to return.defaultValue
- default value to return if not set.public void setParameters(Map<String,Object> params, boolean override)
params
- the parameters to copy into this Query instance.override
- indicates if parameters from params should overwrite existing parameters in this Queryprotected static int parseIntParameter(Object value, int defaultValue)
public Object removeParameter(String name)
name
- the parameter to remove.protected final void setEnumParameter(String key, Object value, String... enumValues)
NOTE: enumValues must contain lower case strings.
protected final void setStringParameter(String key, Object value)
protected final void setIntegerParameter(String key, Object value)
protected final void setUnsignedParameter(String key, Object value)
protected final void setBooleanParameter(String key, Object value)
protected static void appendParameter(StringBuilder buffer, String name, Object value)
name
\"=\"value
\"" to buffer
.protected static void addParameter(StringBuilder buffer, String name, Object value)
name
\"=\"value
\"" to buffer
.protected static void escape(StringBuilder buffer, Object value)
protected void escape(StringBuilder buffer, String value, boolean quote)
buffer
- buffer to write escaped value tovalue
- the value to escapequote
- if true, escaped value will be wrapped in double quotes.public final String toString(boolean compact)
protected abstract void toString(StringBuilder buffer, boolean compact)
buffer
.public final void prettyPrint()
public final void prettyPrint(PrintStream out)
out
- stream to output query representation topublic final String prettyFormat()
protected void prettyFormat(StringBuilder buffer, int indent)
buffer
- buffer to write pretty formated parameters to.indent
- the indentation levelprotected static StringBuilder indent(StringBuilder buffer, int indent)
Copyright © 2018 Attivio, Inc. All Rights Reserved.
PATENT NOTICE: Attivio, Inc. Software Related Patents. With respect to the Attivio software product(s) being used, the following patents apply: Querying Joined Data Within A Search Engine Index: United States Patent No.(s): 8,073,840. Ordered Processing of Groups of Messages: U.S. Patent No.(s) 8,495,656. Signal processing approach to sentiment analysis for entities in documents: U.S. Patent No.(s) 8,725,494. Other U.S. and International Patents Pending.