mvp shell
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
package com.postcard.di
|
||||
|
||||
import android.content.Context
|
||||
import androidx.room.Room
|
||||
import com.postcard.data.local.ConversationDao
|
||||
import com.postcard.data.local.MessageDao
|
||||
import com.postcard.data.local.PostcardDatabase
|
||||
import com.postcard.data.local.UserDao
|
||||
import dagger.Module
|
||||
import dagger.Provides
|
||||
import dagger.hilt.InstallIn
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import dagger.hilt.components.SingletonComponent
|
||||
import javax.inject.Singleton
|
||||
|
||||
@Module
|
||||
@InstallIn(SingletonComponent::class)
|
||||
object DatabaseModule {
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
fun providePostcardDatabase(@ApplicationContext context: Context): PostcardDatabase {
|
||||
return Room.databaseBuilder(
|
||||
context,
|
||||
PostcardDatabase::class.java,
|
||||
"postcard_db"
|
||||
).fallbackToDestructiveMigration().build()
|
||||
}
|
||||
|
||||
@Provides
|
||||
fun provideUserDao(database: PostcardDatabase): UserDao {
|
||||
return database.userDao()
|
||||
}
|
||||
|
||||
@Provides
|
||||
fun provideConversationDao(database: PostcardDatabase): ConversationDao {
|
||||
return database.conversationDao()
|
||||
}
|
||||
|
||||
@Provides
|
||||
fun provideMessageDao(database: PostcardDatabase): MessageDao {
|
||||
return database.messageDao()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user