diff --git a/spring-data-mongodb/pom.xml b/spring-data-mongodb/pom.xml
index 7dc8d1949..e82d4cc68 100644
--- a/spring-data-mongodb/pom.xml
+++ b/spring-data-mongodb/pom.xml
@@ -12,7 +12,7 @@
Spring Data MongoDB
- 2.6.5
+ 2.7.1
2.2.4
diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapreduce/GroupByResults.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapreduce/GroupByResults.java
index 577f79133..4289e8afd 100644
--- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapreduce/GroupByResults.java
+++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapreduce/GroupByResults.java
@@ -39,6 +39,8 @@ public class GroupByResults implements Iterable {
private int keys;
+ private String serverUsed;
+
public GroupByResults(List mappedResults, DBObject rawResults) {
Assert.notNull(mappedResults);
Assert.notNull(rawResults);
@@ -46,6 +48,7 @@ public class GroupByResults implements Iterable {
this.rawResults = rawResults;
parseKeys();
parseCount();
+ parseServerUsed();
}
public double getCount() {
@@ -55,6 +58,10 @@ public class GroupByResults implements Iterable {
public int getKeys() {
return keys;
}
+
+ public String getServerUsed() {
+ return serverUsed;
+ }
public Iterator iterator() {
return mappedResults.iterator();
@@ -65,18 +72,25 @@ public class GroupByResults implements Iterable {
}
private void parseCount() {
- Object object = (Object) rawResults.get("count");
+ Object object = rawResults.get("count");
if (object instanceof Double) {
- count = (Double)object;
+ count = (Double) object;
}
}
private void parseKeys() {
- Object object = (Object) rawResults.get("keys");
+ Object object = rawResults.get("keys");
if (object instanceof Integer) {
- keys = (Integer)object;
+ keys = (Integer) object;
}
}
+ private void parseServerUsed() {
+ //"serverUsed" : "127.0.0.1:27017"
+ Object object = rawResults.get("serverUsed");
+ if (object instanceof String) {
+ serverUsed = (String) object;
+ }
+ }
}
diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapreduce/GroupByTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapreduce/GroupByTests.java
index 9be6a8a1d..c1c112bcb 100644
--- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapreduce/GroupByTests.java
+++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapreduce/GroupByTests.java
@@ -161,7 +161,7 @@ public class GroupByTests {
private void assertMapReduceResults(GroupByResults results) {
DBObject dboRawResults = results.getRawResults();
- String expected = "{ \"retval\" : [ { \"x\" : 1.0 , \"count\" : 2.0} , { \"x\" : 2.0 , \"count\" : 1.0} , { \"x\" : 3.0 , \"count\" : 3.0}] , \"count\" : 6.0 , \"keys\" : 3 , \"ok\" : 1.0}";
+ String expected = "{ \"serverUsed\" : \"127.0.0.1:27017\" , \"retval\" : [ { \"x\" : 1.0 , \"count\" : 2.0} , { \"x\" : 2.0 , \"count\" : 1.0} , { \"x\" : 3.0 , \"count\" : 3.0}] , \"count\" : 6.0 , \"keys\" : 3 , \"ok\" : 1.0}";
Assert.assertEquals(expected, dboRawResults.toString());
int numResults = 0;