openzeppelin_relayer/models/error/
provider.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
use serde::Serialize;
use thiserror::Error;

#[derive(Error, Debug, Serialize)]
pub enum StellarProviderError {
    #[error("RPC client error: {0}")]
    RpcError(String),
    #[error("Simulation failed: {0}")]
    SimulationFailed(String),
    #[error("Insufficient balance: {0}")]
    InsufficientBalance(String),
    #[error("Bad sequence number: {0}")]
    BadSeq(String),
    #[error("Unknown error: {0}")]
    Unknown(String),
}

impl From<eyre::Report> for StellarProviderError {
    fn from(err: eyre::Report) -> Self {
        StellarProviderError::RpcError(err.to_string())
    }
}