MCPcopy
hub / github.com/nestjs/nest / addScopedEnhancersMetadata

Method addScopedEnhancersMetadata

packages/core/scanner.ts:644–664  ·  view source on GitHub ↗

* Add either request or transient globally scoped enhancers * to all controllers metadata storage

()

Source from the content-addressed store, hash-verified

642 * to all controllers metadata storage
643 */
644 public addScopedEnhancersMetadata() {
645 iterate(this.applicationProvidersApplyMap)
646 .filter(wrapper => this.isRequestOrTransient(wrapper.scope!))
647 .forEach(({ moduleKey, providerKey }) => {
648 const modulesContainer = this.container.getModules();
649 const { injectables } = modulesContainer.get(moduleKey)!;
650 const instanceWrapper = injectables.get(providerKey);
651
652 const iterableIterator = modulesContainer.values();
653 iterate(iterableIterator)
654 .map(moduleRef =>
655 Array.from<InstanceWrapper>(moduleRef.controllers.values()).concat(
656 moduleRef.entryProviders,
657 ),
658 )
659 .flatten()
660 .forEach(controllerOrEntryProvider =>
661 controllerOrEntryProvider.addEnhancerMetadata(instanceWrapper!),
662 );
663 });
664 }
665
666 public applyApplicationProviders() {
667 const applyProvidersMap = this.getApplyProvidersMap();

Callers 2

scanMethod · 0.95
scanner.spec.tsFile · 0.80

Calls 4

isRequestOrTransientMethod · 0.95
addEnhancerMetadataMethod · 0.80
getMethod · 0.65
getModulesMethod · 0.45

Tested by

no test coverage detected