## org.apache.lucene.queries
Class ChainedFilter

    java.lang.Object
      org.apache.lucene.search.Filter
          org.apache.lucene.queries.ChainedFilter

    public class ChainedFilter

extends Filter

Allows multiple `Filter`s to be chained. Logical operations such as NOT and XOR are applied between filters. One operation can be used for all filters, or a specific operation can be declared for each filter.

Order in which filters are called depends on the position of the filter in the chain. It's probably more efficient to place the most restrictive filters /least computationally-intensive filters first.

Field Summary
`static int` `AND`
`static int` `ANDNOT`
`static int` `DEFAULT` Logical operation when none is declared.
`static int` `OR`
`static int` `XOR`

Constructor Summary
`ChainedFilter(Filter[] chain)` Ctor.
`ChainedFilter(Filter[] chain, int logic)` Ctor.
`ChainedFilter(Filter[] chain, int[] logicArray)` Ctor.

Method Summary
`DocIdSet` `getDocIdSet(AtomicReaderContext context, Bits acceptDocs)` `Filter.getDocIdSet(org.apache.lucene.index.AtomicReaderContext, org.apache.lucene.util.Bits)`.
`String` `toString()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### OR

    public static final int OR

See Also:
  Constant Field Values

### AND

    public static final int AND

See Also:
  Constant Field Values

### ANDNOT

    public static final int ANDNOT

See Also:
  Constant Field Values

### XOR

    public static final int XOR

See Also:
  Constant Field Values

### DEFAULT

    public static final int DEFAULT

  Logical operation when none is declared. Defaults to OR.

  See Also:
    Constant Field Values

Constructor Detail

### ChainedFilter

    public ChainedFilter(Filter[] chain)

  Ctor.

  Parameters:
    `chain` - The chain of filters

### ChainedFilter

    public ChainedFilter(Filter[] chain,
                         int[] logicArray)

  Ctor.

  Parameters:
    `chain` - The chain of filters
    `logicArray` - Logical operations to apply between filters

### ChainedFilter

    public ChainedFilter(Filter[] chain,
                         int logic)

  Ctor.

  Parameters:
    `chain` - The chain of filters
    `logic` - Logical operation to apply to ALL filters

Method Detail

### getDocIdSet

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

  `Filter.getDocIdSet(org.apache.lucene.index.AtomicReaderContext, org.apache.lucene.util.Bits)`.

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

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

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