diff --git a/couchbase-sdk/pom.xml b/couchbase-sdk/pom.xml
index d78ceb8933..819c53b038 100644
--- a/couchbase-sdk/pom.xml
+++ b/couchbase-sdk/pom.xml
@@ -28,12 +28,6 @@
jackson-databind
${jackson-version}
-
- io.vavr
- vavr
- ${vavr-version}
-
-
@@ -82,7 +76,6 @@
2.5.0
4.3.5.RELEASE
3.5
- 0.9.0
2.9.1
diff --git a/couchbase-sdk/src/main/java/com/baeldung/couchbase/n1ql/CodeSnippets.java b/couchbase-sdk/src/main/java/com/baeldung/couchbase/n1ql/CodeSnippets.java
index 999dcd897f..9e9f204263 100644
--- a/couchbase-sdk/src/main/java/com/baeldung/couchbase/n1ql/CodeSnippets.java
+++ b/couchbase-sdk/src/main/java/com/baeldung/couchbase/n1ql/CodeSnippets.java
@@ -3,18 +3,26 @@ package com.baeldung.couchbase.n1ql;
import com.couchbase.client.java.query.N1qlQueryResult;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
-import io.vavr.control.Try;
-
+import java.io.IOException;
import java.util.List;
+import java.util.Objects;
import java.util.stream.Collectors;
public class CodeSnippets {
+ private static ObjectMapper objectMapper = new ObjectMapper();
+
public static List extractJsonResult(N1qlQueryResult result) {
- ObjectMapper objectMapper = new ObjectMapper();
return result.allRows().stream()
- .map(row -> Try.of(() -> objectMapper.readTree(row.value().toString()))
- .getOrNull())
+ .map(row -> {
+ try {
+ return objectMapper.readTree(row.value().toString());
+ }catch (IOException e) {
+ e.printStackTrace();
+ return null;
+ }
+ })
+ .filter(Objects::nonNull)
.collect(Collectors.toList());
}
diff --git a/couchbase-sdk/src/test/java/com/baeldung/couchbase/n1ql/N1QLIntegrationTest.java b/couchbase-sdk/src/test/java/com/baeldung/couchbase/n1ql/N1QLIntegrationTest.java
index d05b107098..8112d7d222 100644
--- a/couchbase-sdk/src/test/java/com/baeldung/couchbase/n1ql/N1QLIntegrationTest.java
+++ b/couchbase-sdk/src/test/java/com/baeldung/couchbase/n1ql/N1QLIntegrationTest.java
@@ -1,9 +1,7 @@
package com.baeldung.couchbase.n1ql;
-import com.baeldung.couchbase.n1ql.IntegrationTestConfig;
import com.couchbase.client.java.Bucket;
import com.couchbase.client.java.Cluster;
-import com.couchbase.client.java.CouchbaseCluster;
import com.couchbase.client.java.document.JsonDocument;
import com.couchbase.client.java.document.json.JsonArray;
import com.couchbase.client.java.document.json.JsonObject;
@@ -12,30 +10,24 @@ import com.couchbase.client.java.query.N1qlQueryResult;
import com.couchbase.client.java.query.N1qlQueryRow;
import com.couchbase.client.java.query.Statement;
import com.fasterxml.jackson.databind.JsonNode;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.ComponentScan;
-import org.springframework.context.annotation.Configuration;
import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.TestExecutionListeners;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.test.context.support.DependencyInjectionTestExecutionListener;
import rx.Observable;
-import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
+import java.util.stream.Collectors;
+import java.util.stream.IntStream;
+import java.util.stream.Stream;
import static com.baeldung.couchbase.n1ql.CodeSnippets.extractJsonResult;
import static com.couchbase.client.java.query.Select.select;
-import static com.couchbase.client.java.query.dsl.Expression.i;
-import static com.couchbase.client.java.query.dsl.Expression.s;
-import static com.couchbase.client.java.query.dsl.Expression.x;
-import static org.junit.Assert.*;
+import static com.couchbase.client.java.query.dsl.Expression.*;
+import static org.junit.Assert.assertNotNull;
+
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = { IntegrationTestConfig.class })
@@ -190,23 +182,24 @@ public class N1QLIntegrationTest {
@Test
public void givenDocuments_whenBatchInsert_thenResult() {
Bucket bucket = bucketFactory.getTravelSampleBucket();
- int docsToCreate = 10;
- List documents = new ArrayList<>();
- for (int i = 5; i < docsToCreate; i++) {
+
+ List documents = IntStream.rangeClosed(0,10)
+ .mapToObj( i -> {
JsonObject content = JsonObject.create()
- .put("id", i)
- .put("type", "airline")
- .put("name", "Sample Airline " + i);
- documents.add(JsonDocument.create("cust_" + i, content));
- }
+ .put("id", i)
+ .put("type", "airline")
+ .put("name", "Sample Airline " + i);
+ return JsonDocument.create("cust_" + i, content);
+ })
+ .collect(Collectors.toList());
List r5 = Observable
- .from(documents)
- .flatMap(doc -> bucket.async().insert(doc))
- .toList()
- .last()
- .toBlocking()
- .single();
+ .from(documents)
+ .flatMap(doc -> bucket.async().insert(doc))
+ .toList()
+ .last()
+ .toBlocking()
+ .single();
r5.forEach(System.out::println);
}