cdk_common/pub_sub/
error.rs1use tokio::sync::mpsc::error::TrySendError;
4
5#[derive(thiserror::Error, Debug)]
6pub enum Error {
8 #[error("Subscription not found")]
10 NoSubscription,
11
12 #[error("Parsing Error {0}")]
14 ParsingError(String),
15
16 #[error("Internal")]
18 Internal(Box<dyn std::error::Error + Send + Sync>),
19
20 #[error("Internal error {0}")]
22 InternalStr(String),
23
24 #[error("Not supported")]
26 NotSupported,
27
28 #[error("Terminal error {0}")]
30 Terminal(String),
31
32 #[error("Channel is full")]
34 ChannelFull,
35
36 #[error("Channel is close")]
38 ChannelClosed,
39}
40
41impl<T> From<TrySendError<T>> for Error {
42 fn from(value: TrySendError<T>) -> Self {
43 match value {
44 TrySendError::Closed(_) => Error::ChannelClosed,
45 TrySendError::Full(_) => Error::ChannelFull,
46 }
47 }
48}