mirror of
https://github.com/Karaka-Management/jsOMS.git
synced 2026-01-10 17:38:41 +00:00
43 lines
773 B
JavaScript
43 lines
773 B
JavaScript
import { ModuleFactory } from './ModuleFactory.js';
|
|
/**
|
|
* Module manager.
|
|
*
|
|
* @copyright Dennis Eichhorn
|
|
* @license OMS License 2.2
|
|
* @version 1.0.0
|
|
* @since 1.0.0
|
|
*/
|
|
export class ModuleManager
|
|
{
|
|
/**
|
|
* @constructor
|
|
*
|
|
* @param {Object} app Application
|
|
*
|
|
* @since 1.0.0
|
|
*/
|
|
constructor (app)
|
|
{
|
|
this.modules = {};
|
|
this.app = app;
|
|
};
|
|
|
|
/**
|
|
* Get module.
|
|
*
|
|
* @param {string} module Module name
|
|
*
|
|
* @return {Object}
|
|
*
|
|
* @since 1.0.0
|
|
*/
|
|
get (module)
|
|
{
|
|
if (typeof this.modules[module] === 'undefined') {
|
|
this.modules[module] = ModuleFactory.getInstance(module, this.app);
|
|
}
|
|
|
|
return this.modules[module];
|
|
};
|
|
};
|