Package org.apache.lucene.search
Class FilteredQuery
- java.lang.Object
-
- org.apache.lucene.search.Query
-
- org.apache.lucene.search.FilteredQuery
-
- All Implemented Interfaces:
Serializable
,Cloneable
public class FilteredQuery extends Query
A query that applies a filter to the results of another query.Note: the bits are retrieved from the filter each time this query is used in a search - use a CachingWrapperFilter to avoid regenerating the bits every time.
Created: Apr 20, 2004 8:58:29 AM
- Since:
- 1.4
- See Also:
CachingWrapperFilter
, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description FilteredQuery(Query query, Filter filter)
Constructs a new query which applies a filter to the results of the original query.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Weight
createWeight(Searcher searcher)
Returns a Weight that applies the filter to the enclosed query's Weight.boolean
equals(Object o)
Returns true iffo
is equal to this.void
extractTerms(Set<Term> terms)
Expert: adds all terms occurring in this query to the terms set.Filter
getFilter()
Query
getQuery()
int
hashCode()
Returns a hash code value for this object.Query
rewrite(IndexReader reader)
Rewrites the wrapped query.String
toString(String s)
Prints a user-readable version of this query.-
Methods inherited from class org.apache.lucene.search.Query
clone, combine, getBoost, getSimilarity, mergeBooleanQueries, setBoost, toString, weight
-
-
-
-
Constructor Detail
-
FilteredQuery
public FilteredQuery(Query query, Filter filter)
Constructs a new query which applies a filter to the results of the original query. Filter.getDocIdSet() will be called every time this query is used in a search.- Parameters:
query
- Query to be filtered, cannot benull
.filter
- Filter to apply to query results, cannot benull
.
-
-
Method Detail
-
createWeight
public Weight createWeight(Searcher searcher) throws IOException
Returns a Weight that applies the filter to the enclosed query's Weight. This is accomplished by overriding the Scorer returned by the Weight.- Overrides:
createWeight
in classQuery
- Throws:
IOException
-
rewrite
public Query rewrite(IndexReader reader) throws IOException
Rewrites the wrapped query.- Overrides:
rewrite
in classQuery
- Throws:
IOException
-
getQuery
public Query getQuery()
-
getFilter
public Filter getFilter()
-
extractTerms
public void extractTerms(Set<Term> terms)
Description copied from class:Query
Expert: adds all terms occurring in this query to the terms set. Only works if this query is in itsrewritten
form.- Overrides:
extractTerms
in classQuery
-
equals
public boolean equals(Object o)
Returns true iffo
is equal to this.
-
-