@ournet/domain
Version:
Ournet domain
34 lines (33 loc) • 884 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.BaseRepository = void 0;
class BaseRepository {
constructor(validator) {
this.validator = validator;
}
create(data) {
data = this.beforeCreate(data);
return this.innerCreate(data);
}
put(data) {
data = this.beforePut(data);
return this.innerPut(data);
}
update(data) {
data = this.beforeUpdate(data);
return this.innerUpdate(data);
}
beforeCreate(data) {
return this.validator.onCreate(data);
}
beforeUpdate(data) {
return this.validator.onUpdate(data);
}
beforePut(data) {
return this.validator.onCreate(data);
}
innerPut(_data) {
throw new Error(`Not implemented!`);
}
}
exports.BaseRepository = BaseRepository;