1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
use chrono::{DateTime, FixedOffset};
use std::collections::HashMap;
mod request;
pub use self::request::*;
mod response;
pub use self::response::*;
#[derive(Debug, Clone, PartialEq)]
pub struct Context {
pub request: Request,
pub response: Response,
pub selected_media_type: Option<String>,
pub selected_language: Option<String>,
pub selected_charset: Option<String>,
pub selected_encoding: Option<String>,
pub if_unmodified_since: Option<DateTime<FixedOffset>>,
pub if_modified_since: Option<DateTime<FixedOffset>>,
pub redirect: bool,
pub new_resource: bool,
pub metadata: HashMap<String, String>,
}
impl Default for Context {
fn default() -> Context {
Context {
request: Request::default(),
response: Response::default(),
selected_media_type: None,
selected_language: None,
selected_charset: None,
selected_encoding: None,
if_unmodified_since: None,
if_modified_since: None,
redirect: false,
new_resource: false,
metadata: HashMap::new(),
}
}
}