dependency-injection-cat
Version:
DI Cat is a truly clean DI-container, which allows you not to pollute your business logic with decorators from DI/IOC libraries!
49 lines (48 loc) • 1.66 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.container = void 0;
var DIContainerNotInitialized_1 = require("../exceptions/runtime/DIContainerNotInitialized");
var testConfiguration_1 = require("../test/testConfiguration");
var mockContext = {
getBeans: function () {
return {};
},
getBean: function (beanName) {
return null;
}
};
var Container = /** @class */ (function () {
function Container() {
}
Container.prototype.initContext = function () {
if (testConfiguration_1.TestConfiguration.failOnNotConfiguredContainer) {
Container.throwInitializationError();
}
return mockContext;
};
Container.prototype.getOrInitContext = function () {
if (testConfiguration_1.TestConfiguration.failOnNotConfiguredContainer) {
Container.throwInitializationError();
}
return mockContext;
};
/**
* TBeans should be a plain interface without extending
*/
Container.prototype.getContext = function (props) {
if (testConfiguration_1.TestConfiguration.failOnNotConfiguredContainer) {
Container.throwInitializationError();
}
return mockContext;
};
Container.prototype.clearContext = function (props) {
if (testConfiguration_1.TestConfiguration.failOnNotConfiguredContainer) {
Container.throwInitializationError();
}
};
Container.throwInitializationError = function () {
throw new DIContainerNotInitialized_1.DIContainerNotInitialized();
};
return Container;
}());
exports.container = new Container();