blob: 19cbdaa9a6f8d59a2f7af6cd137e46e4b43d0e30 [file] [log] [blame]
package com.android.car.debuggingrestrictioncontroller.ui.login;
import androidx.lifecycle.ViewModel;
import androidx.lifecycle.ViewModelProvider;
import androidx.annotation.NonNull;
import com.android.car.debuggingrestrictioncontroller.data.LoginDataSource;
import com.android.car.debuggingrestrictioncontroller.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");
}
}
}