org.apache.lucene.search

## Class MultiTermQueryWrapperFilter<Q extends MultiTermQuery>

- java.lang.Object
- - org.apache.lucene.search.Filter
  - - org.apache.lucene.search.MultiTermQueryWrapperFilter<Q>

Direct Known Subclasses:
  NumericRangeFilter, PrefixFilter, TermRangeFilter

    public class MultiTermQueryWrapperFilter<Q extends MultiTermQuery>
    extends Filter

A wrapper for `MultiTermQuery`, that exposes its functionality as a `Filter`.

`MultiTermQueryWrapperFilter` is not designed to be used by itself. Normally you subclass it to provide a Filter counterpart for a `MultiTermQuery` subclass.

For example, `TermRangeFilter` and `PrefixFilter` extend `MultiTermQueryWrapperFilter`. This class also provides the functionality behind `MultiTermQuery.CONSTANT_SCORE_FILTER_REWRITE`; this is why it is not abstract.

### Field Summary

Fields
`protected Q` `query`

### Constructor Summary

Constructors
`protected` `MultiTermQueryWrapperFilter(Q query)` Wrap a `MultiTermQuery` as a Filter.

### Method Summary

Methods
`boolean` `equals(Object o)`
`DocIdSet` `getDocIdSet(AtomicReaderContext context, Bits acceptDocs)` Returns a DocIdSet with documents that should be permitted in search results.
`String` `getField()` Returns the field name for this query
`int` `hashCode()`
`String` `toString()`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### query

    protected final Q extends MultiTermQuery query

### Constructor Detail

#### MultiTermQueryWrapperFilter

    protected MultiTermQueryWrapperFilter(Q query)

Wrap a `MultiTermQuery` as a Filter.

### Method Detail

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

#### equals

    public final boolean equals(Object o)

Overrides:
  `equals` in class `Object`

#### hashCode

    public final int hashCode()

Overrides:
  `hashCode` in class `Object`

#### getField

    public final String getField()

Returns the field name for this query

#### getDocIdSet

    public DocIdSet getDocIdSet(AtomicReaderContext context,
                       Bits acceptDocs)
                         throws IOException

Returns a DocIdSet with documents that should be permitted in search results.

Specified by:
  `getDocIdSet` in class `Filter`
Parameters:
  `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)
Returns:
  a DocIdSet that provides the documents which should be permitted or prohibited in search results. NOTE: null can be returned if no documents will be accepted by this Filter.
Throws:
  `IOException`