# Class DIContext
ClassModule | import { DIContext } from "@tsed/di" |
---|---|
Source | /packages/di/src/types/node/domain/DIContext.ts |
# Overview
class DIContext {
#private;
opts: DIContextOptions;
[x: string]: any;
constructor(opts: DIContextOptions);
get <span class="token function">logger</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/di/types/node/domain/ContextLogger.html"><span class="token">ContextLogger</span></a><span class="token punctuation">;</span>
get <span class="token function">id</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">string</span><span class="token punctuation">;</span>
get <span class="token function">dateStart</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">Date</span><span class="token punctuation">;</span>
get <span class="token function">injector</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/di/types/common/services/InjectorService.html"><span class="token">InjectorService</span></a><span class="token punctuation">;</span>
get <span class="token function">env</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">;</span>
get <span class="token function">container</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/di/types/common/domain/LocalsContainer.html"><span class="token">LocalsContainer</span></a><span class="token punctuation">;</span>
<span class="token function">destroy</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> Promise<<span class="token keyword">any</span>><span class="token punctuation">;</span>
<span class="token function">emit</span><span class="token punctuation">(</span>eventName<span class="token punctuation">:</span> <span class="token keyword">string</span><span class="token punctuation">,</span> ...args<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">:</span> Promise<<span class="token keyword">void</span>><span class="token punctuation">;</span>
<span class="token function">runInContext</span><span class="token punctuation">(</span>next<span class="token punctuation">:</span> Function<span class="token punctuation">)</span><span class="token punctuation">:</span> Promise<<span class="token keyword">any</span>><span class="token punctuation">;</span>
cache<<a href="/api/di/types/common/decorators/Value.html"><span class="token">Value</span></a><span class="token punctuation"> = </span><span class="token keyword">any</span>><span class="token punctuation">(</span>key<span class="token punctuation">:</span> <span class="token keyword">string</span><span class="token punctuation">,</span> cb<span class="token punctuation">:</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> => <a href="/api/di/types/common/decorators/Value.html"><span class="token">Value</span></a><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/di/types/common/decorators/Value.html"><span class="token">Value</span></a><span class="token punctuation">;</span>
cacheAsync<<a href="/api/di/types/common/decorators/Value.html"><span class="token">Value</span></a><span class="token punctuation"> = </span><span class="token keyword">any</span>><span class="token punctuation">(</span>key<span class="token punctuation">:</span> <span class="token keyword">string</span><span class="token punctuation">,</span> cb<span class="token punctuation">:</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> => Promise<<a href="/api/di/types/common/decorators/Value.html"><span class="token">Value</span></a>><span class="token punctuation">)</span><span class="token punctuation">:</span> Promise<<a href="/api/di/types/common/decorators/Value.html"><span class="token">Value</span></a>><span class="token punctuation">;</span>
<span class="token function">delete</span><span class="token punctuation">(</span>key<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">boolean</span><span class="token punctuation">;</span>
get<T<span class="token punctuation"> = </span><span class="token keyword">any</span>><span class="token punctuation">(</span>key<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">)</span><span class="token punctuation">:</span> T<span class="token punctuation">;</span>
<span class="token function">has</span><span class="token punctuation">(</span>key<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">boolean</span><span class="token punctuation">;</span>
<span class="token function">set</span><span class="token punctuation">(</span>key<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">,</span> value<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">)</span><span class="token punctuation">:</span> this<span class="token punctuation">;</span>
}
# Members
#private;
opts: DIContextOptions;
[x: string]: any;
get logger(): ContextLogger;
Logger attached to the context request.
get id(): string;
Request id generated by
TIP
By default Ts.ED generate uuid like that uuidv4().replace(/-/gi, ""))
.
Dash are removed to simplify tracking logs in Kibana
TIP
Request id can by customized by changing the server configuration.
@Configuration({
logger: {
reqIdBuilder: createUniqId // give your own id generator function
}
})
class Server {
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
:::
get dateStart(): Date;
get injector(): InjectorService;
get env(): any;
get container(): LocalsContainer;
The request container used by the Ts.ED DI. It contains all services annotated with @Scope(ProviderScope.REQUEST)
destroy(): Promise<any>;
emit(eventName: string, ...args: any[]): Promise<void>;
runInContext(next: Function): Promise<any>;
delete(key: any): boolean;
get<T = any>(key: any): T;
has(key: any): boolean;
set(key: any, value: any): this;