Advertisement
quiro91

Rxjava + Firebase

Sep 15th, 2016
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.14 KB | None | 0 0
  1. @Override
  2. public Observable<DataSnapshot> requestNotes() {
  3. return Observable.fromAsync(new Action1<AsyncEmitter<DataSnapshot>>() {
  4. @Override
  5. public void call(AsyncEmitter<DataSnapshot> listAsyncEmitter) {
  6. final ValueEventListener valueEventListener = ref.child(Constants.NOTES)
  7. .addValueEventListener(
  8. new ValueEventListener() {
  9. @Override
  10. public void onDataChange(DataSnapshot dataSnapshot) {
  11. listAsyncEmitter.onNext(dataSnapshot);
  12. }
  13.  
  14. @Override
  15. public void onCancelled(final DatabaseError error) {
  16. listAsyncEmitter.onError(new FirebaseException(error.getMessage()));
  17. }
  18. });
  19.  
  20. listAsyncEmitter.setCancellation(() -> ref.child(Constants.NOTES)
  21. .removeEventListener(valueEventListener));
  22. }
  23. }, AsyncEmitter.BackpressureMode.BUFFER);
  24. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement