smartcls/ts/index.ts

19 lines
480 B
TypeScript
Raw Normal View History

2018-03-04 23:57:41 +00:00
import * as plugins from './smartcls.plugins';
2017-10-12 09:19:54 +00:00
2020-07-20 07:39:47 +00:00
export class SmartCls {
private asyncLocalStorage = new plugins.AsyncLocalStorage();
public run(runFunc: () => any) {
this.asyncLocalStorage.run({}, runFunc);
}
public set(keyArg: string, valueArg: any) {
const store: any = this.asyncLocalStorage.getStore();
store[keyArg] = valueArg;
}
public get(keyArg: string) {
const store: any = this.asyncLocalStorage.getStore();
return store[keyArg];
}
}