Package 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 | Description
    --- | ---
    `Builder()` | Sole constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `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:
        `IndexSearcher.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:
        `IndexSearcher.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.