T - Entity typeK - Primary key (PK) type; use Void if entity does not have exactly one PK@Experimental public class RxDao<T,K> extends java.lang.Object
AbstractDao but with Rx support. Most methods from AbstractDao are present here, but will return an
Observable. Modifying operations return the given entities, so they can be further processed in Rx.
Instances of RxDao may have an default Scheduler, which is used to configure returned observables with
Observable.subscribeOn(Scheduler) (see AbstractDao.rxPlain(), which uses the IO scheduler).
Note: DO NOT call more than one data modification operation when you can use a transaction instead (see
RxTransaction. Individual calls use a transaction each and are much slower.
AbstractDao.rxPlain()| Modifier and Type | Field and Description |
|---|---|
protected rx.Scheduler |
scheduler |
| Constructor and Description |
|---|
RxDao(AbstractDao<T,K> dao)
Creates a new RxDao without a default scheduler.
|
RxDao(AbstractDao<T,K> dao,
rx.Scheduler scheduler)
Creates a new RxDao with a default scheduler, which is used to configure returned observables with
Observable.subscribeOn(Scheduler). |
| Modifier and Type | Method and Description |
|---|---|
rx.Observable<java.lang.Long> |
count()
Rx version of
AbstractDao.count() returning an Observable. |
rx.Observable<java.lang.Void> |
delete(T entity)
Rx version of
AbstractDao.delete(Object) returning an Observable. |
rx.Observable<java.lang.Void> |
deleteAll()
Rx version of
AbstractDao.deleteAll() returning an Observable. |
rx.Observable<java.lang.Void> |
deleteByKey(K key)
Rx version of
AbstractDao.deleteByKey(Object) returning an Observable. |
rx.Observable<java.lang.Void> |
deleteByKeyInTx(java.lang.Iterable<K> keys)
Rx version of
AbstractDao.deleteByKeyInTx(Iterable) returning an Observable. |
rx.Observable<java.lang.Void> |
deleteByKeyInTx(K... keys)
Rx version of
AbstractDao.deleteByKeyInTx(Object[]) returning an Observable. |
rx.Observable<java.lang.Void> |
deleteInTx(java.lang.Iterable<T> entities)
Rx version of
AbstractDao.deleteInTx(Iterable) returning an Observable. |
rx.Observable<java.lang.Void> |
deleteInTx(T... entities)
Rx version of
AbstractDao.deleteInTx(Object[]) returning an Observable. |
AbstractDao<T,K> |
getDao()
The plain DAO.
|
rx.Scheduler |
getScheduler()
The default scheduler (or null) used for wrapping.
|
rx.Observable<T> |
insert(T entity)
Rx version of
AbstractDao.insert(Object) returning an Observable. |
rx.Observable<java.lang.Iterable<T>> |
insertInTx(java.lang.Iterable<T> entities)
Rx version of
AbstractDao.insertInTx(Iterable) returning an Observable. |
rx.Observable<java.lang.Object[]> |
insertInTx(T... entities)
Rx version of
AbstractDao.insertInTx(Object[]) returning an Observable. |
rx.Observable<T> |
insertOrReplace(T entity)
Rx version of
AbstractDao.insertOrReplace(Object) returning an Observable. |
rx.Observable<java.lang.Iterable<T>> |
insertOrReplaceInTx(java.lang.Iterable<T> entities)
Rx version of
AbstractDao.insertOrReplaceInTx(Iterable) returning an Observable. |
rx.Observable<java.lang.Object[]> |
insertOrReplaceInTx(T... entities)
Rx version of
AbstractDao.insertOrReplaceInTx(Object[]) returning an Observable. |
rx.Observable<T> |
load(K key)
Rx version of
AbstractDao.loadAll() returning an Observable. |
rx.Observable<java.util.List<T>> |
loadAll()
Rx version of
AbstractDao.loadAll() returning an Observable. |
rx.Observable<T> |
refresh(T entity)
Rx version of
AbstractDao.refresh(Object) returning an Observable. |
rx.Observable<T> |
save(T entity)
Rx version of
AbstractDao.save(Object) returning an Observable. |
rx.Observable<java.lang.Iterable<T>> |
saveInTx(java.lang.Iterable<T> entities)
Rx version of
AbstractDao.saveInTx(Iterable) returning an Observable. |
rx.Observable<java.lang.Object[]> |
saveInTx(T... entities)
Rx version of
AbstractDao.saveInTx(Object[]) returning an Observable. |
rx.Observable<T> |
update(T entity)
Rx version of
AbstractDao.update(Object) returning an Observable. |
rx.Observable<java.lang.Iterable<T>> |
updateInTx(java.lang.Iterable<T> entities)
Rx version of
AbstractDao.updateInTx(Iterable) returning an Observable. |
rx.Observable<java.lang.Object[]> |
updateInTx(T... entities)
Rx version of
AbstractDao.updateInTx(Object[]) returning an Observable. |
protected <R> rx.Observable<R> |
wrap(java.util.concurrent.Callable<R> callable) |
protected <R> rx.Observable<R> |
wrap(rx.Observable<R> observable) |
@Experimental public RxDao(AbstractDao<T,K> dao)
@Experimental public RxDao(AbstractDao<T,K> dao, rx.Scheduler scheduler)
Observable.subscribeOn(Scheduler).@Experimental public rx.Observable<java.util.List<T>> loadAll()
AbstractDao.loadAll() returning an Observable.@Experimental public rx.Observable<T> load(K key)
AbstractDao.loadAll() returning an Observable.@Experimental public rx.Observable<T> refresh(T entity)
AbstractDao.refresh(Object) returning an Observable.
Note that the Observable will emit the given entity back to its subscribers.@Experimental public rx.Observable<T> insert(T entity)
AbstractDao.insert(Object) returning an Observable.
Note that the Observable will emit the given entity back to its subscribers.@Experimental public rx.Observable<java.lang.Iterable<T>> insertInTx(java.lang.Iterable<T> entities)
AbstractDao.insertInTx(Iterable) returning an Observable.
Note that the Observable will emit the given entities back to its subscribers.@Experimental public rx.Observable<java.lang.Object[]> insertInTx(T... entities)
AbstractDao.insertInTx(Object[]) returning an Observable.
Note that the Observable will emit the given entities back to its subscribers.@Experimental public rx.Observable<T> insertOrReplace(T entity)
AbstractDao.insertOrReplace(Object) returning an Observable.
Note that the Observable will emit the given entity back to its subscribers.@Experimental public rx.Observable<java.lang.Iterable<T>> insertOrReplaceInTx(java.lang.Iterable<T> entities)
AbstractDao.insertOrReplaceInTx(Iterable) returning an Observable.
Note that the Observable will emit the given entities back to its subscribers.@Experimental public rx.Observable<java.lang.Object[]> insertOrReplaceInTx(T... entities)
AbstractDao.insertOrReplaceInTx(Object[]) returning an Observable.
Note that the Observable will emit the given entities back to its subscribers.@Experimental public rx.Observable<T> save(T entity)
AbstractDao.save(Object) returning an Observable.
Note that the Observable will emit the given entity back to its subscribers.@Experimental public rx.Observable<java.lang.Iterable<T>> saveInTx(java.lang.Iterable<T> entities)
AbstractDao.saveInTx(Iterable) returning an Observable.
Note that the Observable will emit the given entities back to its subscribers.@Experimental public rx.Observable<java.lang.Object[]> saveInTx(T... entities)
AbstractDao.saveInTx(Object[]) returning an Observable.
Note that the Observable will emit the given entities back to its subscribers.@Experimental public rx.Observable<T> update(T entity)
AbstractDao.update(Object) returning an Observable.
Note that the Observable will emit the given entity back to its subscribers.@Experimental public rx.Observable<java.lang.Iterable<T>> updateInTx(java.lang.Iterable<T> entities)
AbstractDao.updateInTx(Iterable) returning an Observable.
Note that the Observable will emit the given entities back to its subscribers.@Experimental public rx.Observable<java.lang.Object[]> updateInTx(T... entities)
AbstractDao.updateInTx(Object[]) returning an Observable.
Note that the Observable will emit the given entities back to its subscribers.@Experimental public rx.Observable<java.lang.Void> delete(T entity)
AbstractDao.delete(Object) returning an Observable.@Experimental public rx.Observable<java.lang.Void> deleteByKey(K key)
AbstractDao.deleteByKey(Object) returning an Observable.@Experimental public rx.Observable<java.lang.Void> deleteAll()
AbstractDao.deleteAll() returning an Observable.@Experimental public rx.Observable<java.lang.Void> deleteInTx(java.lang.Iterable<T> entities)
AbstractDao.deleteInTx(Iterable) returning an Observable.@Experimental public rx.Observable<java.lang.Void> deleteInTx(T... entities)
AbstractDao.deleteInTx(Object[]) returning an Observable.@Experimental public rx.Observable<java.lang.Void> deleteByKeyInTx(java.lang.Iterable<K> keys)
AbstractDao.deleteByKeyInTx(Iterable) returning an Observable.@Experimental public rx.Observable<java.lang.Void> deleteByKeyInTx(K... keys)
AbstractDao.deleteByKeyInTx(Object[]) returning an Observable.@Experimental public rx.Observable<java.lang.Long> count()
AbstractDao.count() returning an Observable.@Experimental public AbstractDao<T,K> getDao()
@Experimental public rx.Scheduler getScheduler()
protected <R> rx.Observable<R> wrap(java.util.concurrent.Callable<R> callable)
protected <R> rx.Observable<R> wrap(rx.Observable<R> observable)
Available under the Apache License, Version 2.0 - Copyright © 2011-2016 greenrobot.org. All Rights Reserved.