pub trait RequestHandler: Send + Sync {
// Required methods
fn handle_request(
&self,
request_id: RequestId,
payload: &[u8],
) -> Result<Vec<u8>, IpcError>;
fn handle_stream<W: Write>(
&self,
stream_id: StreamId,
payload: &[u8],
writer: StreamWriter<W>,
) -> Result<(), IpcError>;
}Expand description
Request handler trait for server-side processing
Required Methods§
Sourcefn handle_request(
&self,
request_id: RequestId,
payload: &[u8],
) -> Result<Vec<u8>, IpcError>
fn handle_request( &self, request_id: RequestId, payload: &[u8], ) -> Result<Vec<u8>, IpcError>
Handle a single request
Sourcefn handle_stream<W: Write>(
&self,
stream_id: StreamId,
payload: &[u8],
writer: StreamWriter<W>,
) -> Result<(), IpcError>
fn handle_stream<W: Write>( &self, stream_id: StreamId, payload: &[u8], writer: StreamWriter<W>, ) -> Result<(), IpcError>
Handle a streaming request
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".