org.apache.lucene.search

Class FilteredQuery

Implemented Interfaces:
Cloneable, Serializable

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

Version:
$Id: FilteredQuery.java 472959 2006-11-09 16:21:50Z yonik $
Author:
Tim Jones
Since:
1.4
See Also:
CachingWrapperFilter, Serialized Form

Constructor Summary

FilteredQuery(Query query, Filter filter)
Constructs a new query which applies a filter to the results of the original query.

Method Summary

protected Weight
createWeight(Searcher searcher)
Returns a Weight that applies the filter to the enclosed query's Weight.
boolean
equals(Object o)
Returns true iff o is equal to this.
void
extractTerms(Set terms)
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, createWeight, extractTerms, getBoost, getSimilarity, mergeBooleanQueries, rewrite, setBoost, toString, toString, weight

Constructor Details

FilteredQuery

public FilteredQuery(Query query,
                     Filter filter)
Constructs a new query which applies a filter to the results of the original query. Filter.bits() will be called every time this query is used in a search.
Parameters:
query - Query to be filtered, cannot be null.
filter - Filter to apply to query results, cannot be null.

Method Details

createWeight

protected 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 interface Query

equals

public boolean equals(Object o)
Returns true iff o is equal to this.

extractTerms

public void extractTerms(Set terms)
Overrides:
extractTerms in interface Query

getFilter

public Filter getFilter()

getQuery

public Query getQuery()

hashCode

public int hashCode()
Returns a hash code value for this object.

rewrite

public Query rewrite(IndexReader reader)
            throws IOException
Rewrites the wrapped query.
Overrides:
rewrite in interface Query

toString

public String toString(String s)
Prints a user-readable version of this query.
Overrides:
toString in interface Query

Copyright © 2000-2007 Apache Software Foundation. All Rights Reserved.