#[derive(Debug, Clone, PartialEq, Eq)]
pub enum ConnFinishedReason {
Shutdown,
TheyDisconnected,
WeDisconnected,
ErrorReceiving(String),
ErrorSending(String),
}
impl std::fmt::Display for ConnFinishedReason {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
ConnFinishedReason::Shutdown => write!(f, "Repository shutting down"),
ConnFinishedReason::WeDisconnected => write!(f, "We are disconnecting"),
ConnFinishedReason::TheyDisconnected => write!(f, "They disconnected gracefully"),
ConnFinishedReason::ErrorReceiving(msg) => write!(f, "Error receiving: {msg}"),
ConnFinishedReason::ErrorSending(msg) => write!(f, "Error sending: {msg}"),
}
}
}