File tree 1 file changed +18
-4
lines changed
1 file changed +18
-4
lines changed Original file line number Diff line number Diff line change 1
1
#![ allow( unused) ]
2
2
3
+ use crate :: proto:: Timestamp ;
3
4
use chrono:: DateTime ;
4
5
use mullvad_proc_macro:: { IntoProto , UnwrapProto } ;
5
- use crate :: proto:: Timestamp ;
6
6
7
7
#[ derive( Debug ) ]
8
8
struct RelaySettings ;
@@ -97,8 +97,6 @@ impl FromProto<proto::AppVersionInfo> for AppVersionInfo {
97
97
}
98
98
}
99
99
100
- pub type AppVersion = String ;
101
-
102
100
mod proto {
103
101
use super :: FromProto ;
104
102
use mullvad_proc_macro:: { FromProto , IntoProto } ;
@@ -111,7 +109,7 @@ mod proto {
111
109
pub suggested_upgrade : Option < String > ,
112
110
}
113
111
114
- #[ derive( Debug ) ]
112
+ #[ derive( Debug , FromProto ) ]
115
113
pub struct Device {
116
114
pub created : Timestamp ,
117
115
}
@@ -123,13 +121,29 @@ mod proto {
123
121
}
124
122
125
123
mod mullvad_types {
124
+ use crate :: FromProto ;
125
+ use chrono:: TimeZone ;
126
+
126
127
#[ derive( Debug ) ]
127
128
pub struct AppVersionInfo {
128
129
pub supported : bool ,
129
130
pub latest_stable : String ,
130
131
pub latest_beta : String ,
131
132
pub suggested_upgrade : Option < String > ,
132
133
}
134
+
135
+ pub struct Device {
136
+ pub created : chrono:: DateTime < chrono:: Utc > ,
137
+ }
138
+
139
+ impl FromProto < super :: Timestamp > for chrono:: DateTime < chrono:: Utc > {
140
+ fn from_proto ( other : super :: Timestamp ) -> Self {
141
+ let naive_date_time =
142
+ chrono:: NaiveDateTime :: from_timestamp_opt ( other. seconds , other. nanos as u32 )
143
+ . unwrap ( ) ;
144
+ chrono:: Utc . from_utc_datetime ( & naive_date_time)
145
+ }
146
+ }
133
147
}
134
148
}
135
149
You can’t perform that action at this time.
0 commit comments