Enum OpClientError

Source
pub enum OpClientError {
    Http(String),
    HeaderParse(String),
    Serde(Error),
    Io(Error),
    Pem(String),
    Pkcs8(String),
    Base64(DecodeError),
    Url(ParseError),
    Signature(String),
    Other(String),
}
Expand description

Error type for Open Payments client operations.

This enum provides detailed error information for different types of failures that can occur during client operations. Each variant includes context-specific error messages to help with debugging and error handling.

§Error Variants

  • Http - Network and HTTP protocol errors
  • HeaderParse - HTTP header parsing failures
  • Serde - JSON serialization/deserialization errors
  • Io - File system and I/O errors
  • Pem - PEM format parsing errors
  • Pkcs8 - PKCS8 key format errors
  • Base64 - Base64 encoding/decoding errors
  • Url - URL parsing errors
  • Signature - Cryptographic signature errors
  • Other - Miscellaneous errors

Variants§

§

Http(String)

HTTP protocol or network-related errors.

This includes connection failures, timeout errors, and HTTP status code errors. The error message provides details about the specific HTTP issue.

§

HeaderParse(String)

HTTP header parsing errors.

Occurs when the client cannot parse required HTTP headers such as Content-Type, Authorization, or custom headers.

§

Serde(Error)

JSON serialization or deserialization errors.

This error is automatically converted from serde_json::Error and occurs when the client cannot serialize request data or deserialize response data.

§

Io(Error)

File system and I/O errors.

This error is automatically converted from std::io::Error and occurs when the client cannot read key files or perform other I/O operations.

§

Pem(String)

PEM format parsing errors.

Occurs when the client cannot parse PEM-encoded private keys or certificates. This includes malformed PEM files or unsupported PEM types.

§

Pkcs8(String)

PKCS8 key format errors.

Occurs when the client cannot parse PKCS8-encoded private keys. This includes unsupported key algorithms or malformed key data.

§

Base64(DecodeError)

Base64 encoding or decoding errors.

This error is automatically converted from base64::DecodeError and occurs when the client cannot decode Base64-encoded data such as signatures or keys.

§

Url(ParseError)

URL parsing errors.

This error is automatically converted from url::ParseError and occurs when the client cannot parse URLs for wallet addresses or API endpoints.

§

Signature(String)

Cryptographic signature errors.

Occurs when there are issues with HTTP message signature creation or validation. This includes key loading failures, signature generation errors, and validation failures.

§

Other(String)

Miscellaneous errors that don’t fit into other categories.

This variant is used for unexpected errors that don’t fall into the standard error categories.

Trait Implementations§

Source§

impl Debug for OpClientError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for OpClientError

Source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Error for OpClientError

Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
Source§

impl From<DecodeError> for OpClientError

Source§

fn from(source: DecodeError) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for OpClientError

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for OpClientError

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for OpClientError

Source§

fn from(err: Error) -> Self

Converts reqwest HTTP errors to OpClientError::Http.

This implementation allows the client to automatically convert reqwest errors into the unified error type, providing consistent error handling across the library.

Source§

impl From<ParseError> for OpClientError

Source§

fn from(source: ParseError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,