use serde::{Deserialize, Serialize};
use chrono::{DateTime, Utc, TimeZone};
use crate::raw::RawMetadata;
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct TimeMetadata {
pub atimeiso: String,
pub mtimeiso: String,
pub ctimeiso: String,
}
impl TimeMetadata {
pub fn from_raw(raw: &RawMetadata) -> Self {
let atime_dt: DateTime<Utc> = Utc.timestamp_opt(raw.atime, 0).unwrap();
let mtime_dt: DateTime<Utc> = Utc.timestamp_opt(raw.mtime, 0).unwrap();
let ctime_dt: DateTime<Utc> = Utc.timestamp_opt(raw.ctime, 0).unwrap();
TimeMetadata {
atimeiso: atime_dt.to_rfc3339(),
mtimeiso: mtime_dt.to_rfc3339(),
ctimeiso: ctime_dt.to_rfc3339(),
}
}
}