MCPcopy Index your code
hub / github.com/loopbackio/loopback-next / main

Function main

examples/context/src/context-chain.ts:15–45  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

13}
14
15export async function main() {
16 const appCtx = new Context('app');
17
18 // Create a context per request, with `appCtx` as the parent
19 const requestCtx = new Context(appCtx, 'request');
20
21 const greeterBinding = appCtx
22 .bind('services.Greeter')
23 .toClass(Greeter)
24 .tag('greeter');
25
26 // Set prefix to `app` at app context level
27 appCtx.bind('prefix').to(appCtx.name);
28
29 // Get a greeter from request context
30 let greeter = await requestCtx.get<Greeter>(greeterBinding.key);
31
32 // Inherit `prefix` from app context
33 console.log(greeter.greet('John'));
34
35 // Set `prefix` at request context level
36 requestCtx.bind('prefix').to(requestCtx.name);
37 greeter = await requestCtx.get<Greeter>(greeterBinding.key);
38 // Now the request context prefix is used
39 console.log(greeter.greet('John'));
40
41 // Get a greeter from app context
42 greeter = await appCtx.get<Greeter>(greeterBinding.key);
43 // Now the app context prefix is used
44 console.log(greeter.greet('John'));
45}
46
47if (require.main === module) {
48 main().catch(err => {

Callers 1

context-chain.tsFile · 0.70

Calls 6

bindMethod · 0.95
tagMethod · 0.80
toClassMethod · 0.80
toMethod · 0.80
logMethod · 0.65
greetMethod · 0.65

Tested by

no test coverage detected