lambdaorm-base
Version:
43 lines • 1.38 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MappingsConfigService = void 0;
const domain_1 = require("../../../domain");
const mappingConfigService_1 = require("./mappingConfigService");
class MappingsConfigService {
constructor() {
this.mappings = [];
}
load(value) {
if (value && value.name) {
const index = this.mappings.findIndex(p => p.name === value.name);
if (index === -1) {
this.mappings.push(value);
}
else {
this.mappings[index] = value;
}
}
}
delete(name) {
const index = this.mappings.findIndex(p => p.name === name);
if (index !== -1) {
this.mappings.splice(index, 1);
}
}
get(name) {
const mapping = this.mappings.find(p => p.name === name);
if (!mapping) {
throw new domain_1.SchemaError(`mapping ${name} not found`);
}
return mapping;
}
getInstance(name) {
const mapping = this.get(name);
if (!mapping) {
throw new domain_1.SchemaError(`mapping ${name} not found`);
}
return new mappingConfigService_1.MappingConfigService(mapping);
}
}
exports.MappingsConfigService = MappingsConfigService;
//# sourceMappingURL=mappingsConfigService.js.map