Skip to content

Instantly share code, notes, and snippets.

@zainfikrih
Created September 22, 2019 12:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zainfikrih/e70e3f489a701df9d73bb62bf9c734d9 to your computer and use it in GitHub Desktop.
Save zainfikrih/e70e3f489a701df9d73bb62bf9c734d9 to your computer and use it in GitHub Desktop.
package men.ngopi.zain.catatanku.local;
import android.app.Application;
import androidx.lifecycle.LiveData;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import men.ngopi.zain.catatanku.local.entity.NoteEntity;
import men.ngopi.zain.catatanku.local.room.CatatankuDao;
import men.ngopi.zain.catatanku.local.room.CatatankuDatabase;
public class LocalRepository {
private ExecutorService executorService;
private CatatankuDao catatankuDao;
public LocalRepository(Application application) {
executorService = Executors.newSingleThreadExecutor();
CatatankuDatabase database = CatatankuDatabase.getDatabase(application);
catatankuDao = database.catatankuDao();
}
public LiveData<List<NoteEntity>> getNotes() {
return catatankuDao.getNotes();
}
public void insert(final NoteEntity noteEntity) {
executorService.execute(new Runnable() {
@Override
public void run() {
catatankuDao.insert(noteEntity);
}
});
}
public void update(final NoteEntity noteEntity) {
executorService.execute(new Runnable() {
@Override
public void run() {
catatankuDao.update(noteEntity);
}
});
}
public void delete(final NoteEntity noteEntity) {
executorService.execute(new Runnable() {
@Override
public void run() {
catatankuDao.delete(noteEntity);
}
});
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment