Skip to content

Commit 02274e7

Browse files
committed
Support 'before' RSM for replies
1 parent 6d01d4f commit 02274e7

File tree

2 files changed

+35
-1
lines changed

2 files changed

+35
-1
lines changed

src/main/java/org/buddycloud/channelserver/db/jdbc/JDBCNodeStore.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1181,7 +1181,6 @@ public ClosableIteratorImpl<NodeItem> getNodeItemReplies(String nodeId, String i
11811181
if (null != rsmItem) {
11821182
since = getNodeItem(nodeId, rsmItem).getUpdated();
11831183
}
1184-
11851184
String query = dialect.selectItemReplies()
11861185
.replace("%beforeAfter%", afterReplacement);
11871186

src/test/java/org/buddycloud/channelserver/db/jdbc/JDBCNodeStoreTest.java

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -435,6 +435,41 @@ public void canGetItemRepliesWithResultSetManagement() throws Exception {
435435
assertSameNodeItem(itemsResult.get(1), testItem1);
436436
}
437437

438+
@Test
439+
public void canGetItemRepliesWithResultSetManagementPagingBackwards() throws Exception {
440+
441+
dbTester.loadData("node_1");
442+
NodeItem testItem1 = new NodeItemImpl(TEST_SERVER1_NODE1_ID, "a6",
443+
new Date(), "<entry>payload</entry>", "a5", new Date());
444+
Thread.sleep(100);
445+
NodeItem testItem2 = new NodeItemImpl(TEST_SERVER1_NODE1_ID, "a7",
446+
new Date(), "<entry>payload</entry>", "a5", new Date());
447+
Thread.sleep(100);
448+
NodeItem testItem3 = new NodeItemImpl(TEST_SERVER1_NODE1_ID, "a8",
449+
new Date(), "<entry>payload</entry>", "a5", new Date());
450+
Thread.sleep(100);
451+
NodeItem testItem4 = new NodeItemImpl(TEST_SERVER1_NODE1_ID, "a9",
452+
new Date(), "<entry>payload</entry>", "/full-node-item-id-ref/a5", new Date());
453+
store.addNodeItem(testItem1);
454+
store.addNodeItem(testItem2);
455+
store.addNodeItem(testItem3);
456+
store.addNodeItem(testItem4);
457+
458+
ClosableIteratorImpl<NodeItem> items = store.getNodeItemReplies(
459+
TEST_SERVER1_NODE1_ID, "a5", "a8", false, 4);
460+
461+
int count = 0;
462+
ArrayList<NodeItem> itemsResult = new ArrayList<NodeItem>();
463+
while (items.hasNext()) {
464+
++count;
465+
itemsResult.add(items.next());
466+
467+
}
468+
assertEquals(2, count);
469+
assertSameNodeItem(itemsResult.get(0), testItem1);
470+
assertSameNodeItem(itemsResult.get(1), testItem2);
471+
}
472+
438473
@Test
439474
public void canGetCountOfItemReplies() throws Exception {
440475
dbTester.loadData("node_1");

0 commit comments

Comments
 (0)