Skip to content

Commit 17d09da

Browse files
committed
extracted KeyVal to package level
1 parent f5bc922 commit 17d09da

File tree

4 files changed

+31
-19
lines changed

4 files changed

+31
-19
lines changed

src/main/java/org/lmdbjava/CursorIterator.java

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,7 @@
2222
* Iterator for entries that follow the same semantics as Cursors
2323
* with regards to read and write transactions and how they are closed.
2424
*/
25-
public class CursorIterator<T> implements
26-
Iterator<CursorIterator.KeyVal<T>>, AutoCloseable {
25+
public class CursorIterator<T> implements Iterator<KeyVal<T>>, AutoCloseable {
2726
private final Cursor<T> cursor;
2827
private final IteratorType type;
2928
private final T key;
@@ -39,7 +38,7 @@ private enum State {
3938
READY, NOT_READY, DONE, FAILED,
4039
}
4140

42-
private KeyVal<T> holder = new KeyVal<>();
41+
private KeyVal<T> holder = new KeyVal<>(null, null);
4342
private KeyVal<T> entry;
4443
private boolean first = true;
4544

@@ -127,14 +126,4 @@ public void close() {
127126
enum IteratorType {
128127
FORWARD, BACKWARD
129128
}
130-
131-
/**
132-
* Holder for the current key and value of CursorIterator.
133-
*
134-
* @param <T> buffer type
135-
*/
136-
public static class KeyVal<T> {
137-
T key;
138-
T val;
139-
}
140129
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package org.lmdbjava;
2+
3+
/**
4+
* Holder for a key and value pair.
5+
*
6+
* @param <T> buffer type
7+
*/
8+
public class KeyVal<T> {
9+
public T key;
10+
public T val;
11+
12+
public KeyVal(T key, T val) {
13+
this.key = key;
14+
this.val = val;
15+
}
16+
17+
public void setKey(T key) {
18+
this.key = key;
19+
}
20+
21+
public void setVal(T val) {
22+
this.val = val;
23+
}
24+
25+
public void wrap(T key, T val) {
26+
this.key = key;
27+
this.val = val;
28+
}
29+
}

src/test/java/org/lmdbjava/CursorIteratorTest.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import org.junit.Rule;
44
import org.junit.Test;
55
import org.junit.rules.TemporaryFolder;
6-
import org.lmdbjava.CursorIterator.KeyVal;
76

87
import java.io.File;
98
import java.io.IOException;
@@ -16,7 +15,6 @@
1615
import static org.lmdbjava.CursorIterator.IteratorType.BACKWARD;
1716
import static org.lmdbjava.CursorIterator.IteratorType.FORWARD;
1817
import static org.lmdbjava.DbiFlags.MDB_CREATE;
19-
import static org.lmdbjava.Env.create;
2018
import static org.lmdbjava.EnvFlags.MDB_NOSUBDIR;
2119
import static org.lmdbjava.PutFlags.MDB_NOOVERWRITE;
2220
import static org.lmdbjava.TestUtils.DB_1;

src/test/java/org/lmdbjava/TutorialTest.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,12 @@
3333
import org.junit.Rule;
3434
import org.junit.Test;
3535
import org.junit.rules.TemporaryFolder;
36-
import org.lmdbjava.CursorIterator.IteratorType;
37-
import org.lmdbjava.CursorIterator.KeyVal;
3836

3937
import static org.lmdbjava.CursorIterator.IteratorType.BACKWARD;
4038
import static org.lmdbjava.CursorIterator.IteratorType.FORWARD;
4139
import static org.lmdbjava.DbiFlags.MDB_CREATE;
4240
import static org.lmdbjava.DbiFlags.MDB_DUPSORT;
43-
import static org.lmdbjava.Env.create;
4441
import static org.lmdbjava.GetOp.MDB_SET;
45-
import static org.lmdbjava.MutableDirectBufferProxy.PROXY_MDB;
4642
import static org.lmdbjava.SeekOp.MDB_FIRST;
4743
import static org.lmdbjava.SeekOp.MDB_LAST;
4844
import static org.lmdbjava.SeekOp.MDB_PREV;

0 commit comments

Comments
 (0)