nope/lib/loader/getPackageLoader.ts

35 lines
946 B
TypeScript
Raw Normal View History

2020-11-07 00:45:20 +00:00
/**
* @author Martin Karkowski
* @email m.karkowski@zema.de
* @create date 2020-11-06 14:20:32
* @modify date 2020-11-07 00:45:33
* @desc [description]
*/
import { getSingleton } from "../helpers/singletonMethod";
import { INopeDispatcher } from "../types/nope/nopeDispatcher.interface";
import { generateNopeBasicPackage } from './generateNopeBasicPackage';
import { NopePackageLoader } from "./nopePackageLoader";
/**
* Function to extract a Singleton Dispatcher
* @param options The provided options for the Dispatcher
*/
export function getPackageLoader(_dispatcher: INopeDispatcher) {
const container = getSingleton('nopeBackendPackageLoader.instance', () => {
// Create a loader
const loader = new NopePackageLoader(_dispatcher);
// load the default Package:
loader.addPackage(generateNopeBasicPackage(_dispatcher)).catch(e => {
throw e;
});
return loader
});
return container.instance
}