diff options
| author | bob <bcz@cs.brown.edu> | 2019-04-09 13:40:40 -0400 |
|---|---|---|
| committer | bob <bcz@cs.brown.edu> | 2019-04-09 13:40:40 -0400 |
| commit | 64c8a689c142c82c4dd3ed074e5e6981ea8ea17c (patch) | |
| tree | 5edcb9d04ad2983bf63e91260c08ca9607d5a17a /src/client/northstar/manager | |
| parent | 37763de22835e3a4a7ad995eb089d23054109c3d (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.ts | 22 |
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", |
