pub trait Server {
type Request;
type Response;
type Key;
type Error;
// Required methods
fn poll_for_request(
&mut self,
) -> Result<Option<(Self::Key, Self::Request)>, Self::Error>;
fn poll_for_requests(
&mut self,
) -> Vec<Result<(Self::Key, Self::Request), Self::Error>>;
fn send_response(
&mut self,
client_key: Self::Key,
request: Self::Request,
response: Self::Response,
) -> Result<(), Self::Error>;
// Provided method
fn send_responses(
&mut self,
responses: Vec<(Self::Key, Self::Request, Self::Response)>,
) -> Vec<Result<(), Self::Error>> { ... }
}
Expand description
A common abstraction for all NComm servers that outlines the necessary base requirements for all NComm servers
Required Associated Types§
Required Methods§
Sourcefn poll_for_request(
&mut self,
) -> Result<Option<(Self::Key, Self::Request)>, Self::Error>
fn poll_for_request( &mut self, ) -> Result<Option<(Self::Key, Self::Request)>, Self::Error>
Check for an incoming request from the client