package com.duqing.missions.ui.login.data; import com.duqing.missions.retrofit.RetrofitUtils; import com.duqing.missions.retrofit.api.LoginApiCenter; import com.duqing.missions.ui.login.data.model.LoggedInUser; import io.reactivex.Observable; import io.reactivex.ObservableEmitter; import io.reactivex.ObservableOnSubscribe; /** * Class that handles authentication w/ login credentials and retrieves user information. */ public class LoginDataSource { public Observable login(String username, String password) { return RetrofitUtils.getInstance().getRetrofit(LoginApiCenter.class).login(";lajks;dkfjal;ksjdf"); } public Observable loginByCode(String phone, String verifyCode){ final Observable observable = Observable.create(new ObservableOnSubscribe() { @Override public void subscribe(ObservableEmitter e) throws Exception { LoggedInUser fakeUser = new LoggedInUser( java.util.UUID.randomUUID().toString(), "Jane Doe"); e.onNext(fakeUser); } }); return observable; } public void logout() { // TODO: revoke authentication } }