# WebServerDispatcher

Artifact: [androidx.media3:media3-test-utils](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/test/utils/WebServerDispatcher.java+class:androidx.media3.test.utils.WebServerDispatcher)

*** ** * ** ***

<br />

```
@UnstableApi
class WebServerDispatcher
```

<br />

*** ** * ** ***

A Dispatcher for okhttp3.mockwebserver.MockWebServer that allows per-path customisation of the static data served.

## Summary

| ### Nested types |
|---|
| `class https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher.Resource` A resource served by `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher`. |
| `class https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher.Resource.Builder` Builder for `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher.Resource`. |

| ### Constants |
|---|---|
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher#NOT_FOUND_BODY() = "Resource not found!"` The body associated with a response for an unrecognized path. |

| ### Public functions |
|---|---|
| `MockResponse!` | `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher#dispatch(RecordedRequest)(request: RecordedRequest!)` |
| `java-static https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher!` | `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher#forResources(java.lang.Iterable<androidx.media3.test.utils.WebServerDispatcher.Resource>)( resources: (https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-iterable/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-iterable/index.html<https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher.Resource!>! )` Constructs a dispatcher that handles requests based the provided `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher.Resource` instances. |
| `java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher#getRequestPath(RecordedRequest)(request: RecordedRequest!)` Returns the path for a given RecordedRequest, stripping any query parameters. |

## Constants

### NOT_FOUND_BODY

```
const val NOT_FOUND_BODY = "Resource not found!": String!
```

The body associated with a response for an unrecognized path.

## Public functions

### dispatch

```
fun dispatch(request: RecordedRequest!): MockResponse!
```

### forResources

```
java-static fun forResources(
    resources: (Mutable)Iterable<WebServerDispatcher.Resource!>!
): WebServerDispatcher!
```

Constructs a dispatcher that handles requests based the provided `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/WebServerDispatcher.Resource` instances.

### getRequestPath

```
java-static fun getRequestPath(request: RecordedRequest!): String!
```

Returns the path for a given RecordedRequest, stripping any query parameters.