Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions) Summary: [Ctors](https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder#pubctors) \| [Methods](https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder#inhmethods)

# PeopleContract.Groups.Query.Builder

*** ** * ** ***


`
public
static
final

class
PeopleContract.Groups.Query.Builder
`


`

extends https://developer.android.com/reference/java/lang/Object


`

`


`

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.provider.PeopleContract.Groups.Query.Builder |

<br />

*** ** * ** ***

Helper class for building structured query argument bundles to pass into `https://developer.android.com/reference/android/content/ContentResolver#query(android.net.Uri,%20java.lang.String[],%20android.os.Bundle,%20android.os.CancellationSignal)` when querying
`https://developer.android.com/reference/android/provider/PeopleContract.Groups#CONTENT_URI`.

Multiple sub-queries targeting different directory packages or selection criteria
can be combined onto a single builder instance before calling `https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder#build()`.

## Summary

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder#Builder()() ` Constructs a new empty instance of `https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder`. |

| ### Public methods ||
|---|---|
| ` https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder` | ` https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder#addLookupQuery(java.lang.String,%20java.util.List<java.lang.String>)(https://developer.android.com/reference/java/lang/String packageName, https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/java/lang/String> lookupKeys) ` Adds a sub-query searching for specific group records matching the given list of opaque lookup keys within the specified directory package. |
| ` https://developer.android.com/reference/android/os/Bundle` | ` https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder#build()() ` Generates the final query arguments `https://developer.android.com/reference/android/os/Bundle` containing all configured group sub-queries. |

### Inherited methods

From class `

https://developer.android.com/reference/java/lang/Object

` `


https://developer.android.com/reference/java/lang/Object` `
https://developer.android.com/reference/java/lang/Object#clone()()
`

Creates and returns a copy of this object.


`


boolean` `
https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj)
`

Indicates whether some other object is "equal to" this one.


`


void` `
https://developer.android.com/reference/java/lang/Object#finalize()()
`

Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.


`


final

https://developer.android.com/reference/java/lang/Class<?>` `
https://developer.android.com/reference/java/lang/Object#getClass()()
`

Returns the runtime class of this `Object`.


`


int` `
https://developer.android.com/reference/java/lang/Object#hashCode()()
`

Returns a hash code value for the object.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#notify()()
`

Wakes up a single thread that is waiting on this object's
monitor.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#notifyAll()()
`

Wakes up all threads that are waiting on this object's monitor.


`


https://developer.android.com/reference/java/lang/String` `
https://developer.android.com/reference/java/lang/Object#toString()()
`

Returns a string representation of the object.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos)
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*, or until a
certain amount of real time has elapsed.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis)
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*, or until a
certain amount of real time has elapsed.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait()()
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*.


## Public constructors

### Builder

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)

```
public Builder ()
```

Constructs a new empty instance of `https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder`.

<br />

## Public methods

### addLookupQuery

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)

```
public PeopleContract.Groups.Query.Builder addLookupQuery (String packageName, 
                List<String> lookupKeys)
```

Adds a sub-query searching for specific group records matching the given list of
opaque lookup keys within the specified directory package.

<br />

| Parameters ||
|---|---|
| `packageName` | `String`: The package name of the target directory application. This value cannot be `null`. <br /> |
| `lookupKeys` | `List`: A list of group lookup key strings to resolve. This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/provider/PeopleContract.Groups.Query.Builder` | This builder instance for method chaining. This value cannot be `null`. <br /> |

### build

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)

```
public Bundle build ()
```

Generates the final query arguments `https://developer.android.com/reference/android/os/Bundle` containing all configured
group sub-queries.

The returned bundle can be passed directly as the query arguments parameter to
`https://developer.android.com/reference/android/content/ContentResolver#query(android.net.Uri,%20java.lang.String[],%20android.os.Bundle,%20android.os.CancellationSignal)`.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/os/Bundle` | A `https://developer.android.com/reference/android/os/Bundle` containing the accumulated query requests under `https://developer.android.com/reference/android/provider/PeopleContract#QUERY_ARG_QUERIES`. This value cannot be `null`. <br /> |