20 lines
464 B
Rust
20 lines
464 B
Rust
mod result;
|
|
mod service;
|
|
mod store;
|
|
|
|
pub use result::AiTaskProcedureResult;
|
|
pub use service::AiTaskService;
|
|
pub use store::InMemoryAiTaskStore;
|
|
|
|
use crate::{AiTaskFieldError, AiTaskServiceError, AiTaskStatus};
|
|
|
|
fn ensure_task_is_not_terminal(status: AiTaskStatus) -> Result<(), AiTaskServiceError> {
|
|
if status.is_terminal() {
|
|
Err(AiTaskServiceError::Field(
|
|
AiTaskFieldError::InvalidTaskState,
|
|
))
|
|
} else {
|
|
Ok(())
|
|
}
|
|
}
|