- В
LoginViewModel
, я не могу понять, что я должен написать в «если (результат ...), потому что все, что я напишу, оказывается красным. - В
LoginRepository
"when is ->" становится красным. Я не знаю почему? - А в
LoginDataSource
я не знаю, как решить код.
I был бы признателен за любую помощь.
LoginViewModel:
fun login(username: String, password: String) {
// can be launched in a separate asynchronous job
val result: String = loginRepository.login(username, password).toString()
if (result is Success.data) {
_loginResult.value =
LoginResult(success = LoggedInUserView(displayName = "Login Success"))
} else {
_loginResult.value = LoginResult(error = R.string.login_failed)
}
}
LoginRepository:
fun login(username: String, password: String) {
// handle login
val result = dataSource.login(username, password)
when (result) {
is -> Success(data = LoggedInUser(displayName = "Login Success"))
}
}
LoginDataSource:
fun login(username: String, password: String): Result.Success<LoggedInUser> {
try {
//TODO:handleloggedInUserauthentication
}
}
fun logout() {
// TODO: revoke authentication
}