diff --git a/hazelcast/pom.xml b/hazelcast/pom.xml index 6ea2ed783b8f5..251e4c422cd5e 100644 --- a/hazelcast/pom.xml +++ b/hazelcast/pom.xml @@ -484,5 +484,11 @@ 2.1.4 test + + com.fasterxml.jackson.core + jackson-databind + 2.8.8 + test + diff --git a/hazelcast/src/main/java/com/hazelcast/replicatedmap/impl/record/ResultSet.java b/hazelcast/src/main/java/com/hazelcast/replicatedmap/impl/record/ResultSet.java index 19b6bb12b7e21..584af97436dc2 100644 --- a/hazelcast/src/main/java/com/hazelcast/replicatedmap/impl/record/ResultSet.java +++ b/hazelcast/src/main/java/com/hazelcast/replicatedmap/impl/record/ResultSet.java @@ -24,12 +24,12 @@ import java.util.List; import java.util.Map; -public class ResultSet extends AbstractSet> { +public class ResultSet extends AbstractSet { - private final List> entries; + private final List entries; private final IterationType iterationType; - public ResultSet(List> entries, IterationType iterationType) { + public ResultSet(List entries, IterationType iterationType) { this.entries = entries; this.iterationType = iterationType; } @@ -56,7 +56,7 @@ public int size() { private class ResultIterator implements Iterator { - private final Iterator> iterator = entries.iterator(); + private final Iterator iterator = entries.iterator(); @Override public boolean hasNext() { diff --git a/hazelcast/src/test/java/com/hazelcast/map/BasicMapTest.java b/hazelcast/src/test/java/com/hazelcast/map/BasicMapTest.java index f168c52286f64..8fe8b95b4fc60 100644 --- a/hazelcast/src/test/java/com/hazelcast/map/BasicMapTest.java +++ b/hazelcast/src/test/java/com/hazelcast/map/BasicMapTest.java @@ -16,6 +16,7 @@ package com.hazelcast.map; +import com.fasterxml.jackson.databind.ObjectMapper; import com.hazelcast.config.Config; import com.hazelcast.core.EntryAdapter; import com.hazelcast.core.EntryEvent; @@ -24,6 +25,7 @@ import com.hazelcast.core.HazelcastInstance; import com.hazelcast.core.IMap; import com.hazelcast.core.MapEvent; +import com.hazelcast.query.PagingPredicate; import com.hazelcast.query.Predicate; import com.hazelcast.test.AssertTask; import com.hazelcast.test.HazelcastParallelClassRunner; @@ -57,6 +59,7 @@ import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; @@ -1190,6 +1193,26 @@ public void testIfWeCarryRecordVersionInfoToReplicas() { } } + @Test + public void github_11489() throws Exception { + HazelcastInstance hz = createHazelcastInstance(); + IMap test = hz.getMap("test"); + for (int i = 0; i < 1000; i++) { + test.put(i, i); + } + + PagingPredicate pagingPredicate = new PagingPredicate(new Predicate() { + @Override + public boolean apply(Map.Entry mapEntry) { + return true; + } + }, 1000); + + ObjectMapper objectMapper = new ObjectMapper(); + String result = objectMapper.writeValueAsString(test.values(pagingPredicate)); + assertNotNull(result); + } + @Test public void testNullChecks() { final IMap map = getInstance().getMap("testNullChecks"); diff --git a/hazelcast/src/test/java/com/hazelcast/replicatedmap/impl/record/ResultSetTest.java b/hazelcast/src/test/java/com/hazelcast/replicatedmap/impl/record/ResultSetTest.java index 4f04ac85d9cb0..0bc21e17f2297 100644 --- a/hazelcast/src/test/java/com/hazelcast/replicatedmap/impl/record/ResultSetTest.java +++ b/hazelcast/src/test/java/com/hazelcast/replicatedmap/impl/record/ResultSetTest.java @@ -42,46 +42,46 @@ public class ResultSetTest { @Test public void testSize_whenEmpty() { - List> emptyList = Collections.emptyList(); - ResultSet resultSet = new ResultSet(emptyList, IterationType.KEY); + List emptyList = Collections.emptyList(); + ResultSet resultSet = new ResultSet(emptyList, IterationType.KEY); assertEquals(0, resultSet.size()); } @Test public void testSize_whenNull() { - ResultSet resultSet = new ResultSet(null, IterationType.KEY); + ResultSet resultSet = new ResultSet(null, IterationType.KEY); assertEquals(0, resultSet.size()); } @Test public void testSize_whenNotEmpty() { - List> entries = new ArrayList>(); - entries.add(new MapEntrySimple(null, null)); - ResultSet resultSet = new ResultSet(entries, IterationType.KEY); + List entries = new ArrayList(); + entries.add(new MapEntrySimple(null, null)); + ResultSet resultSet = new ResultSet(entries, IterationType.KEY); assertEquals(1, resultSet.size()); } @Test public void testIterator_whenEmpty() { - List> emptyList = Collections.emptyList(); - ResultSet resultSet = new ResultSet(emptyList, IterationType.KEY); + List emptyList = Collections.emptyList(); + ResultSet resultSet = new ResultSet(emptyList, IterationType.KEY); Iterator iterator = resultSet.iterator(); assertFalse(iterator.hasNext()); } @Test public void testIterator_whenNull() { - ResultSet resultSet = new ResultSet(null, IterationType.KEY); + ResultSet resultSet = new ResultSet(null, IterationType.KEY); Iterator iterator = resultSet.iterator(); assertFalse(iterator.hasNext()); } @Test public void testIterator_whenNotEmpty_IterationType_Key() { - List> entries = new ArrayList>(); - MapEntrySimple entry = new MapEntrySimple("key", "value"); + List entries = new ArrayList(); + MapEntrySimple entry = new MapEntrySimple("key", "value"); entries.add(entry); - ResultSet resultSet = new ResultSet(entries, IterationType.KEY); + ResultSet resultSet = new ResultSet(entries, IterationType.KEY); Iterator iterator = resultSet.iterator(); assertTrue(iterator.hasNext()); assertEquals("key", iterator.next()); @@ -89,10 +89,10 @@ public void testIterator_whenNotEmpty_IterationType_Key() { @Test public void testIterator_whenNotEmpty_IterationType_Value() { - List> entries = new ArrayList>(); - MapEntrySimple entry = new MapEntrySimple("key", "value"); + List entries = new ArrayList(); + MapEntrySimple entry = new MapEntrySimple("key", "value"); entries.add(entry); - ResultSet resultSet = new ResultSet(entries, IterationType.VALUE); + ResultSet resultSet = new ResultSet(entries, IterationType.VALUE); Iterator iterator = resultSet.iterator(); assertTrue(iterator.hasNext()); assertEquals("value", iterator.next()); @@ -100,13 +100,13 @@ public void testIterator_whenNotEmpty_IterationType_Value() { @Test public void testIterator_whenNotEmpty_IterationType_Entry() { - List> entries = new ArrayList>(); - MapEntrySimple entry = new MapEntrySimple("key", "value"); + List entries = new ArrayList(); + MapEntrySimple entry = new MapEntrySimple("key", "value"); entries.add(entry); - ResultSet resultSet = new ResultSet(entries, IterationType.ENTRY); - Iterator> iterator = resultSet.iterator(); + ResultSet resultSet = new ResultSet(entries, IterationType.ENTRY); + Iterator iterator = resultSet.iterator(); assertTrue(iterator.hasNext()); - Map.Entry entryFromIterator = iterator.next(); + Map.Entry entryFromIterator = iterator.next(); assertEquals("key", entryFromIterator.getKey()); assertEquals("value", entryFromIterator.getValue()); }