# ContentPager.QueryRunner

Artifact: [androidx.contentpager:contentpager](https://developer.android.com/jetpack/androidx/releases/contentpager) [View Source](https://cs.android.com/search?q=file:androidx/contentpager/content/ContentPager.java+class:androidx.contentpager.content.ContentPager.QueryRunner) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/contentpager#1.0.0)

*** ** * ** ***


```
public interface ContentPager.QueryRunner
```

<br />

Known direct subclasses [LoaderQueryRunner](https://developer.android.com/reference/androidx/contentpager/content/LoaderQueryRunner)

|---|---|
| `https://developer.android.com/reference/androidx/contentpager/content/LoaderQueryRunner` | A `https://developer.android.com/reference/androidx/contentpager/content/ContentPager.QueryRunner` that executes queries using a `https://developer.android.com/reference/android/app/LoaderManager.html`. |

*** ** * ** ***

Implementations of this interface provide the mechanism for execution of queries off the UI thread.

## Summary

| ### Nested types |
|---|
| `public interface https://developer.android.com/reference/androidx/contentpager/content/ContentPager.QueryRunner.Callback` Callback that receives a cursor once a query as been executed on the Runner. |

| ### Public methods |
|---|---|
| `abstract void` | `https://developer.android.com/reference/androidx/contentpager/content/ContentPager.QueryRunner#cancel(androidx.contentpager.content.Query)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/contentpager/content/Query query)` Attempt to cancel a (presumably) running query. |
| `abstract boolean` | `https://developer.android.com/reference/androidx/contentpager/content/ContentPager.QueryRunner#isRunning(androidx.contentpager.content.Query)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/contentpager/content/Query query)` |
| `abstract void` | `https://developer.android.com/reference/androidx/contentpager/content/ContentPager.QueryRunner#query(androidx.contentpager.content.Query,androidx.contentpager.content.ContentPager.QueryRunner.Callback)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/contentpager/content/Query query, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/contentpager/content/ContentPager.QueryRunner.Callback callback )` Execute a query. |

## Public methods

### cancel

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/contentpager#1.0.0)

```
abstract void cancel(@NonNull Query query)
```

Attempt to cancel a (presumably) running query.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/contentpager/content/Query query` | The query in question. |

### isRunning

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/contentpager#1.0.0)

```
abstract boolean isRunning(@NonNull Query query)
```

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/contentpager/content/Query query` | The query in question. |

| Returns |
|---|---|
| `boolean` | true if the query is already running. |

### query

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/contentpager#1.0.0)

```
abstract void query(
    @NonNull Query query,
    @NonNull ContentPager.QueryRunner.Callback callback
)
```

Execute a query.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/contentpager/content/Query query` | The query that will be run. This value should be handed back to the callback when ready to run in the background. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/contentpager/content/ContentPager.QueryRunner.Callback callback` | The callback that should be called to both execute the query (in the background) and to receive the results (in the foreground). |