MCPcopy Create free account
hub / github.com/CloudBoost/cloudboost / find

Function find

databases/mongo.js:218–383  ·  view source on GitHub ↗
(appId, collectionName, query, select, sort, limit, skip, accessList, isMasterKey)

Source from the content-addressed store, hash-verified

216 },
217
218 find(appId, collectionName, query, select, sort, limit, skip, accessList, isMasterKey) {
219 const deferred = q.defer();
220 try {
221 if (config.mongoDisconnected) {
222 deferred.reject('Database Not Connected');
223 return deferred.promise;
224 }
225
226 const collection = config.mongoClient.db(appId).collection(mongoUtil.collection.getId(appId, collectionName));
227 let include = [];
228 /* query for expires */
229
230 if (!query.$or) {
231 query.$or = [
232 {
233 expires: null,
234 }, {
235 expires: {
236 $gte: new Date(),
237 },
238 },
239 ];
240 } else {
241 oldQuery = query.$or;
242 if (oldQuery[0].$include) {
243 if (oldQuery[0].$include.length > 0) {
244 include = include.concat(oldQuery[0].$include);
245 }
246 delete oldQuery[0].$include;
247 delete oldQuery[0].$includeList;
248 }
249 if (oldQuery[1]) {
250 if (oldQuery[1].$include) {
251 if (oldQuery[1].$include.length > 0) {
252 include = include.concat(oldQuery[1].$include);
253 }
254 delete oldQuery[1].$include;
255 delete oldQuery[1].$includeList;
256 }
257 }
258 query.$and = [
259 {
260 $or: oldQuery,
261 }, {
262 $or: [
263 {
264 expires: null,
265 }, {
266 expires: {
267 $gte: new Date().getTime(),
268 },
269 },
270 ],
271 },
272 ];
273 delete query.$or;
274 }
275

Callers

nothing calls this directly

Calls 3

_sanitizeQueryFunction · 0.85
_deserializeFunction · 0.85
findMethod · 0.80

Tested by

no test coverage detected