Skip to main content

Crate synapse_rpc

Crate synapse_rpc 

Source
Expand description

Synapse RPC Runtime

Core RPC types and runtime for Synapse services.

This crate provides:

  • Codec layer for JSON and Protobuf serialization
  • HTTP client for making RPC calls
  • Interface registry for routing requests
  • Typed handler system for type-safe request handling

Re-exports§

pub use codec::Codec;
pub use codec::ContentType;
pub use codec::JsonCodec;
pub use codec::ProtobufCodec;
pub use codec::decode_message;
pub use codec::encode_message;
pub use error::IntoServiceError;
pub use error::RpcResult;
pub use error::ServiceError;
pub use error::TransportError;
pub use http_client::HttpRpcClient;
pub use message::MAX_BATCH_PAYLOAD_SIZE;
pub use message::MAX_RPC_PAYLOAD_SIZE;
pub use message::PROTOCOL_VERSION;
pub use message::ParsedMessage;
pub use message::create_health_pull;
pub use message::create_health_response;
pub use message::create_http_endpoint_deregister;
pub use message::create_http_endpoint_register;
pub use message::create_http_registration_ack;
pub use message::create_interface_deregister;
pub use message::create_interface_register;
pub use message::create_registration_ack;
pub use message::create_rpc_request;
pub use message::create_rpc_response;
pub use message::error_response;
pub use message::extract_health_pull;
pub use message::extract_health_response;
pub use message::extract_http_registration_ack;
pub use message::extract_interface_deregister;
pub use message::extract_interface_register;
pub use message::extract_registration_ack;
pub use message::extract_rpc_request;
pub use message::extract_rpc_response;
pub use message::ok_response;
pub use message::parse_message;
pub use method_router::MethodRouter;
pub use registry::FunctionHandler;
pub use registry::InterfaceRegistration;
pub use registry::InterfaceRegistry;
pub use registry::RpcHandler;
pub use server::RpcServer;
pub use typed_handler::TypedHandler;
pub use typed_handler::TypedRpcHandler;

Modules§

codec
Codec layer for serializing/deserializing Synapse messages
error
RPC error types for service handlers
http_client
HTTP RPC client for calling gateway over HTTP
message
Message construction helpers for Synapse protocol
method_router
Method router for dispatching to multiple handlers per interface
registry
Interface and instance registry
server
RPC server implementation
synapse_message
Nested message and enum types in SynapseMessage.
typed_handler
Typed RPC handlers with automatic serialization/deserialization

Macros§

typed_handler
Helper macro to implement TypedHandler for closures

Structs§

HeaderEntry
InstanceCapabilities
InterfaceRegister
ProtoRpcError
RpcRequest
RpcResponse
SynapseMessage
Top-level message envelope for all Synapse protocol messages

Enums§

MessageKind
Message type discriminator
RpcStatus

Derive Macros§

RpcError
Derive macro for RPC errors