package com.halzhang.android.examples.dagger2example;
import android.content.Context;
import android.util.Log;
import com.halzhang.android.examples.dagger2example.entity.User;
import javax.inject.Singleton;
import rx.Observable;
import rx.Subscriber;
/**
* Created by zhanghanguo@yy.com on 2016/5/27.
*/
@Singleton
public class UserApiImpl implements IUserApi {
private Context mContext;
public UserApiImpl(Context context) {
mContext = context;
}
@Override
public Observable<User> login(final String username, final String password) {
return Observable.create(new Observable.OnSubscribe<User>() {
@Override
public void call(Subscriber<? super User> subscriber) {
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
subscriber.onError(e);
}
if ("admin".equals(username) && "admin".equals(password)) {
User user = new User();
user.mAge = 18;
user.mFirstName = "First";
user.mLastName = "Last";
user.mUsername = "foo";
user.mUid = 123123;
subscriber.onNext(user);
subscriber.onCompleted();
} else {
subscriber.onNext(null);
subscriber.onCompleted();
}
}
});
}
}