| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- package com.yingyangfly.baselib.db
- import android.content.Context
- import androidx.room.Database
- import androidx.room.Room
- import androidx.room.RoomDatabase
- @Database(entities = [QuestionsBean::class, DoctorBean::class, VoicePlayerBean::class], version = 1)
- abstract class AppDataBase : RoomDatabase() {
- abstract fun getQuestionsDao(): QuestionsDao
- abstract fun getDoctorsDao(): DoctorDao
- abstract fun getVoicePlayerDao(): VoicePlayerDao
- companion object {
- @Volatile
- private var sInstance: AppDataBase? = null
- private const val DATA_BASE_NAME = "hcp_pad.db"
- @JvmStatic
- fun getInstance(context: Context): AppDataBase? {
- if (sInstance == null) {
- synchronized(AppDataBase::class.java) {
- if (sInstance == null) {
- sInstance = createInstance(context)
- }
- }
- }
- return sInstance
- }
- private fun createInstance(context: Context): AppDataBase {
- return Room.databaseBuilder(
- context.applicationContext,
- AppDataBase::class.java,
- DATA_BASE_NAME
- ).allowMainThreadQueries()
- .build()
- }
- }
- }
|