public class QueryWrapperFilter extends Filter
This could be used, for example, with a NumericRangeQuery
on a suitably
formatted date field to implement date filtering. One could re-use a single
CachingWrapperFilter(QueryWrapperFilter) that matches, e.g., only documents modified
within the last week. This would only need to be reconstructed once per day.
Constructor and Description |
---|
QueryWrapperFilter(Query query)
Constructs a filter which only matches documents matching
query . |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object o) |
DocIdSet |
getDocIdSet(AtomicReaderContext context,
Bits acceptDocs)
Creates a
DocIdSet enumerating the documents that should be
permitted in search results. |
Query |
getQuery()
returns the inner Query
|
int |
hashCode() |
String |
toString() |
public QueryWrapperFilter(Query query)
query
.public final Query getQuery()
public DocIdSet getDocIdSet(AtomicReaderContext context, Bits acceptDocs) throws IOException
Filter
DocIdSet
enumerating the documents that should be
permitted in search results. NOTE: null can be
returned if no documents are accepted by this Filter.
Note: This method will be called once per segment in
the index during searching. The returned DocIdSet
must refer to document IDs for that segment, not for
the top-level reader.
getDocIdSet
in class Filter
context
- a AtomicReaderContext
instance opened on the index currently
searched on. Note, it is likely that the provided reader info does not
represent the whole underlying index i.e. if the index has more than
one segment the given reader only represents a single segment.
The provided context is always an atomic context, so you can call
AtomicReader.fields()
on the context's reader, for example.acceptDocs
- Bits that represent the allowable docs to match (typically deleted docs
but possibly filtering other documents)null
should be returned if
the filter doesn't accept any documents otherwise internal optimization might not apply
in the case an empty DocIdSet
is returned.IOException
Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.