1234567891011121314151617181920212223242526 |
- package me.yoqi.android.netauth.ui.login;
- import androidx.lifecycle.ViewModel;
- import androidx.lifecycle.ViewModelProvider;
- import androidx.annotation.NonNull;
- import me.yoqi.android.netauth.data.LoginDataSource;
- import me.yoqi.android.netauth.data.LoginRepository;
- /**
- * ViewModel provider factory to instantiate LoginViewModel.
- * Required given LoginViewModel has a non-empty constructor
- */
- public class LoginViewModelFactory implements ViewModelProvider.Factory {
- @NonNull
- @Override
- @SuppressWarnings("unchecked")
- public <T extends ViewModel> T create(@NonNull Class<T> modelClass) {
- if (modelClass.isAssignableFrom(LoginViewModel.class)) {
- return (T) new LoginViewModel(LoginRepository.getInstance(new LoginDataSource()));
- } else {
- throw new IllegalArgumentException("Unknown ViewModel class");
- }
- }
- }
|