Skip to content
This repository was archived by the owner on Jan 5, 2023. It is now read-only.

Commit 21f681e

Browse files
committed
Update Dagger and implement Component.Factory type for components
Cherry-pick of #325 Change-Id: I6bed2d43534fb6f1180c00e2d3e6f8bca4989916
1 parent 08bfbd3 commit 21f681e

File tree

3 files changed

+8
-5
lines changed

3 files changed

+8
-5
lines changed

build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ buildscript {
4242
constraintLayoutVersion = '1.1.3'
4343
coreVersion = '1.2.0-alpha02'
4444
crashlyticsVersion = '2.9.8'
45-
dagger = "2.16"
45+
dagger = "2.24"
4646
dataBindingCompilerVersion = '3.0.1'
4747
drawerLayoutVersion = '1.1.0-alpha02'
4848
espressoVersion = '3.1.1'

mobile/src/main/java/com/google/samples/apps/iosched/MainApplication.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class MainApplication : DaggerApplication() {
5757
* is a class generated by Dagger based on the `AppComponent` class.
5858
*/
5959
override fun applicationInjector(): AndroidInjector<out DaggerApplication> {
60-
return DaggerAppComponent.builder().create(this)
60+
return DaggerAppComponent.factory().create(this)
6161
}
6262

6363
private fun enableStrictMode() {

mobile/src/main/java/com/google/samples/apps/iosched/di/AppComponent.kt

+6-3
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,13 @@ package com.google.samples.apps.iosched.di
1818

1919
import com.google.samples.apps.iosched.MainApplication
2020
import com.google.samples.apps.iosched.shared.di.BroadcastReceiverBindingModule
21+
import com.google.samples.apps.iosched.shared.di.FeatureFlagsModule
2122
import com.google.samples.apps.iosched.shared.di.ServiceBindingModule
2223
import com.google.samples.apps.iosched.shared.di.SharedModule
2324
import com.google.samples.apps.iosched.shared.di.ViewModelModule
24-
import com.google.samples.apps.iosched.shared.di.FeatureFlagsModule
2525
import com.google.samples.apps.iosched.ui.signin.SignInViewModelDelegateModule
2626
import com.google.samples.apps.iosched.ui.theme.ThemedActivityDelegateModule
27+
import dagger.BindsInstance
2728
import dagger.Component
2829
import dagger.android.AndroidInjector
2930
import dagger.android.support.AndroidSupportInjectionModule
@@ -53,6 +54,8 @@ import javax.inject.Singleton
5354
]
5455
)
5556
interface AppComponent : AndroidInjector<MainApplication> {
56-
@Component.Builder
57-
abstract class Builder : AndroidInjector.Builder<MainApplication>()
57+
@Component.Factory
58+
interface Factory {
59+
fun create(@BindsInstance application: MainApplication): AppComponent
60+
}
5861
}

0 commit comments

Comments
 (0)