Package ru.technoliga74
Class EmailAttachmentLoader
java.lang.Object
ru.technoliga74.EmailAttachmentLoader
Загрузчик вложений из электронной почты по протоколу IMAPS.
Проверяет почтовый ящик на наличие писем от указанных отправителей с фильтром
по теме, скачивает XLSX-вложения и удаляет старые письма.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintПроверяет почтовый ящик на наличие новых писем с вложениями XLSX от разрешённых отправителей и скачивает их.Возвращает Message-ID письма, из которого было скачано вложение, или null, если в текущей проверке вложения не скачивались.Возвращает адрес отправителя письма, из которого было скачано вложение, или null, если в текущей проверке вложения не скачивались.Возвращает тему письма, из которого было скачано вложение, или null, если в текущей проверке вложения не скачивались.
-
Constructor Details
-
EmailAttachmentLoader
public EmailAttachmentLoader(String imapHost, int imapPort, String username, String password, String allowedSender, String subjectFilter, String saveToDir, int maxEmailsToKeep) Создаёт загрузчик вложений с указанными параметрами подключения.- Parameters:
imapHost- IMAP-серверimapPort- порт IMAP-сервераusername- имя пользователяpassword- парольallowedSender- разрешённые отправители (через запятую)subjectFilter- фильтр темы письмаsaveToDir- директория для сохраненияmaxEmailsToKeep- максимальное количество хранимых писем
-
-
Method Details
-
checkAndDownloadAttachments
Проверяет почтовый ящик на наличие новых писем с вложениями XLSX от разрешённых отправителей и скачивает их. После обработки удаляет старые письма, превышающие лимит.- Returns:
- количество скачанных файлов
- Throws:
Exception- при ошибках подключения или чтения почты
-
getLastSender
Возвращает адрес отправителя письма, из которого было скачано вложение, или null, если в текущей проверке вложения не скачивались.- Returns:
- адрес отправителя или null
-
getLastSubject
Возвращает тему письма, из которого было скачано вложение, или null, если в текущей проверке вложения не скачивались.- Returns:
- тема письма или null
-
getLastMessageId
Возвращает Message-ID письма, из которого было скачано вложение, или null, если в текущей проверке вложения не скачивались.- Returns:
- Message-ID или null
-