public SplashViewModel(IAppRes appRes, IRxSchedulersFacade rxSchedulersFacade, IDeviceLog deviceLog, IAuthRepository authRepository) : base(appRes, rxSchedulersFacade, deviceLog) { _authRepository = authRepository; RxDisposables.Add(_authRepository.AuthStatus .ObserveOn(RxSchedulersFacade.IO()) .SubscribeOn(RxSchedulersFacade.IO()) .Subscribe(status => { if (status == AuthStatusEnum.LoggedOut) { StartupLiveData.PostValue(AppStartStatus.LoginRequired); } else if (status == AuthStatusEnum.NoInternet) { StartupLiveData.PostValue(AppStartStatus.NoInternet); } }, e => { StartupLiveData.PostValue(AppStartStatus.LoginRequired); Log.Error("SplashViewModel", "error subscribing to AuthStatus", e); })); }
public MainViewModel(IAppRes appRes, IRxSchedulersFacade rxSchedulersFacade, IDeviceLog deviceLog, IAuthRepository authRepository) : base(appRes, rxSchedulersFacade, deviceLog) { _authRepository = authRepository; RxDisposables.Add(authRepository.AuthStatus .ObserveOn(RxSchedulersFacade.IO()) .SubscribeOn(RxSchedulersFacade.IO()) .Subscribe(status => AuthStatus.PostValue(status), exception => Log.Error("MainViewModel", "Error observing AuthRepository AuthStatus", exception))); }
public ForgotPasswordViewModel(IAppRes appRes, IRxSchedulersFacade rxSchedulersFacade, IDeviceLog deviceLog, IForgotPasswordRepository forgotPasswordRepository) : base(appRes, rxSchedulersFacade, deviceLog) { _forgotPasswordRepository = forgotPasswordRepository; RxDisposables.Add(_forgotPasswordRepository.ForgotPasswordRequestStatusSubject .SubscribeOn(RxSchedulersFacade.IO()) .ObserveOn(RxSchedulersFacade.UI()) .Subscribe(HandleNewForgotPasswordRequestStatus, e => { LongToast(AppRes["ForgotPasswordError"]); Log.Error("ForgotPasswordPageViewModel", "error subscribing to ForgotPasswordRequestStatusSubject", e); } )); }