|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.lucene.search.Query org.modeshape.search.lucene.query.CompareQuery<String> org.modeshape.search.lucene.query.CompareStringQuery
public class CompareStringQuery
A Lucene Query
implementation that is used to apply a Comparison
constraint against a string field. This query
implementation works by using the weight
and
scorer
of the wrapped query to score (and return) only those documents
with string fields that satisfy the constraint.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.modeshape.search.lucene.query.CompareQuery |
---|
CompareQuery.CompareScorer, CompareQuery.CompareWeight, CompareQuery.Evaluator<ValueType> |
Field Summary | |
---|---|
protected static CompareQuery.Evaluator<String> |
EQUAL_TO
|
protected static CompareQuery.Evaluator<String> |
IS_GREATER_THAN
|
protected static CompareQuery.Evaluator<String> |
IS_GREATER_THAN_OR_EQUAL_TO
|
protected static CompareQuery.Evaluator<String> |
IS_LESS_THAN
|
protected static CompareQuery.Evaluator<String> |
IS_LESS_THAN_OR_EQUAL_TO
|
Fields inherited from class org.modeshape.search.lucene.query.CompareQuery |
---|
constraintValue, evaluator, fieldName, fieldSelector, stringFactory, valueTypeFactory |
Constructor Summary | |
---|---|
protected |
CompareStringQuery(String fieldName,
String constraintValue,
ValueFactory<String> valueFactory,
ValueFactory<String> stringFactory,
CompareQuery.Evaluator<String> evaluator,
boolean caseSensitive)
Construct a Query implementation that scores nodes according to the supplied comparator. |
Method Summary | |
---|---|
Object |
clone()
|
static org.apache.lucene.search.Query |
createQueryForNodesWithFieldEqualTo(String constraintValue,
String fieldName,
ValueFactories factories,
boolean caseSensitive)
Construct a Query implementation that scores documents with a string field value that is equal to the supplied
constraint value. |
static CompareStringQuery |
createQueryForNodesWithFieldGreaterThan(String constraintValue,
String fieldName,
ValueFactories factories,
boolean caseSensitive)
Construct a Query implementation that scores documents with a string field value that is greater than the supplied
constraint value. |
static CompareStringQuery |
createQueryForNodesWithFieldGreaterThanOrEqualTo(String constraintValue,
String fieldName,
ValueFactories factories,
boolean caseSensitive)
Construct a Query implementation that scores documents with a string field value that is greater than or equal to
the supplied constraint value. |
static CompareStringQuery |
createQueryForNodesWithFieldLessThan(String constraintValue,
String fieldName,
ValueFactories factories,
boolean caseSensitive)
Construct a Query implementation that scores documents with a string field value that is less than the supplied
constraint value. |
static CompareStringQuery |
createQueryForNodesWithFieldLessThanOrEqualTo(String constraintValue,
String fieldName,
ValueFactories factories,
boolean caseSensitive)
Construct a Query implementation that scores documents with a string field value that is less than or equal to the
supplied constraint value. |
static org.apache.lucene.search.Query |
createQueryForNodesWithFieldLike(String likeExpression,
String fieldName,
ValueFactories factories,
boolean caseSensitive)
Construct a Query implementation that scores documents with a string field value that is LIKE the supplied
constraint value, where the LIKE expression contains the SQL wildcard characters '%' and '_' or the regular expression
wildcard characters '*' and '?'. |
protected static boolean |
hasWildcardCharacters(String expression)
|
protected String |
readFromDocument(org.apache.lucene.index.IndexReader reader,
int docId)
|
protected static String |
toRegularExpression(String likeExpression)
Convert the JCR like expression to a regular expression. |
String |
toString(String field)
|
protected static String |
toWildcardExpression(String likeExpression)
Convert the JCR like expression to a Lucene wildcard expression. |
Methods inherited from class org.modeshape.search.lucene.query.CompareQuery |
---|
createWeight |
Methods inherited from class org.apache.lucene.search.Query |
---|
combine, equals, extractTerms, getBoost, getSimilarity, hashCode, mergeBooleanQueries, rewrite, setBoost, toString, weight |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected static final CompareQuery.Evaluator<String> EQUAL_TO
protected static final CompareQuery.Evaluator<String> IS_LESS_THAN
protected static final CompareQuery.Evaluator<String> IS_LESS_THAN_OR_EQUAL_TO
protected static final CompareQuery.Evaluator<String> IS_GREATER_THAN
protected static final CompareQuery.Evaluator<String> IS_GREATER_THAN_OR_EQUAL_TO
Constructor Detail |
---|
protected CompareStringQuery(String fieldName, String constraintValue, ValueFactory<String> valueFactory, ValueFactory<String> stringFactory, CompareQuery.Evaluator<String> evaluator, boolean caseSensitive)
Query
implementation that scores nodes according to the supplied comparator.
fieldName
- the name of the document field containing the value; may not be nullconstraintValue
- the constraint value; may not be nullvalueFactory
- the value factory that can be used during the scoring; may not be nullstringFactory
- the string factory that can be used during the scoring; may not be nullevaluator
- the CompareQuery.Evaluator
implementation that returns whether the node path satisfies the
constraint; may not be nullcaseSensitive
- true if the comparison should be done in a case-sensitive manner, or false if it is to be
case-insensitiveMethod Detail |
---|
public static org.apache.lucene.search.Query createQueryForNodesWithFieldEqualTo(String constraintValue, String fieldName, ValueFactories factories, boolean caseSensitive)
Query
implementation that scores documents with a string field value that is equal to the supplied
constraint value.
constraintValue
- the constraint value; may not be nullfieldName
- the name of the document field containing the value; may not be nullfactories
- the value factories that can be used during the scoring; may not be nullcaseSensitive
- true if the comparison should be done in a case-sensitive manner, or false if it is to be
case-insensitive
public static CompareStringQuery createQueryForNodesWithFieldGreaterThan(String constraintValue, String fieldName, ValueFactories factories, boolean caseSensitive)
Query
implementation that scores documents with a string field value that is greater than the supplied
constraint value.
constraintValue
- the constraint value; may not be nullfieldName
- the name of the document field containing the value; may not be nullfactories
- the value factories that can be used during the scoring; may not be nullcaseSensitive
- true if the comparison should be done in a case-sensitive manner, or false if it is to be
case-insensitive
public static CompareStringQuery createQueryForNodesWithFieldGreaterThanOrEqualTo(String constraintValue, String fieldName, ValueFactories factories, boolean caseSensitive)
Query
implementation that scores documents with a string field value that is greater than or equal to
the supplied constraint value.
constraintValue
- the constraint value; may not be nullfieldName
- the name of the document field containing the value; may not be nullfactories
- the value factories that can be used during the scoring; may not be nullcaseSensitive
- true if the comparison should be done in a case-sensitive manner, or false if it is to be
case-insensitive
public static CompareStringQuery createQueryForNodesWithFieldLessThan(String constraintValue, String fieldName, ValueFactories factories, boolean caseSensitive)
Query
implementation that scores documents with a string field value that is less than the supplied
constraint value.
constraintValue
- the constraint value; may not be nullfieldName
- the name of the document field containing the value; may not be nullfactories
- the value factories that can be used during the scoring; may not be nullcaseSensitive
- true if the comparison should be done in a case-sensitive manner, or false if it is to be
case-insensitive
public static CompareStringQuery createQueryForNodesWithFieldLessThanOrEqualTo(String constraintValue, String fieldName, ValueFactories factories, boolean caseSensitive)
Query
implementation that scores documents with a string field value that is less than or equal to the
supplied constraint value.
constraintValue
- the constraint value; may not be nullfieldName
- the name of the document field containing the value; may not be nullfactories
- the value factories that can be used during the scoring; may not be nullcaseSensitive
- true if the comparison should be done in a case-sensitive manner, or false if it is to be
case-insensitive
protected static boolean hasWildcardCharacters(String expression)
public static org.apache.lucene.search.Query createQueryForNodesWithFieldLike(String likeExpression, String fieldName, ValueFactories factories, boolean caseSensitive)
Query
implementation that scores documents with a string field value that is LIKE the supplied
constraint value, where the LIKE expression contains the SQL wildcard characters '%' and '_' or the regular expression
wildcard characters '*' and '?'.
likeExpression
- the LIKE expression; may not be nullfieldName
- the name of the document field containing the value; may not be nullfactories
- the value factories that can be used during the scoring; may not be nullcaseSensitive
- true if the comparison should be done in a case-sensitive manner, or false if it is to be
case-insensitive
protected static String toWildcardExpression(String likeExpression)
likeExpression
- the like expression; may not be null
protected static String toRegularExpression(String likeExpression)
likeExpression
- the like expression; may not be null
protected String readFromDocument(org.apache.lucene.index.IndexReader reader, int docId) throws IOException
readFromDocument
in class CompareQuery<String>
IOException
CompareQuery.readFromDocument(org.apache.lucene.index.IndexReader, int)
public Object clone()
clone
in class org.apache.lucene.search.Query
Query.clone()
public String toString(String field)
toString
in class CompareQuery<String>
Query.toString(java.lang.String)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |