# RoomDatabase.PrepackagedDatabaseCallback

Artifact: [androidx.room3:room3-runtime](https://developer.android.com/jetpack/androidx/releases/room3) [View Source](https://cs.android.com/search?q=file:androidx/room3/RoomDatabase.android.kt+class:androidx.room3.RoomDatabase.PrepackagedDatabaseCallback) Added in [3.0.0](https://developer.android.com/jetpack/androidx/releases/room3#3.0.0)

*** ** * ** ***

Common/AllAndroid/JVMNative/C/iOSJavaScript
- android

  ```
  abstract class RoomDatabase.PrepackagedDatabaseCallback
  ```

*** ** * ** ***

Callback for `https://developer.android.com/reference/kotlin/androidx/room3/RoomDatabase.Builder#createFromAsset(kotlin.String)`, `https://developer.android.com/reference/kotlin/androidx/room3/RoomDatabase.Builder#createFromFile(java.io.File)` and `https://developer.android.com/reference/kotlin/androidx/room3/RoomDatabase.Builder#createFromInputStream(java.util.concurrent.Callable)`

This callback will be invoked after the pre-package DB is copied but before Room had a chance to open it and therefore before the `https://developer.android.com/reference/kotlin/androidx/room3/RoomDatabase.Callback` methods are invoked. This callback can be useful for updating the pre-package DB schema to satisfy Room's schema validation.

## Summary

| ### Public constructors |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/room3/RoomDatabase.PrepackagedDatabaseCallback#PrepackagedDatabaseCallback()()` | android |

| ### Public functions |
|---|---|---|
| `abstract https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/room3/RoomDatabase.PrepackagedDatabaseCallback#onOpenPrepackagedDatabase(androidx.sqlite.SQLiteConnection)(connection: https://developer.android.com/reference/kotlin/androidx/sqlite/SQLiteConnection)` Called when the pre-packaged database has been copied. | android |

## Public constructors

### PrepackagedDatabaseCallback

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

```
PrepackagedDatabaseCallback()
```

## Public functions

### onOpenPrepackagedDatabase

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

```
abstract fun onOpenPrepackagedDatabase(connection: SQLiteConnection): Unit
```

Called when the pre-packaged database has been copied.

| Parameters |
|---|---|
| `connection: https://developer.android.com/reference/kotlin/androidx/sqlite/SQLiteConnection` | The database connection. |