All files / container container.ts

0% Statements 0/25
100% Branches 0/0
0% Functions 0/4
0% Lines 0/25

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37                                                                         
import { Container } from 'inversify';
import { ContainerConstants } from '../../lib/framework/src/constants/ContainerConstants';
import { EventManager } from '../../lib/framework/src/event/EventManager';
import { Logger } from '../../lib/framework/src/logger/Logger';
import { LogLevel } from '../../lib/framework/src/logger/LogLevel';
import { PluginManager } from '../../lib/framework/src/plugin/PluginManager';
import { Application } from '../Application';
import Symbols from '../constants/Symbols';
 
export const bindApplication = (container: Container) => {
    container.bind(Symbols.APP.APPLICATION).to(Application);
};
 
export const bindLogger = (container: Container) => {
    container.bind(ContainerConstants.LOGGING.STREAMS.OUT).toConstantValue(process.stdout);
    container.bind(ContainerConstants.LOGGING.STREAMS.ERROR).toConstantValue(process.stderr);
    container.bind(ContainerConstants.LOGGING.LOGLEVEL).toConstantValue(LogLevel.ALL);
    container.bind(ContainerConstants.LOGGING.LOGGER).to(Logger);
};
 
export const bindPluginManager = (container: Container) => {
    container.bind(ContainerConstants.SYSTEMS.PLUGIN.PLUGINMANAGER).to(PluginManager);
};
 
export const bindEventManager = (container: Container) => {
    container.bind(ContainerConstants.SYSTEMS.EVENT.EVENTMANAGER).to(EventManager);
};
 
const applicationContainer = new Container();
 
bindApplication(applicationContainer);
bindLogger(applicationContainer);
bindPluginManager(applicationContainer);
bindEventManager(applicationContainer);
 
export default applicationContainer;