Files
nym/common/socks5-client-core/src/error.rs
T
Jon Häggblad 7f434b2b26 Creat event mod
2024-11-07 23:54:38 +01:00

37 lines
1012 B
Rust

use crate::socks::types::SocksProxyError;
use nym_client_core::error::ClientCoreError;
use nym_socks5_requests::{ConnectionError, ConnectionId};
#[derive(thiserror::Error, Debug)]
pub enum Socks5ClientCoreError {
#[error("I/O error: {0}")]
IoError(#[from] std::io::Error),
#[error("SOCKS proxy error")]
SocksProxyError(SocksProxyError),
#[error("client-core error: {0}")]
ClientCoreError(#[from] ClientCoreError),
#[error("Network requester: connection id {connection_id}: {error}")]
NetworkRequesterError {
connection_id: ConnectionId,
error: String,
},
}
impl From<ConnectionError> for Socks5ClientCoreError {
fn from(value: ConnectionError) -> Self {
Socks5ClientCoreError::NetworkRequesterError {
connection_id: value.connection_id,
error: value.network_requester_error,
}
}
}
impl nym_task::TaskStatusEvent for Socks5ClientCoreError {
fn as_any(&self) -> &dyn std::any::Any {
self
}
}