23 lines
598 B
JavaScript
23 lines
598 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.AggregateRoot = void 0;
|
|
const Entity_1 = require("./Entity");
|
|
class AggregateRoot extends Entity_1.Entity {
|
|
constructor(props, id) {
|
|
super(props, id);
|
|
this._domainEvents = [];
|
|
}
|
|
get domainEvents() {
|
|
return this._domainEvents;
|
|
}
|
|
addDomainEvent(event) {
|
|
this._domainEvents.push(event);
|
|
}
|
|
clearEvents() {
|
|
const events = [...this._domainEvents];
|
|
this._domainEvents = [];
|
|
return events;
|
|
}
|
|
}
|
|
exports.AggregateRoot = AggregateRoot;
|