org.jboss.dna.search.lucene.query
Class CompareNameQuery

java.lang.Object
  extended by org.apache.lucene.search.Query
      extended by org.jboss.dna.search.lucene.query.CompareQuery<Path.Segment>
          extended by org.jboss.dna.search.lucene.query.CompareNameQuery
All Implemented Interfaces:
Serializable, Cloneable

public class CompareNameQuery
extends CompareQuery<Path.Segment>

A Lucene Query implementation that is used to apply a Comparison constraint against the name of nodes. This query implementation works by using the weight and scorer of the wrapped query to score (and return) only those documents that correspond to nodes with Names that satisfy the constraint.

See Also:
Serialized Form

Method Summary
 Object clone()
          
static CompareNameQuery createQueryForNodesWithNameGreaterThan(Path.Segment constraintValue, String localNameField, String snsIndexFieldName, ValueFactories factories, boolean caseSensitive)
          Construct a Query implementation that scores documents such that the node represented by the document has a name that is greater than the supplied constraint name.
static CompareNameQuery createQueryForNodesWithNameGreaterThanOrEqualTo(Path.Segment constraintValue, String localNameField, String snsIndexFieldName, ValueFactories factories, boolean caseSensitive)
          Construct a Query implementation that scores documents such that the node represented by the document has a name that is greater than or equal to the supplied constraint name.
static CompareNameQuery createQueryForNodesWithNameLessThan(Path.Segment constraintValue, String localNameField, String snsIndexFieldName, ValueFactories factories, boolean caseSensitive)
          Construct a Query implementation that scores documents such that the node represented by the document has a name that is less than the supplied constraint name.
static CompareNameQuery createQueryForNodesWithNameLessThanOrEqualTo(Path.Segment constraintValue, String localNameField, String snsIndexFieldName, ValueFactories factories, boolean caseSensitive)
          Construct a Query implementation that scores documents such that the node represented by the document has a name that is less than or equal to the supplied constraint name.
 
Methods inherited from class org.jboss.dna.search.lucene.query.CompareQuery
createWeight, toString
 
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
getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

createQueryForNodesWithNameGreaterThan

public static CompareNameQuery createQueryForNodesWithNameGreaterThan(Path.Segment constraintValue,
                                                                      String localNameField,
                                                                      String snsIndexFieldName,
                                                                      ValueFactories factories,
                                                                      boolean caseSensitive)
Construct a Query implementation that scores documents such that the node represented by the document has a name that is greater than the supplied constraint name.

Parameters:
constraintValue - the constraint value; may not be null
localNameField - the name of the document field containing the local name value; may not be null
snsIndexFieldName - the name of the document field containing the same-name-sibling index; may not be null
factories - the value factories that can be used during the scoring; may not be null
caseSensitive - true if the comparison should be done in a case-sensitive manner, or false if it is to be case-insensitive
Returns:
the query; never null

createQueryForNodesWithNameGreaterThanOrEqualTo

public static CompareNameQuery createQueryForNodesWithNameGreaterThanOrEqualTo(Path.Segment constraintValue,
                                                                               String localNameField,
                                                                               String snsIndexFieldName,
                                                                               ValueFactories factories,
                                                                               boolean caseSensitive)
Construct a Query implementation that scores documents such that the node represented by the document has a name that is greater than or equal to the supplied constraint name.

Parameters:
constraintValue - the constraint value; may not be null
localNameField - the name of the document field containing the local name value; may not be null
snsIndexFieldName - the name of the document field containing the same-name-sibling index; may not be null
factories - the value factories that can be used during the scoring; may not be null
caseSensitive - true if the comparison should be done in a case-sensitive manner, or false if it is to be case-insensitive
Returns:
the query; never null

createQueryForNodesWithNameLessThan

public static CompareNameQuery createQueryForNodesWithNameLessThan(Path.Segment constraintValue,
                                                                   String localNameField,
                                                                   String snsIndexFieldName,
                                                                   ValueFactories factories,
                                                                   boolean caseSensitive)
Construct a Query implementation that scores documents such that the node represented by the document has a name that is less than the supplied constraint name.

Parameters:
constraintValue - the constraint value; may not be null
localNameField - the name of the document field containing the local name value; may not be null
snsIndexFieldName - the name of the document field containing the same-name-sibling index; may not be null
factories - the value factories that can be used during the scoring; may not be null
caseSensitive - true if the comparison should be done in a case-sensitive manner, or false if it is to be case-insensitive
Returns:
the query; never null

createQueryForNodesWithNameLessThanOrEqualTo

public static CompareNameQuery createQueryForNodesWithNameLessThanOrEqualTo(Path.Segment constraintValue,
                                                                            String localNameField,
                                                                            String snsIndexFieldName,
                                                                            ValueFactories factories,
                                                                            boolean caseSensitive)
Construct a Query implementation that scores documents such that the node represented by the document has a name that is less than or equal to the supplied constraint name.

Parameters:
constraintValue - the constraint value; may not be null
localNameField - the name of the document field containing the local name value; may not be null
snsIndexFieldName - the name of the document field containing the same-name-sibling index; may not be null
factories - the value factories that can be used during the scoring; may not be null
caseSensitive - true if the comparison should be done in a case-sensitive manner, or false if it is to be case-insensitive
Returns:
the query; never null

clone

public Object clone()

Overrides:
clone in class org.apache.lucene.search.Query
See Also:
Query.clone()


Copyright © 2008-2010 JBoss, a division of Red Hat. All Rights Reserved.