Trait bip_utracker::ServerHandler
[−]
[src]
pub trait ServerHandler: Send { fn connect<R>(&mut self, addr: SocketAddr, result: R) where R: for<'a> FnOnce(ServerResult<'a, u64>); fn announce<'b, R>(&mut self, addr: SocketAddr, id: u64, req: &AnnounceRequest<'b>, result: R) where R: for<'a> FnOnce(ServerResult<'a, AnnounceResponse<'a>>); fn scrape<'b, R>(&mut self, addr: SocketAddr, id: u64, req: &ScrapeRequest<'b>, result: R) where R: for<'a> FnOnce(ServerResult<'a, ScrapeResponse<'a>>); }
Trait for providing a TrackerServer with methods to service TrackerReqeusts.
Required Methods
fn connect<R>(&mut self, addr: SocketAddr, result: R) where R: for<'a> FnOnce(ServerResult<'a, u64>)
Service a connection id request from the given address.
If the result callback is not called, no response will be sent.
fn announce<'b, R>(&mut self, addr: SocketAddr, id: u64, req: &AnnounceRequest<'b>, result: R) where R: for<'a> FnOnce(ServerResult<'a, AnnounceResponse<'a>>)
Service an announce request with the given connect id.
If the result callback is not called, no response will be sent.
fn scrape<'b, R>(&mut self, addr: SocketAddr, id: u64, req: &ScrapeRequest<'b>, result: R) where R: for<'a> FnOnce(ServerResult<'a, ScrapeResponse<'a>>)
Service a scrape request with the given connect id.
If the result callback is not called, no response will be sent.