25 #include <IceUtil/UUID.h>
27 #include <mongo/client/dbclient.h>
36 iceId.name = IceUtil::generateUUID();
49 std::unique_lock lock(dbConnectionMutex);
50 return dbConn->count(ns);
56 std::unique_lock lock(dbConnectionMutex);
57 return dbConn->findByMongoId(ns,
id);
62 const std::string& fieldValue,
63 const Ice::Current&
c)
65 std::unique_lock lock(dbConnectionMutex);
66 return dbConn->findByFieldValue(ns, fieldName, fieldValue);
71 const std::string& fieldValue,
72 const Ice::Current&
c)
74 std::unique_lock lock(dbConnectionMutex);
75 return dbConn->findOneByFieldValue(ns, fieldName, fieldValue);
80 const NameList& fieldValueList,
81 const Ice::Current&
c)
83 std::unique_lock lock(dbConnectionMutex);
84 return dbConn->findByFieldValueList(ns, fieldName, fieldValueList);
90 std::unique_lock lock(dbConnectionMutex);
91 return dbConn->findOneByQuery(ns, query);
97 std::unique_lock lock(dbConnectionMutex);
98 return dbConn->findByQuery(ns, query);
103 const std::string& where,
106 std::unique_lock lock(dbConnectionMutex);
107 return dbConn->findByQuery(ns, query, where);
113 std::unique_lock lock(dbConnectionMutex);
114 return dbConn->findAll(ns);
120 std::unique_lock lock(dbConnectionMutex);
121 return dbConn->findAllUniqueByFieldName(ns, fieldName);
127 std::unique_lock lock(dbConnectionMutex);
128 return dbConn->findAllIds(ns);
134 std::unique_lock lock(dbConnectionMutex);
135 return dbConn->findAllFieldValues(ns, fieldName);
141 std::unique_lock lock(dbConnectionMutex);
142 return dbConn->insert(ns, obj);
145 std::vector<std::string>
148 std::unique_lock lock(dbConnectionMutex);
149 return dbConn->insertList(ns, objectList);
155 std::unique_lock lock(dbConnectionMutex);
156 return dbConn->update(ns, obj,
"_id");
161 const std::string& keyField,
162 const ::Ice::Current&
c)
164 std::unique_lock lock(dbConnectionMutex);
165 return dbConn->update(ns, obj, keyField);
170 const DBStorableData& obj,
171 const ::Ice::Current&
c)
173 return dbConn->updateByQuery(ns, query, mongo::fromjson(obj.JSON));
179 std::unique_lock lock(dbConnectionMutex);
180 return dbConn->insert(ns, obj,
true);
185 const std::string& keyField,
186 const Ice::Current&
c)
188 std::unique_lock lock(dbConnectionMutex);
189 return dbConn->update(ns, obj, keyField,
true);
195 std::unique_lock lock(dbConnectionMutex);
196 return dbConn->removeByMongoId(ns,
id);
201 const std::string& fieldValue,
202 const Ice::Current&
c)
204 std::unique_lock lock(dbConnectionMutex);
205 return dbConn->removeByFieldValue(ns, fieldName, fieldValue);
211 std::unique_lock lock(dbConnectionMutex);
212 return dbConn->removeByQuery(ns, query);
218 std::unique_lock lock(dbConnectionMutex);
219 return dbConn->clearCollection(ns);
225 std::unique_lock lock(dbConnectionMutex);
226 return dbConn->ensureIndex(ns, fieldName, unique);