From 0c47489a3b46c27d234eb649be5b3d05a96f0f0a Mon Sep 17 00:00:00 2001 From: Alexander Krotov Date: Mon, 29 Jun 2020 22:49:53 +0300 Subject: [PATCH] Use ephemeral::Timer in MsgId.ephemeral_timer() method --- src/ephemeral.rs | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/ephemeral.rs b/src/ephemeral.rs index 338e37f78..c4d47b637 100644 --- a/src/ephemeral.rs +++ b/src/ephemeral.rs @@ -211,10 +211,7 @@ impl ChatId { impl MsgId { /// Returns ephemeral message timer value for the message. - pub(crate) async fn ephemeral_timer( - self, - context: &Context, - ) -> crate::sql::Result> { + pub(crate) async fn ephemeral_timer(self, context: &Context) -> crate::sql::Result { let res = match context .sql .query_get_value_result( @@ -223,16 +220,16 @@ impl MsgId { ) .await? { - None | Some(0) => None, - Some(timer) => Some(timer), + None | Some(0) => Timer::Disabled, + Some(duration) => Timer::Enabled { duration }, }; Ok(res) } /// Starts ephemeral message timer for the message if it is not started yet. pub(crate) async fn start_ephemeral_timer(self, context: &Context) -> crate::sql::Result<()> { - if let Some(ephemeral_timer) = self.ephemeral_timer(context).await? { - let ephemeral_timestamp = time() + ephemeral_timer; + if let Timer::Enabled { duration } = self.ephemeral_timer(context).await? { + let ephemeral_timestamp = time() + i64::from(duration); context .sql