public class Pop3PollingMonitoringStrategy extends PollingMonitoringStrategy
MonitoringStrategy
interface that uses a simple polling mechanism suitable for POP3
servers. Since POP3 does not have a native mechanism to determine which messages are "new", this implementation
simply retrieves all messages in the Folder
, and delete them afterwards. All messages in the POP3 mailbox are
therefore, by definition, new.
Setting the deleteMessages
property is therefore ignored: messages are always
deleted.
DEFAULT_POLLING_FREQUENCY
logger
Constructor and Description |
---|
Pop3PollingMonitoringStrategy() |
Modifier and Type | Method and Description |
---|---|
protected void |
afterSleep(Folder folder)
Re-opens the folder, if it closed.
|
protected void |
deleteMessages(Folder folder,
Message[] messages)
Deletes the given messages from the given folder, and closes it to expunge deleted messages.
|
protected Message[] |
searchForNewMessages(Folder folder)
Simply returns
Folder.getMessages() . |
void |
setDeleteMessages(boolean deleteMessages)
Sets whether messages should be marked as
DELETED after they have been
read. |
setPollingInterval, waitForNewMessages
fetchMessages, getFolderOpenMode, monitor
public void setDeleteMessages(boolean deleteMessages)
AbstractMonitoringStrategy
DELETED
after they have been
read. Default is true
.setDeleteMessages
in class AbstractMonitoringStrategy
protected void afterSleep(Folder folder) throws MessagingException
afterSleep
in class PollingMonitoringStrategy
folder
- the folder to check for new messagesMessagingException
- in case of JavaMail errorsprotected Message[] searchForNewMessages(Folder folder) throws MessagingException
Folder.getMessages()
.searchForNewMessages
in class AbstractMonitoringStrategy
folder
- the folder to retrieve new messages fromMessagingException
- in case of JavaMail errorsprotected void deleteMessages(Folder folder, Message[] messages) throws MessagingException
deleteMessages
in class AbstractMonitoringStrategy
folder
- the folder to delete messages frommessages
- the messages to deleteMessagingException
- in case of JavaMail errors