diff options
Diffstat (limited to 'crates/pop3/src/op/delete.rs')
-rw-r--r-- | crates/pop3/src/op/delete.rs | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/crates/pop3/src/op/delete.rs b/crates/pop3/src/op/delete.rs index 4e7799b2..e8b53c49 100644 --- a/crates/pop3/src/op/delete.rs +++ b/crates/pop3/src/op/delete.rs @@ -8,6 +8,9 @@ use std::time::Instant; use common::listener::SessionStream; use directory::Permission; +use jmap::{ + changes::write::ChangeLog, email::delete::EmailDeletion, services::state::StateManager, +}; use jmap_proto::types::{state::StateChange, type_state::DataType}; use store::roaring::RoaringBitmap; use trc::AddContext; @@ -87,16 +90,18 @@ impl<T: SessionStream> Session<T> { if !deleted.is_empty() { let num_deleted = deleted.len(); let (changes, not_deleted) = self - .jmap + .server .emails_tombstone(mailbox.account_id, deleted) .await .caused_by(trc::location!())?; if !changes.is_empty() { - if let Ok(change_id) = - self.jmap.commit_changes(mailbox.account_id, changes).await + if let Ok(change_id) = self + .server + .commit_changes(mailbox.account_id, changes) + .await { - self.jmap + self.server .broadcast_state_change( StateChange::new(mailbox.account_id) .with_change(DataType::Email, change_id) |