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/05/21 07:10:38 UTC

[james-project] 02/02: [PERFORMANCE] JsoupHtmlTextExtractor should use Collectors.joiner

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 3eba5ad4cc1ea7edba424d6fbd71be38ab583fe0
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Tue May 18 20:48:53 2021 +0700

    [PERFORMANCE] JsoupHtmlTextExtractor should use Collectors.joiner
    
    Reduce and concats was responsible of 2% of total memory allocation of a
    production server...
---
 .../java/org/apache/james/jmap/draft/utils/JsoupHtmlTextExtractor.java | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/utils/JsoupHtmlTextExtractor.java b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/utils/JsoupHtmlTextExtractor.java
index b4ea0c0..4fb4204 100644
--- a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/utils/JsoupHtmlTextExtractor.java
+++ b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/utils/JsoupHtmlTextExtractor.java
@@ -21,6 +21,7 @@ package org.apache.james.jmap.draft.utils;
 
 import java.util.Optional;
 import java.util.function.Predicate;
+import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
 import org.apache.commons.lang3.StringUtils;
@@ -56,7 +57,7 @@ public class JsoupHtmlTextExtractor implements HtmlTextExtractor {
 
             return flatten(body, INITIAL_LIST_NESTED_LEVEL)
                 .map(this::convertNodeToText)
-                .reduce("", (s1, s2) -> s1 + s2);
+                .collect(Collectors.joining());
         } catch (Exception e) {
             LOGGER.warn("Failed extracting text from html", e);
             return html;

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