@Override public void call(Subscriber<? super T> subscriber) { try { LazyList<T> lazyList = query.forCurrentThread().listLazyUncached(); try { for (T entity : lazyList) { if (subscriber.isUnsubscribed()) { break; } subscriber.onNext(entity); } } finally { lazyList.close(); } if (!subscriber.isUnsubscribed()) { subscriber.onCompleted(); } } catch (Throwable e) { Exceptions.throwIfFatal(e); subscriber.onError(e); } } });
public void testIteratorUncached() { ArrayList<TestEntity> list = insert(100); LazyList<TestEntity> listLazy = dao.queryBuilder().orderAsc(Properties.SimpleInteger).build() .listLazyUncached(); testIterator(list, listLazy, true); assertFalse(listLazy.isClosed()); listLazy.close(); }
public void testGetAll100Uncached() { ArrayList<TestEntity> list = insert(100); LazyList<TestEntity> listLazy = dao.queryBuilder().orderAsc(Properties.SimpleInteger).build() .listLazyUncached(); assertIds(list, listLazy); assertFalse(listLazy.isClosed()); listLazy.close(); }
public void testUncached() { insert(1); LazyList<TestEntity> listLazy = dao.queryBuilder().build().listLazyUncached(); assertFalse(listLazy.isEmpty()); assertFalse(listLazy.isClosed()); TestEntity entity1 = listLazy.get(0); TestEntity entity2 = listLazy.get(0); assertEquals(entity1.getId(), entity2.getId()); if (identityScopeForDao == null) { assertNotSame(entity1, entity2); } else { assertSame(entity1, entity2); } assertFalse(listLazy.isClosed()); try { listLazy.loadRemaining(); fail("Not empty"); } catch (DaoException expected) { // Expected, OK } listLazy.close(); assertTrue(listLazy.isClosed()); }
private void openRandomArticle() { LazyList<Article> articles = getQueryBuilder().listLazyUncached(); if(!articles.isEmpty()) { long id = articles.get(new Random().nextInt(articles.size())).getId(); openArticle(id); } else { Toast.makeText(getActivity(), R.string.no_articles, Toast.LENGTH_SHORT).show(); } articles.close(); }
@Override public void call(Subscriber<? super T> subscriber) { try { LazyList<T> lazyList = query.forCurrentThread().listLazyUncached(); try { for (T entity : lazyList) { if (subscriber.isUnsubscribed()) { break; } subscriber.onNext(entity); } } finally { lazyList.close(); } if (!subscriber.isUnsubscribed()) { subscriber.onCompleted(); } } catch (Throwable e) { Exceptions.throwIfFatal(e); subscriber.onError(e); } } });