У меня есть простой класс, который я использую для внедрения зависимостей:
class ViewModelFactory( application: Application ) : ViewModelProvider.Factory
{
val mainFlow = MainFlow()
private val authorizationFlow = AuthorizationFlow()
init
{
mainFlow.authFlow = authorizationFlow
}
..
}
Основной класс потока:
class MainFlow
{
lateinit var authFlow : AuthorizationFlow
init
{
if( ::authFlow.isInitialized )
authFlow.start()
}
}
И поток авторизации
class AuthorizationFlow
{
fun start()
{
// do some stuff
}
}
Очевидная проблема заключается в том, что свойство authFlow в классе MainFlow никогда не инициализируется при выполнении init . Как я могу «дождаться» инициализации authFlow и только потом вызывать метод authFlow.start ()? Спасибо!