nestjs-event-sourcing-lib
Version:
A comprehensive Event Sourcing and CQRS library for NestJS applications
60 lines • 1.78 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.BaseEventStore = exports.EventStoreLoadError = exports.EventStoreSaveError = exports.EventStoreConnectionError = void 0;
/**
* Event Store connection error
*/
class EventStoreConnectionError extends Error {
constructor(message, originalError) {
super(`Event Store connection error: ${message}`);
this.originalError = originalError;
this.name = 'EventStoreConnectionError';
}
}
exports.EventStoreConnectionError = EventStoreConnectionError;
/**
* Event save error
*/
class EventStoreSaveError extends Error {
constructor(message, originalError) {
super(`Event Store save error: ${message}`);
this.originalError = originalError;
this.name = 'EventStoreSaveError';
}
}
exports.EventStoreSaveError = EventStoreSaveError;
/**
* Event load error
*/
class EventStoreLoadError extends Error {
constructor(message, originalError) {
super(`Event Store load error: ${message}`);
this.originalError = originalError;
this.name = 'EventStoreLoadError';
}
}
exports.EventStoreLoadError = EventStoreLoadError;
/**
* Base abstract class for Event Store implementation
*/
class BaseEventStore {
constructor(options) {
this.connected = false;
this.options = options;
}
isConnected() {
return this.connected;
}
async getAllEvents(aggregateId) {
const result = await this.getEvents(aggregateId);
return result.events;
}
setConnected(connected) {
this.connected = connected;
}
getConnectionOptions() {
return this.options;
}
}
exports.BaseEventStore = BaseEventStore;
//# sourceMappingURL=event-store.interface.js.map