appletheia_application/projection/
projector_rebuilder_error.rs1use thiserror::Error;
2
3use crate::event::EventFeedReaderError;
4use crate::unit_of_work::{UnitOfWorkError, UnitOfWorkFactoryError};
5
6use super::{ProjectionCheckpointStoreError, ProjectorProcessedEventStoreError};
7
8#[derive(Debug, Error)]
9pub enum ProjectorRebuilderError {
10 #[error("event feed reader failed: {0}")]
11 EventFeedReader(#[from] EventFeedReaderError),
12
13 #[error("checkpoint store failed: {0}")]
14 CheckpointStore(#[from] ProjectionCheckpointStoreError),
15
16 #[error("processed event store failed: {0}")]
17 ProcessedEventStore(#[from] ProjectorProcessedEventStoreError),
18
19 #[error("unit of work error: {0}")]
20 UnitOfWork(#[from] UnitOfWorkError),
21
22 #[error("unit of work factory error: {0}")]
23 UnitOfWorkFactory(#[from] UnitOfWorkFactoryError),
24
25 #[error("projector definition failed")]
26 Definition(#[source] Box<dyn std::error::Error + Send + Sync>),
27}