diff options
author | Tyler Schicke <tyler_schicke@brown.edu> | 2019-07-09 13:53:09 -0400 |
---|---|---|
committer | Tyler Schicke <tyler_schicke@brown.edu> | 2019-07-09 13:53:09 -0400 |
commit | 3dfd1de5f4d0c72dfbc9b981b8a27f98bbe7dbf2 (patch) | |
tree | 934630f6b27beeb4b032ba892c180cc1d4915c27 /src/server/database.ts | |
parent | 4944abd854e672f62926089f3619b92dcaf3b2ca (diff) |
Added Search to GC and cleaned up some stuff
Diffstat (limited to 'src/server/database.ts')
-rw-r--r-- | src/server/database.ts | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/server/database.ts b/src/server/database.ts index a17447629..29a8ffafa 100644 --- a/src/server/database.ts +++ b/src/server/database.ts @@ -126,12 +126,16 @@ export class Database { } } - public query(query: any, collectionName = "newDocuments"): Promise<mongodb.Cursor> { + public query(query: { [key: string]: any }, projection?: { [key: string]: 0 | 1 }, collectionName = "newDocuments"): Promise<mongodb.Cursor> { if (this.db) { - return Promise.resolve<mongodb.Cursor>(this.db.collection(collectionName).find(query)); + let cursor = this.db.collection(collectionName).find(query); + if (projection) { + cursor = cursor.project(projection); + } + return Promise.resolve<mongodb.Cursor>(cursor); } else { return new Promise<mongodb.Cursor>(res => { - this.onConnect.push(() => res(this.query(query, collectionName))); + this.onConnect.push(() => res(this.query(query, projection, collectionName))); }); } } |