org.apache.lucene.search

## Class BooleanQuery.Builder

- java.lang.Object
- - org.apache.lucene.search.BooleanQuery.Builder

Enclosing class:
  BooleanQuery

    public static class BooleanQuery.Builder
    extends Object

A builder for boolean queries.

### Constructor Summary

Constructors
Constructor and Description
`Builder()` Sole constructor.

### Method Summary

All Methods Instance Methods Concrete Methods
`BooleanQuery.Builder` `add(BooleanClause clause)` Add a new clause to this `BooleanQuery.Builder`.
`BooleanQuery.Builder` `add(Query query, BooleanClause.Occur occur)` Add a new clause to this `BooleanQuery.Builder`.
`BooleanQuery` `build()` Create a new `BooleanQuery` based on the parameters that have been set on this builder.
`BooleanQuery.Builder` `setMinimumNumberShouldMatch(int min)` Specifies a minimum number of the optional BooleanClauses which must be satisfied.

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### Builder

    public Builder()

Sole constructor.

### Method Detail

#### setMinimumNumberShouldMatch

    public BooleanQuery.Builder setMinimumNumberShouldMatch(int min)

Specifies a minimum number of the optional BooleanClauses which must be satisfied.

By default no optional clauses are necessary for a match (unless there are no required clauses). If this method is used, then the specified number of clauses is required.

Use of this method is totally independent of specifying that any specific clauses are required (or prohibited). This number will only be compared against the number of matching optional clauses.

Parameters:
  `min` - the number of optional clauses that must match

#### add

    public BooleanQuery.Builder add(BooleanClause clause)

Add a new clause to this `BooleanQuery.Builder`. Note that the order in which clauses are added does not have any impact on matching documents or query performance.

Throws:
  `BooleanQuery.TooManyClauses` - if the new number of clauses exceeds the maximum clause number

#### add

    public BooleanQuery.Builder add(Query query,
                                    BooleanClause.Occur occur)

Add a new clause to this `BooleanQuery.Builder`. Note that the order in which clauses are added does not have any impact on matching documents or query performance.

Throws:
  `BooleanQuery.TooManyClauses` - if the new number of clauses exceeds the maximum clause number

#### build

    public BooleanQuery build()

Create a new `BooleanQuery` based on the parameters that have been set on this builder.