fire_http/routes/
catcher.rs

1use crate::header::{RequestHeader, ResponseHeader};
2use crate::util::PinnedFuture;
3use crate::{Request, Resources, Response};
4
5// Catcher Trait
6pub trait Catcher: Send + Sync {
7	fn check(&self, req: &RequestHeader, res: &ResponseHeader) -> bool;
8
9	// check if every data you expect is in Data
10	fn validate_data(&self, _data: &Resources) {}
11
12	fn call<'a>(
13		&'a self,
14		req: &'a mut Request,
15		resp: &'a mut Response,
16		data: &'a Resources,
17	) -> PinnedFuture<'a, crate::Result<()>>;
18}