2019-05-13 03:19:17 +02:00
|
|
|
package org.mercury_im.messenger.ui.login;
|
2019-05-04 00:27:02 +02:00
|
|
|
|
2019-05-18 10:06:16 +02:00
|
|
|
import androidx.lifecycle.MutableLiveData;
|
|
|
|
import androidx.lifecycle.ViewModel;
|
|
|
|
import androidx.annotation.NonNull;
|
2019-05-04 00:27:02 +02:00
|
|
|
import android.text.TextUtils;
|
|
|
|
|
2019-05-19 02:00:33 +02:00
|
|
|
import org.mercury_im.messenger.persistence.room.model.RoomAccountModel;
|
|
|
|
import org.mercury_im.messenger.persistence.repository.AccountRepository;
|
2019-05-04 00:27:02 +02:00
|
|
|
|
|
|
|
import javax.inject.Inject;
|
|
|
|
|
|
|
|
|
|
|
|
public class LoginViewModel extends ViewModel {
|
|
|
|
|
|
|
|
@Inject
|
|
|
|
AccountRepository accountRepository;
|
|
|
|
|
2019-05-19 02:00:33 +02:00
|
|
|
private MutableLiveData<RoomAccountModel> account = new MutableLiveData<>();
|
2019-05-04 00:27:02 +02:00
|
|
|
|
|
|
|
public LoginViewModel() {
|
|
|
|
super();
|
2019-05-19 02:00:33 +02:00
|
|
|
init(new RoomAccountModel());
|
2019-05-04 00:27:02 +02:00
|
|
|
}
|
|
|
|
|
2019-05-19 02:00:33 +02:00
|
|
|
public void init(@NonNull RoomAccountModel account) {
|
2019-05-04 00:27:02 +02:00
|
|
|
this.account.setValue(account);
|
|
|
|
}
|
|
|
|
|
2019-05-19 02:00:33 +02:00
|
|
|
public MutableLiveData<RoomAccountModel> getAccount() {
|
2019-05-04 00:27:02 +02:00
|
|
|
return account;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void login() {
|
2019-05-19 02:00:33 +02:00
|
|
|
RoomAccountModel account = getAccount().getValue();
|
2019-05-04 00:27:02 +02:00
|
|
|
if (account != null && account.getJid() != null && !TextUtils.isEmpty(account.getPassword())) {
|
|
|
|
accountRepository.insertAccount(account);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|