DATACOUCH-246 - Projections support for query derivation.

Used the result processor projecting information to just fetch the selected fields and again to post process results to projection object/interfaces.

Added test for projection using DTO.

Original pull request: #122.
This commit is contained in:
Subhashni Balakrishnan
2016-09-23 15:39:59 -07:00
committed by Oliver Gierke
parent c8324caf7f
commit ce356f827f
12 changed files with 310 additions and 35 deletions

View File

@@ -95,7 +95,7 @@ public class CouchbaseTemplateTests {
String id = "beers:awesome-stout";
String name = "The Awesome Stout";
boolean active = false;
Beer beer = new Beer(id).setName(name).setActive(active);
Beer beer = new Beer(id, name, active, "");
template.save(beer);
RawJsonDocument resultDoc = client.get(id, RawJsonDocument.class);
@@ -163,7 +163,7 @@ public class CouchbaseTemplateTests {
@Test
public void removeDocument() {
String id = "beers:to-delete-stout";
Beer beer = new Beer(id);
Beer beer = new Beer(id, "", false, "");
template.save(beer);
Object result = client.get(id);
@@ -208,7 +208,7 @@ public class CouchbaseTemplateTests {
String id = "beers:findme-stout";
String name = "The Findme Stout";
boolean active = true;
Beer beer = new Beer(id).setName(name).setActive(active);
Beer beer = new Beer(id, name, active, "");
template.save(beer);
Beer found = template.findById(id, Beer.class);

View File

@@ -45,7 +45,7 @@ public class CouchbaseTemplateViewListener extends DependencyInjectionTestExecut
CouchbaseTemplate template = new CouchbaseTemplate(clusterInfo, client);
for (int i = 0; i < 100; i++) {
Beer b = new Beer("testbeer-" + i).setName("MyBeer " + i).setActive(true);
Beer b = new Beer("testbeer-" + i, "MyBeer" + i, true, "");
template.save(b);
}
}

View File

@@ -59,7 +59,7 @@ public class TypeKeyTests {
String id = "beers:awesome-stout";
String name = "The Awesome Stout";
boolean active = false;
Beer beer = new Beer(id).setName(name).setActive(active);
Beer beer = new Beer(id, name, active, "");
template.save(beer);
RawJsonDocument resultDoc = client.get(id, RawJsonDocument.class);