org.springframework.integration.adapter.mail.monitor
Class Pop3PollingMonitoringStrategy
java.lang.Object
org.springframework.integration.adapter.mail.monitor.AbstractMonitoringStrategy
org.springframework.integration.adapter.mail.monitor.PollingMonitoringStrategy
org.springframework.integration.adapter.mail.monitor.Pop3PollingMonitoringStrategy
- All Implemented Interfaces:
- MonitoringStrategy
public class Pop3PollingMonitoringStrategy
- extends PollingMonitoringStrategy
Implementation of the 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.
- Author:
- Arjen Poutsma
Method Summary |
protected void |
deleteMessages(javax.mail.Folder folder,
javax.mail.Message[] messages)
Deletes the given messages from the given folder, and closes it to expunge deleted messages. |
protected javax.mail.Message[] |
searchForNewMessages(javax.mail.Folder folder)
Simply returns Folder.getMessages() . |
void |
setDeleteMessages(boolean deleteMessages)
Sets whether messages should be marked as DELETED after they have been
read. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Pop3PollingMonitoringStrategy
public Pop3PollingMonitoringStrategy()
setDeleteMessages
public void setDeleteMessages(boolean deleteMessages)
- Description copied from class:
AbstractMonitoringStrategy
- Sets whether messages should be marked as
DELETED
after they have been
read. Default is true
.
- Overrides:
setDeleteMessages
in class AbstractMonitoringStrategy
searchForNewMessages
protected javax.mail.Message[] searchForNewMessages(javax.mail.Folder folder)
throws javax.mail.MessagingException
- Simply returns
Folder.getMessages()
.
- Overrides:
searchForNewMessages
in class AbstractMonitoringStrategy
- Parameters:
folder
- the folder to retrieve new messages from
- Returns:
- the new messages
- Throws:
javax.mail.MessagingException
- in case of JavaMail errors
deleteMessages
protected void deleteMessages(javax.mail.Folder folder,
javax.mail.Message[] messages)
throws javax.mail.MessagingException
- Deletes the given messages from the given folder, and closes it to expunge deleted messages.
- Overrides:
deleteMessages
in class AbstractMonitoringStrategy
- Parameters:
folder
- the folder to delete messages frommessages
- the messages to delete
- Throws:
javax.mail.MessagingException
- in case of JavaMail errors