diff options
Diffstat (limited to 'src/zenutil')
| -rw-r--r-- | src/zenutil/cache/cacherequests.cpp | 21 | ||||
| -rw-r--r-- | src/zenutil/include/zenutil/cache/cacherequests.h | 3 |
2 files changed, 22 insertions, 2 deletions
diff --git a/src/zenutil/cache/cacherequests.cpp b/src/zenutil/cache/cacherequests.cpp index 7c6f493f2..b8169182d 100644 --- a/src/zenutil/cache/cacherequests.cpp +++ b/src/zenutil/cache/cacherequests.cpp @@ -313,6 +313,17 @@ namespace cacherequests { Success.push_back(It.AsBool()); It++; } + + CbArrayView DetailsArray = Package.GetObject()["Details"].AsArrayView(); + if (DetailsArray) + { + It = DetailsArray.CreateViewIterator(); + while (It.HasValue()) + { + Details.push_back(It.AsObjectView()); + It++; + } + } return true; } @@ -325,7 +336,15 @@ namespace cacherequests { ResponseObject.AddBool(Value); } ResponseObject.EndArray(); - + if (!Details.empty()) + { + ResponseObject.BeginArray("Details"); + for (CbObjectView Value : Details) + { + ResponseObject.AddObject(Value); + } + ResponseObject.EndArray(); + } OutPackage.SetObject(ResponseObject.Save()); return true; } diff --git a/src/zenutil/include/zenutil/cache/cacherequests.h b/src/zenutil/include/zenutil/cache/cacherequests.h index fbf3e08cc..2842e29f0 100644 --- a/src/zenutil/include/zenutil/cache/cacherequests.h +++ b/src/zenutil/include/zenutil/cache/cacherequests.h @@ -85,7 +85,8 @@ namespace cacherequests { struct PutCacheRecordsResult { - std::vector<bool> Success; + std::vector<bool> Success; + std::vector<CbObjectView> Details; bool Parse(const CbPackage& Package); bool Format(CbPackage& OutPackage) const; |