You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by bt...@apache.org on 2022/04/19 04:04:02 UTC
[james-project] 11/49: JAMES-3737 IMAP Close: avoid reading mailbox metadata
This is an automated email from the ASF dual-hosted git repository.
btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
commit cff05c2a76fb448940d0bac83363940f899910d4
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Fri Mar 25 21:53:33 2022 +0700
JAMES-3737 IMAP Close: avoid reading mailbox metadata
---
.../main/java/org/apache/james/imap/processor/CloseProcessor.java | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/protocols/imap/src/main/java/org/apache/james/imap/processor/CloseProcessor.java b/protocols/imap/src/main/java/org/apache/james/imap/processor/CloseProcessor.java
index f6cabec202..9246ada637 100644
--- a/protocols/imap/src/main/java/org/apache/james/imap/processor/CloseProcessor.java
+++ b/protocols/imap/src/main/java/org/apache/james/imap/processor/CloseProcessor.java
@@ -28,8 +28,8 @@ import org.apache.james.imap.message.request.CloseRequest;
import org.apache.james.mailbox.MailboxManager;
import org.apache.james.mailbox.MailboxSession;
import org.apache.james.mailbox.MessageManager;
-import org.apache.james.mailbox.MessageManager.MailboxMetaData.FetchGroup;
import org.apache.james.mailbox.exception.MailboxException;
+import org.apache.james.mailbox.model.MailboxACL;
import org.apache.james.mailbox.model.MessageRange;
import org.apache.james.metrics.api.MetricFactory;
import org.apache.james.util.MDCBuilder;
@@ -50,7 +50,7 @@ public class CloseProcessor extends AbstractMailboxProcessor<CloseRequest> {
MessageManager mailbox = getSelectedMailbox(session)
.orElseThrow(() -> new MailboxException("Session not in SELECTED state"));
final MailboxSession mailboxSession = session.getMailboxSession();
- if (mailbox.getMetaData(false, mailboxSession, FetchGroup.NO_COUNT).isWriteable()) {
+ if (getMailboxManager().hasRight(mailbox.getMailboxEntity(), MailboxACL.Right.PerformExpunge, mailboxSession)) {
mailbox.expunge(MessageRange.all(), mailboxSession);
session.deselect();
@@ -58,7 +58,6 @@ public class CloseProcessor extends AbstractMailboxProcessor<CloseRequest> {
//
// See http://www.rfc-editor.org/errata_search.php?rfc=5162
okComplete(request, responder);
-
}
} catch (MailboxException e) {
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org