kf_protocol_message/
fetch_handler.rs1use std::fmt::Debug;
2
3use kf_protocol::Decoder;
4use kf_protocol::Encoder;
5
6use kf_protocol_api::RecordSet;
7
8use crate::fetch::{KfFetchResponse, KfFetchRequest};
9use crate::fetch::FetchableTopicResponse;
10
11pub type DefaultKfFetchRequest = KfFetchRequest<RecordSet>;
12pub type DefaultKfFetchResponse = KfFetchResponse<RecordSet>;
13
14impl<R> KfFetchResponse<R>
19where
20 R: Encoder + Decoder + Debug,
21{
22 pub fn find_topic(&self, topic: &String) -> Option<&FetchableTopicResponse<R>>
23 where
24 R: Debug,
25 {
26 for r_topic in &self.topics {
27 if r_topic.name == *topic {
28 return Some(r_topic);
29 }
30 }
31 None
32 }
33}
34
35#[cfg(test)]
36mod test {
37
38 use super::DefaultKfFetchRequest;
39
40 #[test]
41 fn test_request() {
42 let _ = DefaultKfFetchRequest::default();
43 assert!(true);
44 }
45}