diff options
author | Allan Wang <me@allanwang.ca> | 2021-04-17 17:08:19 -0700 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2021-04-17 17:08:19 -0700 |
commit | 39db7f4c3d7b8f3d68ef1a8881b69624b721f6c6 (patch) | |
tree | cb24b739861219861b651aa064a91432f30c681b /app/src/main/kotlin/com/pitchedapps/frost/db/Database.kt | |
parent | 88a5d17814ff9f7c44f79216510d405f057ae454 (diff) | |
download | frost-39db7f4c3d7b8f3d68ef1a8881b69624b721f6c6.tar.gz frost-39db7f4c3d7b8f3d68ef1a8881b69624b721f6c6.tar.bz2 frost-39db7f4c3d7b8f3d68ef1a8881b69624b721f6c6.zip |
Start hilt injection
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/db/Database.kt')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/db/Database.kt | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/db/Database.kt b/app/src/main/kotlin/com/pitchedapps/frost/db/Database.kt index bd0b4ee0..cdcd2349 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/db/Database.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/db/Database.kt @@ -21,6 +21,12 @@ import androidx.room.Database import androidx.room.Room import androidx.room.RoomDatabase import com.pitchedapps.frost.BuildConfig +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 import org.koin.dsl.module interface FrostPrivateDao { @@ -101,3 +107,29 @@ class FrostDatabase( } } } + +@Module +@InstallIn(SingletonComponent::class) +object DatabaseModule { + + @Provides + @Singleton + fun frostDatabase(@ApplicationContext context: Context): FrostDatabase = + FrostDatabase.create(context) + + @Provides + @Singleton + fun cookieDao(frostDatabase: FrostDatabase): CookieDao = frostDatabase.cookieDao() + + @Provides + @Singleton + fun cacheDao(frostDatabase: FrostDatabase): CacheDao = frostDatabase.cacheDao() + + @Provides + @Singleton + fun notifDao(frostDatabase: FrostDatabase): NotificationDao = frostDatabase.notifDao() + + @Provides + @Singleton + fun genericDao(frostDatabase: FrostDatabase): GenericDao = frostDatabase.genericDao() +} |