aboutsummaryrefslogtreecommitdiff
path: root/src/client/northstar/manager
diff options
context:
space:
mode:
authorbob <bcz@cs.brown.edu>2019-04-09 13:40:40 -0400
committerbob <bcz@cs.brown.edu>2019-04-09 13:40:40 -0400
commit64c8a689c142c82c4dd3ed074e5e6981ea8ea17c (patch)
tree5edcb9d04ad2983bf63e91260c08ca9607d5a17a /src/client/northstar/manager
parent37763de22835e3a4a7ad995eb089d23054109c3d (diff)
added ability to load a new database for Northstar
Diffstat (limited to 'src/client/northstar/manager')
-rw-r--r--src/client/northstar/manager/Gateway.ts22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/client/northstar/manager/Gateway.ts b/src/client/northstar/manager/Gateway.ts
index 1c8d3fd73..8f3b6b11c 100644
--- a/src/client/northstar/manager/Gateway.ts
+++ b/src/client/northstar/manager/Gateway.ts
@@ -23,6 +23,17 @@ export class Gateway {
}
}
+ public async GetSchema(dbName: string): Promise<Catalog> {
+ try {
+ const json = await this.MakeGetRequest("schema", undefined, dbName);
+ const cat = Catalog.fromJS(json);
+ return cat;
+ }
+ catch (error) {
+ throw new Error("can not reach northstar's backend");
+ }
+ }
+
public async ClearCatalog(): Promise<void> {
try {
const json = await this.MakePostJsonRequest("Datamart/ClearAllAugmentations", {});
@@ -133,8 +144,15 @@ export class Gateway {
});
}
- public async MakeGetRequest(endpoint: string, signal?: AbortSignal): Promise<any> {
- const url = Gateway.ConstructUrl(endpoint);
+ public async MakeGetRequest(endpoint: string, signal?: AbortSignal, data?: any): Promise<any> {
+ let url = !data ? Gateway.ConstructUrl(endpoint) :
+ (() => {
+ let newUrl = new URL(Gateway.ConstructUrl(endpoint));
+ newUrl.searchParams.append("data", data);
+ return Gateway.ConstructUrl(endpoint) + newUrl.search;
+ return newUrl as any;
+ })();
+
const response = await fetch(url,
{
redirect: "follow",