@Override public K next() { hasNext(); K c = current; last = current; lastValue = currentValue; lastPage = pos == null ? null : pos.page; fetchNext(); return c; }
@Override public List<Subscription> listAllSubscriptions() { LOG.debug("Retrieving existing subscriptions"); List<Subscription> results = new ArrayList<>(); Cursor<String, Subscription> mapCursor = subscriptions.cursor(null); while (mapCursor.hasNext()) { String subscriptionStr = mapCursor.next(); results.add(mapCursor.getValue()); } LOG.debug("Loaded {} subscriptions", results.size()); return results; }
private Set<Integer> collectReferencedChunks() { long testVersion = lastChunk.version; DataUtils.checkArgument(testVersion > 0, "Collect references on version 0"); long readCount = getFileStore().readCount.get(); Set<Integer> referenced = new HashSet<>(); for (Cursor<String, String> c = meta.cursor("root."); c.hasNext();) { String key = c.next(); if (!key.startsWith("root.")) { break; } long pos = DataUtils.parseHexLong(c.getValue()); if (pos == 0) { continue; } int mapId = DataUtils.parseHexInt(key.substring("root.".length())); collectReferencedChunks(referenced, mapId, pos, 0); } long pos = lastChunk.metaRootPos; collectReferencedChunks(referenced, 0, pos, 0); readCount = fileStore.readCount.get() - readCount; return referenced; }
/** * Skip over that many entries. This method is relatively fast (for this map * implementation) even if many entries need to be skipped. * * @param n the number of entries to skip */ public void skip(long n) { if (!hasNext()) { return; } if (n < 10) { while (n-- > 0) { fetchNext(); } return; } long index = map.getKeyIndex(current); K k = map.getKey(index + n); pos = null; min(root, k); fetchNext(); }
while (cursor.hasNext()) { K key = cursor.next();
Cursor<Object, Object> cursor = map.cursor(null); Page lastPage = null; while (cursor.hasNext()) { cursor.next(); Page p = cursor.getPage();
@Override public K next() { hasNext(); K c = current; last = current; lastValue = currentValue; lastPage = pos == null ? null : pos.page; fetchNext(); return c; }
@Override public K next() { hasNext(); K c = current; last = current; lastValue = currentValue; lastPage = pos == null ? null : pos.page; fetchNext(); return c; }
@Override public K next() { hasNext(); K c = current; last = current; lastValue = currentValue; lastPage = pos == null ? null : pos.page; fetchNext(); return c; }
private Set<Integer> collectReferencedChunks() { long testVersion = lastChunk.version; DataUtils.checkArgument(testVersion > 0, "Collect references on version 0"); long readCount = getFileStore().readCount.get(); Set<Integer> referenced = new HashSet<>(); for (Cursor<String, String> c = meta.cursor("root."); c.hasNext();) { String key = c.next(); if (!key.startsWith("root.")) { break; } long pos = DataUtils.parseHexLong(c.getValue()); if (pos == 0) { continue; } int mapId = DataUtils.parseHexInt(key.substring("root.".length())); collectReferencedChunks(referenced, mapId, pos, 0); } long pos = lastChunk.metaRootPos; collectReferencedChunks(referenced, 0, pos, 0); readCount = fileStore.readCount.get() - readCount; return referenced; }
private Set<Integer> collectReferencedChunks() { long testVersion = lastChunk.version; DataUtils.checkArgument(testVersion > 0, "Collect references on version 0"); long readCount = getFileStore().readCount; Set<Integer> referenced = New.hashSet(); for (Cursor<String, String> c = meta.cursor("root."); c.hasNext();) { String key = c.next(); if (!key.startsWith("root.")) { break; } long pos = DataUtils.parseHexLong(c.getValue()); if (pos == 0) { continue; } int mapId = DataUtils.parseHexInt(key.substring("root.".length())); collectReferencedChunks(referenced, mapId, pos, 0); } long pos = lastChunk.metaRootPos; collectReferencedChunks(referenced, 0, pos, 0); readCount = fileStore.readCount - readCount; return referenced; }
/** * Skip over that many entries. This method is relatively fast (for this map * implementation) even if many entries need to be skipped. * * @param n the number of entries to skip */ public void skip(long n) { if (!hasNext()) { return; } if (n < 10) { while (n-- > 0) { fetchNext(); } return; } long index = map.getKeyIndex(current); K k = map.getKey(index + n); pos = null; min(root, k); fetchNext(); }
/** * Skip over that many entries. This method is relatively fast (for this map * implementation) even if many entries need to be skipped. * * @param n the number of entries to skip */ public void skip(long n) { if (!hasNext()) { return; } if (n < 10) { while (n-- > 0) { fetchNext(); } return; } long index = map.getKeyIndex(current); K k = map.getKey(index + n); pos = null; min(root, k); fetchNext(); }
private Set<Integer> collectReferencedChunks() { long testVersion = lastChunk.version; DataUtils.checkArgument(testVersion > 0, "Collect references on version 0"); long readCount = getFileStore().readCount; Set<Integer> referenced = New.hashSet(); for (Cursor<String, String> c = meta.cursor("root."); c.hasNext();) { String key = c.next(); if (!key.startsWith("root.")) { break; } long pos = DataUtils.parseHexLong(c.getValue()); if (pos == 0) { continue; } int mapId = DataUtils.parseHexInt(key.substring("root.".length())); collectReferencedChunks(referenced, mapId, pos, 0); } long pos = lastChunk.metaRootPos; collectReferencedChunks(referenced, 0, pos, 0); readCount = fileStore.readCount - readCount; return referenced; }
/** * Skip over that many entries. This method is relatively fast (for this map * implementation) even if many entries need to be skipped. * * @param n the number of entries to skip */ public void skip(long n) { if (!hasNext()) { return; } if (n < 10) { while (n-- > 0) { fetchNext(); } return; } long index = map.getKeyIndex(current); K k = map.getKey(index + n); pos = null; min(root, k); fetchNext(); }
Cursor<Object, Object> cursor = map.cursor(null); Page lastPage = null; while (cursor.hasNext()) { cursor.next(); Page p = cursor.getPage();
Cursor<Object, Object> cursor = map.cursor(null); Page lastPage = null; while (cursor.hasNext()) { cursor.next(); Page p = cursor.getPage();