actix_amqp/
errors.rs

1use amqp_codec::{protocol, AmqpCodecError, ProtocolIdError};
2
3#[derive(Debug, Display, Clone)]
4pub enum AmqpTransportError {
5    Codec(AmqpCodecError),
6    TooManyChannels,
7    Disconnected,
8    Timeout,
9    #[display(fmt = "Connection closed, error: {:?}", _0)]
10    Closed(Option<protocol::Error>),
11    #[display(fmt = "Session ended, error: {:?}", _0)]
12    SessionEnded(Option<protocol::Error>),
13    #[display(fmt = "Link detached, error: {:?}", _0)]
14    LinkDetached(Option<protocol::Error>),
15}
16
17impl From<AmqpCodecError> for AmqpTransportError {
18    fn from(err: AmqpCodecError) -> Self {
19        AmqpTransportError::Codec(err)
20    }
21}
22
23#[derive(Debug, Display, From)]
24pub enum SaslConnectError {
25    Protocol(ProtocolIdError),
26    AmqpError(AmqpCodecError),
27    #[display(fmt = "Sasl error code: {:?}", _0)]
28    Sasl(protocol::SaslCode),
29    ExpectedOpenFrame,
30    Disconnected,
31}