Skip to main content

reifydb_sub_server/subscription/
errors.rs

1// SPDX-License-Identifier: Apache-2.0
2// Copyright (c) 2026 ReifyDB
3
4use std::fmt;
5
6use crate::execute::ExecuteError;
7
8pub enum CreateSubscriptionError {
9	Execute(ExecuteError),
10	ExtractionFailed,
11}
12
13impl fmt::Display for CreateSubscriptionError {
14	fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
15		match self {
16			CreateSubscriptionError::Execute(e) => write!(f, "{}", e),
17			CreateSubscriptionError::ExtractionFailed => write!(f, "Failed to extract subscription ID"),
18		}
19	}
20}
21
22impl fmt::Debug for CreateSubscriptionError {
23	fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
24		match self {
25			CreateSubscriptionError::Execute(e) => f.debug_tuple("Execute").field(e).finish(),
26			CreateSubscriptionError::ExtractionFailed => write!(f, "ExtractionFailed"),
27		}
28	}
29}
30
31impl From<ExecuteError> for CreateSubscriptionError {
32	fn from(err: ExecuteError) -> Self {
33		CreateSubscriptionError::Execute(err)
34	}
35}