mirror of
https://github.com/apache/superset.git
synced 2024-09-19 20:19:37 -04:00
feat(connection): allow developer to get supersetclient instance (#552)
This commit is contained in:
parent
bdb0f50874
commit
0a48d6e774
@ -3,12 +3,12 @@ import { ClientConfig, RequestConfig, SupersetClientInterface } from './types';
|
||||
|
||||
let singletonClient: SupersetClientClass | undefined;
|
||||
|
||||
function getInstance(maybeClient: SupersetClientClass | undefined): SupersetClientClass {
|
||||
if (!maybeClient) {
|
||||
function getInstance(): SupersetClientClass {
|
||||
if (!singletonClient) {
|
||||
throw new Error('You must call SupersetClient.configure(...) before calling other methods');
|
||||
}
|
||||
|
||||
return maybeClient;
|
||||
return singletonClient;
|
||||
}
|
||||
|
||||
const SupersetClient: SupersetClientInterface = {
|
||||
@ -17,15 +17,15 @@ const SupersetClient: SupersetClientInterface = {
|
||||
|
||||
return singletonClient;
|
||||
},
|
||||
delete: (request: RequestConfig) => getInstance(singletonClient).delete(request),
|
||||
get: (request: RequestConfig) => getInstance(singletonClient).get(request),
|
||||
delete: (request: RequestConfig) => getInstance().delete(request),
|
||||
get: (request: RequestConfig) => getInstance().get(request),
|
||||
getInstance,
|
||||
init: (force?: boolean) => getInstance(singletonClient).init(force),
|
||||
isAuthenticated: () => getInstance(singletonClient).isAuthenticated(),
|
||||
post: (request: RequestConfig) => getInstance(singletonClient).post(request),
|
||||
put: (request: RequestConfig) => getInstance(singletonClient).put(request),
|
||||
reAuthenticate: () => getInstance(singletonClient).init(/* force = */ true),
|
||||
request: (request: RequestConfig) => getInstance(singletonClient).request(request),
|
||||
init: (force?: boolean) => getInstance().init(force),
|
||||
isAuthenticated: () => getInstance().isAuthenticated(),
|
||||
post: (request: RequestConfig) => getInstance().post(request),
|
||||
put: (request: RequestConfig) => getInstance().put(request),
|
||||
reAuthenticate: () => getInstance().init(/* force = */ true),
|
||||
request: (request: RequestConfig) => getInstance().request(request),
|
||||
reset: () => {
|
||||
singletonClient = undefined;
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user