Mercurial > hg > thermostat-ng > web-gateway
changeset 228:53215157ca8f
Fix order in which mongoexec populate PUT and DELETE metadata
Reviewd-by: jkang
Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2017-August/024499.html
author | Chris Lessard <clessard@redhat.com> |
---|---|
date | Thu, 10 Aug 2017 11:56:46 -0400 |
parents | c3e64deb1f12 |
children | 8e7b37db2ede |
files | common/mongodb/src/main/java/com/redhat/thermostat/gateway/common/mongodb/executor/MongoExecutor.java |
diffstat | 1 files changed, 7 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/common/mongodb/src/main/java/com/redhat/thermostat/gateway/common/mongodb/executor/MongoExecutor.java Thu Aug 10 10:09:40 2017 -0400 +++ b/common/mongodb/src/main/java/com/redhat/thermostat/gateway/common/mongodb/executor/MongoExecutor.java Thu Aug 10 11:56:46 2017 -0400 @@ -47,6 +47,8 @@ import java.util.List; import java.util.Set; +import com.mongodb.client.result.DeleteResult; +import com.mongodb.client.result.UpdateResult; import com.redhat.thermostat.gateway.common.mongodb.ThermostatFields; import org.bson.Document; import org.bson.conversions.Bson; @@ -106,9 +108,9 @@ final Bson bsonQueries = MongoRequestFilters.buildQuery(queries, realms); - collection.updateMany(bsonQueries, fields); + UpdateResult res = collection.updateMany(bsonQueries, fields); - metaDataContainer.setPutReqMatches(collection.count(bsonQueries)); + metaDataContainer.setPutReqMatches(res.getModifiedCount()); return metaDataContainer; } @@ -124,8 +126,8 @@ MongoDataResultContainer metaDataContainer = new MongoDataResultContainer(); if (queries != null && !queries.isEmpty() || realms != null && !realms.isEmpty()) { Bson bsonQueries = MongoRequestFilters.buildQuery(queries, realms); - metaDataContainer.setDeleteReqMatches(collection.count(bsonQueries)); - collection.deleteMany(bsonQueries); + DeleteResult res = collection.deleteMany(bsonQueries); + metaDataContainer.setDeleteReqMatches(res.getDeletedCount()); } else { metaDataContainer.setDeleteReqMatches(collection.count()); collection.drop(); @@ -155,6 +157,7 @@ } collection.insertMany(inputList); + metaDataContainer.setPostReqInsertions(inputList.size()); } return metaDataContainer;