UNPKG

@flexiblepersistence/service

Version:

A Service implementation for Flexible Persistence's PersistenceAdapter

50 lines 1.61 kB
"use strict"; 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