46 lines
4.6 KiB
Rust
46 lines
4.6 KiB
Rust
// file: crates/ksp-onchain-transport-lib/src/error.rs
|
|
// version: 7
|
|
|
|
/// Error code used when no logical endpoint can satisfy a request.
|
|
pub const ERROR_CODE_ENDPOINT_SELECTION_FAILED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "endpoint_selection_failed");
|
|
/// Error code used when a bounded Yellowstone gRPC request/update queue is exhausted.
|
|
pub const ERROR_CODE_GRPC_BACKPRESSURE_OVERFLOW: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "grpc_backpressure_overflow");
|
|
/// Error code used when a Yellowstone gRPC channel cannot be prepared safely.
|
|
pub const ERROR_CODE_GRPC_CHANNEL_FAILED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "grpc_channel_failed");
|
|
/// Error code used when a Yellowstone gRPC subscribe session is no longer available to the caller.
|
|
pub const ERROR_CODE_GRPC_SESSION_CLOSED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "grpc_session_closed");
|
|
/// Error code used when a Yellowstone gRPC endpoint returns a remote gRPC status.
|
|
pub const ERROR_CODE_GRPC_STATUS: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "grpc_status");
|
|
/// Error code used when an HTTP connection cannot be established.
|
|
pub const ERROR_CODE_HTTP_CONNECTION_FAILED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "http_connection_failed");
|
|
/// Error code used when an HTTP request fails after a connection exists.
|
|
pub const ERROR_CODE_HTTP_REQUEST_FAILED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "http_request_failed");
|
|
/// Error code used when a decoded response cannot satisfy the KSP transport contract expected by the caller.
|
|
pub const ERROR_CODE_INVALID_RESPONSE: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "invalid_response");
|
|
/// Error code used when typed Solana RPC parameters violate a locally enforceable method contract.
|
|
pub const ERROR_CODE_INVALID_RPC_PARAMETERS: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "invalid_rpc_parameters");
|
|
/// Error code used when HTTP transport runtime settings are invalid.
|
|
pub const ERROR_CODE_INVALID_SETTINGS: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "invalid_settings");
|
|
/// Error code used when an HTTP JSON-RPC payload cannot be decoded as JSON.
|
|
pub const ERROR_CODE_JSON_DECODE_FAILED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "json_decode_failed");
|
|
/// Error code used when a JSON-RPC request cannot be encoded.
|
|
pub const ERROR_CODE_JSON_ENCODE_FAILED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "json_encode_failed");
|
|
/// Error code used when a decoded JSON-RPC envelope violates protocol invariants.
|
|
pub const ERROR_CODE_JSON_RPC_PROTOCOL_INVALID: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "json_rpc_protocol_invalid");
|
|
/// Error code used when a historically documented RPC method is no longer supported by the targeted runtime.
|
|
pub const ERROR_CODE_METHOD_REMOVED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "method_removed");
|
|
/// Error code used when an endpoint or provider rate-limits a request.
|
|
pub const ERROR_CODE_RATE_LIMITED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "rate_limited");
|
|
/// Error code used when a remote JSON-RPC endpoint returns an application-level RPC error.
|
|
pub const ERROR_CODE_RPC_APPLICATION_ERROR: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "rpc_application_error");
|
|
/// Error code used when a transport deadline expires.
|
|
pub const ERROR_CODE_TIMEOUT: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "timeout");
|
|
/// Error code used when a bounded WebSocket runtime queue or pending-request capacity is exhausted.
|
|
pub const ERROR_CODE_WS_BACKPRESSURE_OVERFLOW: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "ws_backpressure_overflow");
|
|
/// Error code used when a physical WebSocket connection or handshake fails.
|
|
pub const ERROR_CODE_WS_CONNECTION_FAILED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "ws_connection_failed");
|
|
/// Error code used when WebSocket wire data violates the KSP protocol contract.
|
|
pub const ERROR_CODE_WS_PROTOCOL_ERROR: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "ws_protocol_error");
|
|
/// Error code used when a WebSocket session is no longer available to a caller.
|
|
pub const ERROR_CODE_WS_SESSION_CLOSED: ksp_core_lib::ErrorCode = ksp_core_lib::ErrorCode::new("onchain_transport", "ws_session_closed");
|