org.apache.lucene.queries

## Class TermsFilter

- java.lang.Object
- - org.apache.lucene.search.Filter
  - - org.apache.lucene.queries.TermsFilter

-     public final class TermsFilter
      extends Filter

  Constructs a filter for docs matching any of the terms added to this class. Unlike a RangeFilter this can be used for filtering on multiple terms that are not necessarily in a sequence. An example might be a collection of primary keys from a database query result or perhaps a choice of "category" labels picked by the end user. As a filter, this is much faster than the equivalent query (a BooleanQuery with many "should" TermQueries)

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `TermsFilter(List<Term> terms)` Creates a new `TermsFilter` from the given list.
    `TermsFilter(String field, BytesRef... terms)` Creates a new `TermsFilter` from the given `BytesRef` array for a single field.
    `TermsFilter(String field, List<BytesRef> terms)` Creates a new `TermsFilter` from the given `BytesRef` list for a single field.
    `TermsFilter(Term... terms)` Creates a new `TermsFilter` from the given array.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object obj)`
    `DocIdSet` | `getDocIdSet(AtomicReaderContext context, Bits acceptDocs)`
    `int` | `hashCode()`
    `String` | `toString()`

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

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

- - ### Constructor Detail

    - #### TermsFilter

          public TermsFilter(List<Term> terms)

      Creates a new `TermsFilter` from the given list. The list can contain duplicate terms and multiple fields.

    - #### TermsFilter

          public TermsFilter(String field,
                     List<BytesRef> terms)

      Creates a new `TermsFilter` from the given `BytesRef` list for a single field.

    - #### TermsFilter

          public TermsFilter(String field,
                     BytesRef... terms)

      Creates a new `TermsFilter` from the given `BytesRef` array for a single field.

    - #### TermsFilter

          public TermsFilter(Term... terms)

      Creates a new `TermsFilter` from the given array. The array can contain duplicate terms and multiple fields.

  - ### Method Detail

    - #### getDocIdSet

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

      Specified by:
        `getDocIdSet` in class `Filter`
      Throws:
        `IOException`

    - #### equals

          public boolean equals(Object obj)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

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