aboutsummaryrefslogtreecommitdiff
path: root/db/uobject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'db/uobject.cpp')
-rw-r--r--db/uobject.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/db/uobject.cpp b/db/uobject.cpp
new file mode 100644
index 0000000..769631e
--- /dev/null
+++ b/db/uobject.cpp
@@ -0,0 +1,16 @@
+#include "uobject.h"
+
+std::string uobject::retrieveAll(std::string collection, struct json_object* jsonObjects) {
+
+ auto conn = mongo.get_connection();
+
+ auto coll = (*conn)[config["mongo_db"]][collection];
+
+ auto cursor = coll.find({});
+
+ for (auto&& doc : cursor) {
+ json_object_array_add(jsonObjects, json_tokener_parse(bsoncxx::to_json(doc).c_str()));
+ }
+
+ return json_object_to_json_string_ext(jsonObjects, JSON_C_TO_STRING_SPACED | JSON_C_TO_STRING_PRETTY);
+}