| 267 | } |
| 268 | |
| 269 | public boolean walk(Func2<K, V, Boolean> callback) throws Exception { |
| 270 | try (var it = rocksTable.iterator()) { |
| 271 | for (it.seekToFirst(); it.isValid(); it.next()) { |
| 272 | var key = keyDecodeFunc.apply(ByteBuffer.Wrap(it.key())); |
| 273 | var value = newValue(); |
| 274 | value.decode(ByteBuffer.Wrap(it.value())); |
| 275 | if (!callback.call(key, value)) |
| 276 | return false; |
| 277 | } |
| 278 | return true; |
| 279 | } |
| 280 | } |
| 281 | |
| 282 | public boolean walkKey(Func1<K, Boolean> callback) throws Exception { |
| 283 | try (var it = rocksTable.iterator()) { |