Files
k-photos/crates/domain/src/ports/ingest_session_repo.rs

10 lines
449 B
Rust

use async_trait::async_trait;
use crate::{entities::IngestSession, errors::DomainError, value_objects::SystemId};
#[async_trait]
pub trait IngestSessionRepository: Send + Sync {
async fn find_by_id(&self, id: &SystemId) -> Result<Option<IngestSession>, DomainError>;
async fn find_by_user(&self, user_id: &SystemId) -> Result<Vec<IngestSession>, DomainError>;
async fn save(&self, session: &IngestSession) -> Result<(), DomainError>;
}