2019-01-11 04:33:32 +01:00
|
|
|
package User;
|
|
|
|
|
|
|
|
import android.app.Application;
|
2019-02-21 10:24:23 +01:00
|
|
|
import androidx.lifecycle.LiveData;
|
2019-01-11 04:33:32 +01:00
|
|
|
import android.os.AsyncTask;
|
|
|
|
|
|
|
|
public class UserRepository {
|
|
|
|
private UserDao mUserDao;
|
|
|
|
private LiveData<UserData> mUserLiveData;
|
|
|
|
|
|
|
|
UserRepository(Application application, String userName) {
|
|
|
|
mUserDao = UserRoomDatabase.getDatabase(application).userDao();
|
|
|
|
|
|
|
|
mUserLiveData = mUserDao.getUserLiveData(userName);
|
|
|
|
}
|
|
|
|
|
|
|
|
LiveData<UserData> getUserLiveData() {
|
|
|
|
return mUserLiveData;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void insert(UserData userData) {
|
|
|
|
new InsertAsyncTask(mUserDao).execute(userData);
|
|
|
|
}
|
|
|
|
|
|
|
|
private static class InsertAsyncTask extends AsyncTask<UserData, Void, Void> {
|
|
|
|
|
|
|
|
private UserDao mAsyncTaskDao;
|
|
|
|
|
|
|
|
InsertAsyncTask(UserDao dao) {
|
|
|
|
mAsyncTaskDao = dao;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected Void doInBackground(final UserData... params) {
|
|
|
|
mAsyncTaskDao.insert(params[0]);
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|