@flexiblepersistence/service
Version:
A Service implementation for Flexible Persistence's PersistenceAdapter
50 lines • 1.61 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const default_initializer_1 = require("@flexiblepersistence/default-initializer");
class BaseService extends default_initializer_1.Default {
other(input) {
return this.persistencePublish('other', input);
}
create(input) {
return this.persistencePublish('create', input);
}
read(input) {
return this.persistencePublish('read', input);
}
update(input) {
return this.persistencePublish('update', input);
}
delete(input) {
return this.persistencePublish('delete', input);
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
async persistencePublish(method, input) {
if (this.persistence) {
if (!input.scheme)
input.scheme = this.getName();
return this.persistence[method](input);
}
// throw new Error('There is no Persistence connected.');
return input;
}
constructor(initDefault) {
super(initDefault);
}
generateName() {
this.setName(this.getClassName().replace('Service', this.getType()));
}
init(initDefault) {
// console.log('init:', initDefault);
super.init(initDefault);
if (initDefault && initDefault.persistence)
this.setPersistence(initDefault.persistence);
}
getPersistence() {
return this.persistence;
}
setPersistence(persistence) {
this.persistence = persistence;
}
}
exports.default = BaseService;
//# sourceMappingURL=baseService.js.map
;