huginn_net_http/
display.rs

1use crate::http_common::HttpHeader;
2use crate::observable::{ObservableHttpRequest, ObservableHttpResponse};
3use core::fmt;
4use huginn_net_db::display::http::HttpDisplayFormat;
5use huginn_net_db::http::{Header, Version};
6use std::fmt::Formatter;
7
8impl HttpDisplayFormat for ObservableHttpRequest {
9    fn get_version(&self) -> Version {
10        self.matching.version
11    }
12    fn get_horder(&self) -> &[Header] {
13        &self.matching.horder
14    }
15    fn get_habsent(&self) -> &[Header] {
16        &self.matching.habsent
17    }
18    fn get_expsw(&self) -> &str {
19        &self.matching.expsw
20    }
21}
22
23impl HttpDisplayFormat for ObservableHttpResponse {
24    fn get_version(&self) -> Version {
25        self.matching.version
26    }
27    fn get_horder(&self) -> &[Header] {
28        &self.matching.horder
29    }
30    fn get_habsent(&self) -> &[Header] {
31        &self.matching.habsent
32    }
33    fn get_expsw(&self) -> &str {
34        &self.matching.expsw
35    }
36}
37
38impl fmt::Display for ObservableHttpRequest {
39    fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
40        self.format_http_display(f)
41    }
42}
43
44impl fmt::Display for ObservableHttpResponse {
45    fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
46        self.format_http_display(f)
47    }
48}
49
50impl fmt::Display for HttpHeader {
51    fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
52        if let Some(ref value) = self.value {
53            write!(f, "{}={}", self.name, value)
54        } else {
55            write!(f, "{}", self.name)
56        }
57    }
58}