Skip to content

Instantly share code, notes, and snippets.

@sberoch
Created July 13, 2020 13:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sberoch/98b66f5f5f7a5cc3144e6a69a9ba5917 to your computer and use it in GitHub Desktop.
Save sberoch/98b66f5f5f7a5cc3144e6a69a9ba5917 to your computer and use it in GitHub Desktop.
@Database(entities = [Character::class], version = 1, exportSchema = false)
abstract class AppDatabase : RoomDatabase() {
abstract fun characterDao(): CharacterDao
companion object {
@Volatile private var instance: AppDatabase? = null
fun getDatabase(context: Context): AppDatabase =
instance ?: synchronized(this) { instance ?: buildDatabase(context).also { instance = it } }
private fun buildDatabase(appContext: Context) =
Room.databaseBuilder(appContext, AppDatabase::class.java, "characters")
.fallbackToDestructiveMigration()
.build()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment