@appolo/inject
Version:
dependency injection for node js
18 lines (13 loc) • 546 B
text/typescript
import {Util} from "../../utils/util";
import {Injector} from "../../inject/inject";
import {Event} from "@appolo/events/index";
export async function _initFactories(this: Injector) {
if (this._isInitialized) {
return;
}
await (this._events.beforeInitFactories as Event<void>).fireEventAsync();
await Util.runRegroupByParallel<Injector>(this.children, inject => inject.options.parallel, injector => injector.initFactories());
for (let factory of this._factories) {
await this.loadFactory(factory);
}
}