Я преобразовал свой модуль, компонент и классы кинжалов в kotlin. Столкнувшись с ошибкой ниже при использовании инжектора конструктора в классе Model:
java.lang.IllegalStateException: dataManager.appSettings must not be null
Вот мой класс модуля:
@Module
class BaseModule {
@Provides
fun provideBaseViewModel(application: Application, dataManager: DataManager, serviceConnector: ServiceConnector, compositeDisposable: CompositeDisposable): BaseModel {
return BaseModel(application, dataManager, serviceConnector, compositeDisposable)
}
}
Вот мой класс модели, в котором есть инжектор конструктора:
class BaseModel @Inject constructor(application: Application, dataManager: DataManager,compositeDisposable: CompositeDisposable) : BaseViewModel(application, dataManager, compositeDisposable) {
val appSettings: AppSettings
get() = dataManager.appSettings
}
Вот класс компонентов:
@Component(modules = [BaseModule::class])
interface BaseComponent {
fun inject(activity: BaseActivity)
}