aboutsummaryrefslogtreecommitdiff
path: root/src/server/Search.ts
diff options
context:
space:
mode:
authormonikahedman <monika_hedman@brown.edu>2019-07-14 17:08:03 -0400
committermonikahedman <monika_hedman@brown.edu>2019-07-14 17:08:03 -0400
commit7f011d633021fece4d071b741f8571440236ea71 (patch)
treece2e7dc7c29a2a2ebab57efbc8001b2d753819d8 /src/server/Search.ts
parent2575564d70828820521074455383e940d521cca8 (diff)
parent7d9e29690956327d1ed9981cd2882d08b72b5c86 (diff)
pulled from master
Diffstat (limited to 'src/server/Search.ts')
-rw-r--r--src/server/Search.ts21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/server/Search.ts b/src/server/Search.ts
index 5a22f7da7..ffba4ea8e 100644
--- a/src/server/Search.ts
+++ b/src/server/Search.ts
@@ -48,4 +48,25 @@ export class Search {
});
} catch { }
}
+
+ public deleteDocuments(docs: string[]) {
+ const promises: rp.RequestPromise[] = [];
+ const nToDelete = 1000;
+ let index = 0;
+ while (index < docs.length) {
+ const count = Math.min(docs.length - index, nToDelete);
+ const deleteIds = docs.slice(index, index + count);
+ index += count;
+ promises.push(rp.post(this.url + "dash/update", {
+ body: {
+ delete: {
+ query: deleteIds.map(id => `id:"${id}"`).join(" ")
+ }
+ },
+ json: true
+ }));
+ }
+
+ return Promise.all(promises);
+ }
} \ No newline at end of file