pub enum GatewayError {
Encoding(Box<dyn Error + Send + Sync>),
Upstream(Status),
Http(Error),
Custom(StatusCode, String),
MethodNotAllowed,
NotFound,
}Expand description
Domain-specific errors for the gateway.
This enum encapsulates various failure modes including serialization issues, upstream gRPC errors, and HTTP protocol violations.
Variants§
Encoding(Box<dyn Error + Send + Sync>)
Represents a failure during message serialization or deserialization.
Upstream(Status)
Represents an error returned by the upstream gRPC service.
Http(Error)
Represents an error within the HTTP protocol handling (e.g., building a response).
Custom(StatusCode, String)
Represents an error with a specific HTTP status code and message.
MethodNotAllowed
Indicates that the requested HTTP method is not allowed for the path.
NotFound
Indicates that no route matched the request path.
Trait Implementations§
Source§impl Debug for GatewayError
impl Debug for GatewayError
Source§impl Display for GatewayError
impl Display for GatewayError
Source§impl Error for GatewayError
impl Error for GatewayError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
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
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<Error> for GatewayError
impl From<Error> for GatewayError
Auto Trait Implementations§
impl Freeze for GatewayError
impl !RefUnwindSafe for GatewayError
impl Send for GatewayError
impl Sync for GatewayError
impl Unpin for GatewayError
impl !UnwindSafe for GatewayError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request