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 2021/07/19 02:48:25 UTC

[james-project] 02/03: [PERFORMANCE] Record SetMessagesProcessor metrics if executed

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 13435084c8f6bb12e46fcb5e1dfc7702d9b5ab08
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Thu Jul 15 11:39:45 2021 +0700

    [PERFORMANCE] Record SetMessagesProcessor metrics if executed
    
    Otherwise we record zeros that false the overall analysis
---
 .../java/org/apache/james/jmap/draft/methods/SendMDNProcessor.java     | 3 +++
 .../apache/james/jmap/draft/methods/SetMessagesCreationProcessor.java  | 3 +++
 .../james/jmap/draft/methods/SetMessagesDestructionProcessor.java      | 3 +++
 3 files changed, 9 insertions(+)

diff --git a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SendMDNProcessor.java b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SendMDNProcessor.java
index f1e450e..030a577 100644
--- a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SendMDNProcessor.java
+++ b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SendMDNProcessor.java
@@ -79,6 +79,9 @@ public class SendMDNProcessor implements SetMessagesProcessor {
 
     @Override
     public SetMessagesResponse process(SetMessagesRequest request, MailboxSession mailboxSession) {
+        if (request.getSendMDN().isEmpty()) {
+            return SetMessagesResponse.builder().build();
+        }
         return metricFactory.decorateSupplierWithTimerMetric(JMAP_PREFIX + "SendMDN",
             () -> handleMDNCreation(request, mailboxSession));
     }
diff --git a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SetMessagesCreationProcessor.java b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SetMessagesCreationProcessor.java
index 4843bae..2aa38d7 100644
--- a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SetMessagesCreationProcessor.java
+++ b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SetMessagesCreationProcessor.java
@@ -116,6 +116,9 @@ public class SetMessagesCreationProcessor implements SetMessagesProcessor {
 
     @Override
     public Mono<SetMessagesResponse> processReactive(SetMessagesRequest request, MailboxSession mailboxSession) {
+        if (request.getCreate().isEmpty()) {
+            return Mono.just(SetMessagesResponse.builder().build());
+        }
         return Mono.from(metricFactory.decoratePublisherWithTimerMetric(JMAP_PREFIX + "SetMessageCreationProcessor",
             Flux.fromIterable(request.getCreate())
                 .flatMap(create -> handleCreate(create, mailboxSession))
diff --git a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SetMessagesDestructionProcessor.java b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SetMessagesDestructionProcessor.java
index c650a30..6c5976b 100644
--- a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SetMessagesDestructionProcessor.java
+++ b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/SetMessagesDestructionProcessor.java
@@ -57,6 +57,9 @@ public class SetMessagesDestructionProcessor implements SetMessagesProcessor {
 
     @Override
     public Mono<SetMessagesResponse> processReactive(SetMessagesRequest request, MailboxSession mailboxSession) {
+        if (request.getDestroy().isEmpty()) {
+            return Mono.just(SetMessagesResponse.builder().build());
+        }
         return Mono.from(metricFactory.decoratePublisherWithTimerMetric(JMAP_PREFIX + "SetMessageDestructionProcessor",
             delete(request.getDestroy(), mailboxSession)));
     }

---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org