use cbsk_base::fastdate::DateTime;
pub trait TimeTrait {
fn set_recv_time(&self, time: i64);
fn get_recv_time(&self) -> i64;
fn set_timeout_time(&self, time: i64);
fn get_timeout_time(&self) -> i64;
fn set_wait_callback(&self, is_wait: bool);
fn get_wait_callback(&self) -> bool;
fn set_ignore_once(&self, is_ignore: bool) {
let _ = is_ignore;
}
fn get_ignore(&self) -> bool {
false
}
fn set_now(&self) {
self.set_recv_time_now();
self.set_timeout_time_now();
}
fn set_recv_time_now(&self) {
self.set_recv_time(Self::now());
}
fn set_timeout_time_now(&self) {
self.set_timeout_time(Self::now())
}
fn now() -> i64 {
DateTime::now().unix_timestamp_millis()
}
fn wait_callback(&self) {
self.set_wait_callback(true);
}
fn finish_callback(&self) {
self.set_timeout_time_now();
self.set_wait_callback(false);
}
}