# SessionConfigurationLegacy.Builder

Artifact: [androidx.camera.featurecombinationquery:featurecombinationquery](https://developer.android.com/jetpack/androidx/releases/camera-featurecombinationquery) [View Source](https://cs.android.com/search?q=file:androidx/camera/featurecombinationquery/SessionConfigurationLegacy.java+class:androidx.camera.featurecombinationquery.SessionConfigurationLegacy.Builder) Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/camera-featurecombinationquery#1.5.0)

*** ** * ** ***


```
public final class SessionConfigurationLegacy.Builder
```

<br />

*** ** * ** ***

Simple builder class for `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy`.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder#Builder()()` |

| ### Public methods |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder` | `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder#addOutputConfiguration(android.hardware.camera2.params.OutputConfiguration)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html outputConfig)` Add an `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html` to the session configuration. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder` | `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder#addOutputConfigurations(java.util.Collection<android.hardware.camera2.params.OutputConfiguration>)( @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/java/util/Collection.html<@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html> outputConfigs )` Add a collection of `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html`s to the session configuration. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy` | `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder#build()()` Builds a `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy`. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder` | `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder#setSessionParameters(androidx.camera.featurecombinationquery.SessionParametersLegacy)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionParametersLegacy sessionParams)` Sets the session parameters for the session configuration. |

## Public constructors

### Builder

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/camera-featurecombinationquery#1.5.0)

```
public Builder()
```

## Public methods

### addOutputConfiguration

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/camera-featurecombinationquery#1.5.0)

```
public @NonNull SessionConfigurationLegacy.Builder addOutputConfiguration(@NonNull OutputConfiguration outputConfig)
```

Add an `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html` to the session configuration.

| Parameters |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html outputConfig` | `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html` to add to the session configuration. |

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder` | the current builder |

### addOutputConfigurations

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/camera-featurecombinationquery#1.5.0)

```
public @NonNull SessionConfigurationLegacy.Builder addOutputConfigurations(
    @NonNull Collection<@NonNull OutputConfiguration> outputConfigs
)
```

Add a collection of `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html`s to the session configuration.

| Parameters |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/java/util/Collection.html<@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html> outputConfigs` | `https://developer.android.com/reference/java/util/Collection.html` of `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html`s to add. |

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder` | the current builder |

### build

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/camera-featurecombinationquery#1.5.0)

```
public @NonNull SessionConfigurationLegacy build()
```

Builds a `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy`.

Note that the created `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy` makes a shallow copy of the `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html`s added via `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder#addOutputConfiguration(android.hardware.camera2.params.OutputConfiguration)`, and so any mutations to the added `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html` objects will be reflected in the created `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy`.

This is quirk of implementation, and it is generally recommended to treat `https://developer.android.com/reference/android/hardware/camera2/params/OutputConfiguration.html` objects as immutable once they have been added to a `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder`.

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy` | a new `https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy` object. |

### setSessionParameters

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/camera-featurecombinationquery#1.5.0)

```
public @NonNull SessionConfigurationLegacy.Builder setSessionParameters(@NonNull SessionParametersLegacy sessionParams)
```

Sets the session parameters for the session configuration. Overwrites any previously set session parameters.

| Parameters |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionParametersLegacy sessionParams` | session parameters to be associated with the session configuration |

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/camera/featurecombinationquery/SessionConfigurationLegacy.Builder` | the current builder |