/** * @return Separated cache iterator. */ @SuppressWarnings("unchecked") private WeakReferenceCloseableIterator<T> separatedCacheIterator() throws IgniteCheckedException { GridCloseableIterator iter = (GridCloseableIterator)cache.scanIterator(false, new IgniteBiPredicate<Object, Object>() { @Override public boolean apply(Object k, Object v) { return k.getClass() == GridCacheSetItemKey.class; } }); return ctx.itHolder().iterator(iter, new CacheIteratorConverter<T, Map.Entry<T, ?>>() { @Override protected T convert(Map.Entry<T, ?> e) { return (T)((SetItemKey)e.getKey()).item(); } @Override protected void remove(T item) { GridCacheSetImpl.this.remove(item); } }); }
.executeScanQuery(); return ctx.itHolder().iterator(iter, new CacheIteratorConverter<Cache.Entry<K, V>, Map.Entry<K, V>>() { @Override protected Cache.Entry<K, V> convert(Map.Entry<K, V> e) {
/** * @return Shared cache iterator. */ @SuppressWarnings("unchecked") private WeakReferenceCloseableIterator<T> sharedCacheIterator() throws IgniteCheckedException { CacheQuery qry = new GridCacheQueryAdapter<>(ctx, SET, null, null, new GridSetQueryPredicate<>(id, collocated), collocated ? hdrPart : null, false, false, null); Collection<ClusterNode> nodes = dataNodes(ctx.affinity().affinityTopologyVersion()); qry.projection(ctx.grid().cluster().forNodes(nodes)); CacheQueryFuture<Map.Entry<T, ?>> fut = qry.execute(); return ctx.itHolder().iterator(fut, new CacheIteratorConverter<T, Map.Entry<T, ?>>() { @Override protected T convert(Map.Entry<T, ?> e) { return e.getKey(); } @Override protected void remove(T item) { GridCacheSetImpl.this.remove(item); } }); }
return cache.context().itHolder().iterator(iter, new CacheIteratorConverter<Cache.Entry<Object, Object>, Map.Entry<Object, Object>>() { @Override protected Cache.Entry<Object, Object> convert(Map.Entry<Object, Object> e) {
/** * @return Separated cache iterator. */ @SuppressWarnings("unchecked") private WeakReferenceCloseableIterator<T> separatedCacheIterator() throws IgniteCheckedException { GridCloseableIterator iter = (GridCloseableIterator)cache.scanIterator(false, new IgniteBiPredicate<Object, Object>() { @Override public boolean apply(Object k, Object v) { return k.getClass() == GridCacheSetItemKey.class; } }); return ctx.itHolder().iterator(iter, new CacheIteratorConverter<T, Map.Entry<T, ?>>() { @Override protected T convert(Map.Entry<T, ?> e) { return (T)((SetItemKey)e.getKey()).item(); } @Override protected void remove(T item) { GridCacheSetImpl.this.remove(item); } }); }
.executeScanQuery(); return ctx.itHolder().iterator(iter, new CacheIteratorConverter<Cache.Entry<K, V>, Map.Entry<K, V>>() { @Override protected Cache.Entry<K, V> convert(Map.Entry<K, V> e) {
/** * @return Shared cache iterator. */ @SuppressWarnings("unchecked") private WeakReferenceCloseableIterator<T> sharedCacheIterator() throws IgniteCheckedException { CacheQuery qry = new GridCacheQueryAdapter<>(ctx, SET, null, null, new GridSetQueryPredicate<>(id, collocated), collocated ? hdrPart : null, false, false); Collection<ClusterNode> nodes = dataNodes(ctx.affinity().affinityTopologyVersion()); qry.projection(ctx.grid().cluster().forNodes(nodes)); CacheQueryFuture<Map.Entry<T, ?>> fut = qry.execute(); return ctx.itHolder().iterator(fut, new CacheIteratorConverter<T, Map.Entry<T, ?>>() { @Override protected T convert(Map.Entry<T, ?> e) { return e.getKey(); } @Override protected void remove(T item) { GridCacheSetImpl.this.remove(item); } }); }
return cache.context().itHolder().iterator(iter, new CacheIteratorConverter<Cache.Entry<Object, Object>, Map.Entry<Object, Object>>() { @Override protected Cache.Entry<Object, Object> convert(Map.Entry<Object, Object> e) {