inceptum
Version:
hipages take on the foundational library for enterprise-grade apps written in NodeJS
28 lines • 1.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const AbstractObjectDefinitionInspector_1 = require("../AbstractObjectDefinitionInspector");
const SingletonDefinition_1 = require("../objectdefinition/SingletonDefinition");
class ObjectDefinitionLazyLoadingInspector extends AbstractObjectDefinitionInspector_1.AbstractObjectDefinitionInspector {
static hasLazy(objectDefinition) {
return objectDefinition.getProducedClass().hasOwnProperty('lazy');
}
static getLazy(objectDefinition) {
return (objectDefinition.getProducedClass()).lazy;
}
// tslint:disable-next-line:prefer-function-over-method
interestedIn(objectDefinition) {
if (!(objectDefinition instanceof SingletonDefinition_1.SingletonDefinition)) {
return false;
}
return ObjectDefinitionLazyLoadingInspector.hasLazy(objectDefinition);
}
/**
* @param {SingletonDefinition} objectDefinition singleton definition
*/
// tslint:disable-next-line:prefer-function-over-method
doInspect(objectDefinition) {
objectDefinition.withLazyLoading(ObjectDefinitionLazyLoadingInspector.getLazy(objectDefinition));
}
}
exports.ObjectDefinitionLazyLoadingInspector = ObjectDefinitionLazyLoadingInspector;
//# sourceMappingURL=ObjectDefinitionLazyLoadingInspector.js.map