From bf03d38d87926f1788b0a80cc4e4da40f8ccd0f1 Mon Sep 17 00:00:00 2001 From: Vlad Loukiantchenko Date: Mon, 12 Sep 2022 18:14:47 -0400 Subject: [PATCH] getEmails - some more logs added --- .../capsa/it/email/EmailReceiverService.kt | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/capsa-it/src/main/kotlin/digital/capsa/it/email/EmailReceiverService.kt b/capsa-it/src/main/kotlin/digital/capsa/it/email/EmailReceiverService.kt index b26658c..6220a53 100644 --- a/capsa-it/src/main/kotlin/digital/capsa/it/email/EmailReceiverService.kt +++ b/capsa-it/src/main/kotlin/digital/capsa/it/email/EmailReceiverService.kt @@ -60,6 +60,11 @@ class EmailReceiverService( } if (messages.isNotEmpty()) { + if (messages.size > 1) { + logger.warn("Found more than one email for $to, number of emails - ${messages.size}") + } + logger.info("Email for $to is found, subject is ${messages[0].subject}") + return messages } } @@ -76,20 +81,14 @@ class EmailReceiverService( ): List { val email = extractMainEmail(to) val imapMailReceiver = imapMailReceiver(email) - imapMailReceiver.isShouldMarkMessagesAsRead - val messages = imapMailReceiver.receive().filter { message -> + imapMailReceiver.setShouldDeleteMessages(false) + imapMailReceiver.setShouldMarkMessagesAsRead(false) + return imapMailReceiver.receive().filter { message -> message is MimeMessage && message.allRecipients.toList().map { it.toString() }.contains(to) && if (subject != null) message.subject.toString().contains(subject) else true }.map { it as MimeMessage } - - if (messages.size > 1) { - logger.warn("Found more than one email for $email, number of emails - ${messages.size}") - } - logger.info("Email for $email is found, subject is ${messages[0].subject}") - - return messages } private fun extractMainEmail(to: String): String {