refactor(di): migrate to Whetstone ApplicationScope

This commit is contained in:
Harsh Shandilya 2022-11-14 02:34:26 +05:30
parent 52562afbd1
commit 4a87682b68
No known key found for this signature in database
13 changed files with 33 additions and 18 deletions

View file

@ -11,6 +11,7 @@ plugins {
id("dev.msfjarvis.claw.kotlin-common")
id("dev.msfjarvis.claw.android-library")
alias(libs.plugins.anvil)
alias(libs.plugins.whetstone)
}
anvil { generateDaggerFactories.set(true) }

View file

@ -8,6 +8,7 @@ package dev.msfjarvis.claw.core.injection
import android.content.Context
import android.net.TrafficStats
import com.deliveryhero.whetstone.app.ApplicationScope
import com.squareup.anvil.annotations.ContributesTo
import dagger.Binds
import dagger.Module
@ -16,7 +17,6 @@ import dagger.multibindings.IntoSet
import dev.msfjarvis.claw.core.network.DelegatingSocketFactory
import dev.msfjarvis.claw.core.network.NapierLogger
import dev.msfjarvis.claw.core.network.UserAgentInterceptor
import dev.msfjarvis.claw.injection.scopes.AppScope
import java.net.Socket
import javax.net.SocketFactory
import okhttp3.Cache
@ -25,7 +25,7 @@ import okhttp3.OkHttpClient
import okhttp3.logging.HttpLoggingInterceptor
@Module
@ContributesTo(AppScope::class)
@ContributesTo(ApplicationScope::class)
interface OkHttpModule {
@Binds fun NapierLogger.bindLogger(): HttpLoggingInterceptor.Logger

View file

@ -6,19 +6,19 @@
*/
package dev.msfjarvis.claw.core.injection
import com.deliveryhero.whetstone.app.ApplicationScope
import com.jakewharton.retrofit2.converter.kotlinx.serialization.asConverterFactory
import com.squareup.anvil.annotations.ContributesTo
import dagger.Module
import dagger.Provides
import dagger.multibindings.IntoSet
import dev.msfjarvis.claw.injection.scopes.AppScope
import kotlinx.serialization.ExperimentalSerializationApi
import kotlinx.serialization.json.Json
import okhttp3.MediaType
import retrofit2.Converter
@Module
@ContributesTo(AppScope::class)
@ContributesTo(ApplicationScope::class)
object RetrofitModule {
@OptIn(ExperimentalSerializationApi::class)

View file

@ -7,14 +7,14 @@
package dev.msfjarvis.claw.core.logging
import android.app.Application
import com.deliveryhero.whetstone.app.ApplicationScope
import com.squareup.anvil.annotations.ContributesMultibinding
import dev.msfjarvis.claw.core.injection.AppPlugin
import dev.msfjarvis.claw.injection.scopes.AppScope
import io.github.aakira.napier.DebugAntilog
import io.github.aakira.napier.Napier
import javax.inject.Inject
@ContributesMultibinding(AppScope::class)
@ContributesMultibinding(ApplicationScope::class)
class NapierPlugin @Inject constructor() : AppPlugin {
override fun apply(application: Application) {
Napier.base(DebugAntilog())