# FailOnCloseDataSink.Factory

# FailOnCloseDataSink.Factory

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/FailOnCloseDataSink.java+class:androidx.media3.test.utils.FailOnCloseDataSink.Factory)

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/androidx/media3/test/utils/FailOnCloseDataSink.Factory "View this page in Java")

<br />

```
class FailOnCloseDataSink.Factory : DataSink.Factory
```

<br />

*** ** * ** ***

Factory to create a[FailOnCloseDataSink](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FailOnCloseDataSink).

## Summary

|                                                                                                                                                                                                                       ### Public constructors                                                                                                                                                                                                                        |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Factory](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FailOnCloseDataSink.Factory#Factory(androidx.media3.datasource.cache.Cache,java.util.concurrent.atomic.AtomicBoolean))`(cache: `[Cache](https://developer.android.com/reference/kotlin/androidx/media3/datasource/cache/Cache)`!, failOnClose: `[AtomicBoolean](https://developer.android.com/reference/java/util/concurrent/atomic/AtomicBoolean.html)`!)` Creates an instance. |

|                                       ### Public functions                                        |
|---------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [DataSink](https://developer.android.com/reference/kotlin/androidx/media3/datasource/DataSink)`!` | [createDataSink](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FailOnCloseDataSink.Factory#createDataSink())`()` Creates a[DataSink](https://developer.android.com/reference/kotlin/androidx/media3/datasource/DataSink)instance. |

## Public constructors

### Factory

```
Factory(cache: Cache!, failOnClose: AtomicBoolean!)
```

Creates an instance.  

|                                                        Parameters                                                         |
|---------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `cache: `[Cache](https://developer.android.com/reference/kotlin/androidx/media3/datasource/cache/Cache)`!`                | The cache to write to when not in fail-on-close mode.                                                                                                                                                                                                                                                                                                                      |
| `failOnClose: `[AtomicBoolean](https://developer.android.com/reference/java/util/concurrent/atomic/AtomicBoolean.html)`!` | An[AtomicBoolean](https://developer.android.com/reference/java/util/concurrent/atomic/AtomicBoolean.html)whose value is read in each call to[open](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FailOnCloseDataSink#open(androidx.media3.datasource.DataSpec))to determine whether to enable fail-on-close for the read that's being started. |

## Public functions

### createDataSink

```
fun createDataSink(): DataSink!
```

Creates a[DataSink](https://developer.android.com/reference/kotlin/androidx/media3/datasource/DataSink)instance.