mirror of https://github.com/Ashinch/ReadYou.git
39 lines
1.2 KiB
Kotlin
39 lines
1.2 KiB
Kotlin
package me.ash.reader.data.module
|
|
|
|
import android.content.Context
|
|
import dagger.Module
|
|
import dagger.Provides
|
|
import dagger.hilt.InstallIn
|
|
import dagger.hilt.android.qualifiers.ApplicationContext
|
|
import dagger.hilt.components.SingletonComponent
|
|
import me.ash.reader.data.account.AccountDao
|
|
import me.ash.reader.data.article.ArticleDao
|
|
import me.ash.reader.data.feed.FeedDao
|
|
import me.ash.reader.data.group.GroupDao
|
|
import me.ash.reader.data.source.ReaderDatabase
|
|
import javax.inject.Singleton
|
|
|
|
@Module
|
|
@InstallIn(SingletonComponent::class)
|
|
class DatabaseModule {
|
|
@Provides
|
|
fun provideArticleDao(readerDatabase: ReaderDatabase): ArticleDao =
|
|
readerDatabase.articleDao()
|
|
|
|
@Provides
|
|
fun provideFeedDao(readerDatabase: ReaderDatabase): FeedDao =
|
|
readerDatabase.feedDao()
|
|
|
|
@Provides
|
|
fun provideGroupDao(readerDatabase: ReaderDatabase): GroupDao =
|
|
readerDatabase.groupDao()
|
|
|
|
@Provides
|
|
fun provideAccountDao(readerDatabase: ReaderDatabase): AccountDao =
|
|
readerDatabase.accountDao()
|
|
|
|
@Provides
|
|
@Singleton
|
|
fun provideReaderDatabase(@ApplicationContext context: Context): ReaderDatabase =
|
|
ReaderDatabase.getInstance(context)
|
|
} |