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.