diff options
author | Sam Wilkins <samwilkins333@gmail.com> | 2019-07-09 14:34:07 -0400 |
---|---|---|
committer | Sam Wilkins <samwilkins333@gmail.com> | 2019-07-09 14:34:07 -0400 |
commit | 68a433e689345b2fdd6279d7a80c5cf77cace1c3 (patch) | |
tree | 782181ba288c7035efac476764e67a6449f762ff /src/server/database.ts | |
parent | 9d9c16939bb296a9deb38bc34cbea9870aee4f76 (diff) | |
parent | fb1e2078dc0e0cdc33f6037cd3c3e18ffded413e (diff) |
Merge branch 'master' of https://github.com/browngraphicslab/Dash-Web into import
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))); }); } } |