diff --git a/dhfs-parent/server/src/main/java/com/usatiuk/dhfs/jmap/JMapHelper.java b/dhfs-parent/server/src/main/java/com/usatiuk/dhfs/jmap/JMapHelper.java index 96a4801a..a05055f3 100644 --- a/dhfs-parent/server/src/main/java/com/usatiuk/dhfs/jmap/JMapHelper.java +++ b/dhfs-parent/server/src/main/java/com/usatiuk/dhfs/jmap/JMapHelper.java @@ -17,23 +17,27 @@ public class JMapHelper { Transaction curTx; static JObjectKey makePrefix(JObjectKey holder) { - return JObjectKey.of(holder.name() + "/"); + return JObjectKey.of(holder.name() + "="); + } + + static JObjectKey makeKeyFirst(JObjectKey holder) { + return JObjectKey.of(holder.name() + "<"); } static JObjectKey makeKey(JObjectKey holder, K key) { return JObjectKey.of(makePrefix(holder).name() + key.toString()); } + static JObjectKey makeKeyLast(JObjectKey holder) { + return JObjectKey.of(holder.name() + ">"); + } + public CloseableKvIterator> getIterator(JMapHolder holder, IteratorStart start, K key) { return new JMapIterator<>(curTx.getIterator(start, makeKey(holder.key(), key)), holder); } - public CloseableKvIterator> getIterator(JMapHolder holder, K key) { - return getIterator(holder, IteratorStart.GE, key); - } - public CloseableKvIterator> getIterator(JMapHolder holder) { - return new JMapIterator<>(curTx.getIterator(IteratorStart.GE, makePrefix(holder.key())), holder); + return new JMapIterator<>(curTx.getIterator(IteratorStart.GT, makeKeyFirst(holder.key())), holder); } public void put(JMapHolder holder, K key, JObjectKey ref) {