# SessionCommands.Builder

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

*** ** * ** ***


```
public final class SessionCommands.Builder
```

<br />

*** ** * ** ***

A builder for `https://developer.android.com/reference/androidx/media3/session/SessionCommands`.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder#Builder()()` Creates a new builder. |

| ### Public methods |
|---|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder#add(int)(@https://developer.android.com/reference/androidx/media3/session/SessionCommand.CommandCode int commandCode)` Adds a command with command code. |
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder#add(androidx.media3.session.SessionCommand)(https://developer.android.com/reference/androidx/media3/session/SessionCommand command)` Adds a command. |
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder#addSessionCommands(java.util.Collection<androidx.media3.session.SessionCommand>)(https://developer.android.com/reference/java/util/Collection.html<https://developer.android.com/reference/androidx/media3/session/SessionCommand> commands)` Adds all of the commands in the specified collection. |
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands` | `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder#build()()` Builds a `https://developer.android.com/reference/androidx/media3/session/SessionCommands`. |
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder#remove(int)(@https://developer.android.com/reference/androidx/media3/session/SessionCommand.CommandCode int commandCode)` Removes a command which matches a given `command code`. |
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder#remove(androidx.media3.session.SessionCommand)(https://developer.android.com/reference/androidx/media3/session/SessionCommand command)` Removes a command which matches a given `https://developer.android.com/reference/androidx/media3/session/SessionCommand`. |

## Public constructors

### Builder

```
public Builder()
```

Creates a new builder.

## Public methods

### add

```
@CanIgnoreReturnValue
public SessionCommands.Builder add(@SessionCommand.CommandCode int commandCode)
```

Adds a command with command code. Command code must not be `https://developer.android.com/reference/androidx/media3/session/SessionCommand#COMMAND_CODE_CUSTOM()`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/media3/session/SessionCommand.CommandCode int commandCode` | A command code to build command and add. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | This builder for chaining. |

### add

```
@CanIgnoreReturnValue
public SessionCommands.Builder add(SessionCommand command)
```

Adds a command.

| Parameters |
|---|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommand command` | A command to add. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | This builder for chaining. |

### addSessionCommands

```
@CanIgnoreReturnValue
public SessionCommands.Builder addSessionCommands(Collection<SessionCommand> commands)
```

Adds all of the commands in the specified collection.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/util/Collection.html<https://developer.android.com/reference/androidx/media3/session/SessionCommand> commands` | collection containing elements to be added to this set |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | This builder for chaining. |

### build

```
public SessionCommands build()
```

Builds a `https://developer.android.com/reference/androidx/media3/session/SessionCommands`.

### remove

```
@CanIgnoreReturnValue
public SessionCommands.Builder remove(@SessionCommand.CommandCode int commandCode)
```

Removes a command which matches a given `command code`. Command code must not be `https://developer.android.com/reference/androidx/media3/session/SessionCommand#COMMAND_CODE_CUSTOM()`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/media3/session/SessionCommand.CommandCode int commandCode` | A command code to find. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | This builder for chaining. |

### remove

```
@CanIgnoreReturnValue
public SessionCommands.Builder remove(SessionCommand command)
```

Removes a command which matches a given `https://developer.android.com/reference/androidx/media3/session/SessionCommand`.

| Parameters |
|---|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommand command` | A command to find. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/session/SessionCommands.Builder` | This builder for chaining. |