Spring Integration also provides support for inbound email with the
MailReceivingMessageSource
. It delegates to a configured instance of Spring
Integration's own MailReceiver
interface, and there are two implementations:
Pop3MailReceiver
and ImapMailReceiver
. The easiest way to
instantiate either of these is by passing the 'uri' for a Mail store to the receiver's constructor. For example:
MailReceiver receiver = new Pop3MailReceiver("pop3://usr:pwd@localhost/INBOX");
Another option for receiving mail is the IMAP "idle" command (if supported by the mail server you are using).
Spring Integration provides the ImapIdleChannelAdapter
which is itself a Message-producing
endpoint. It delegates to an instance of the ImapMailReceiver
but enables asynchronous
reception of Mail Messages. There are examples in the next section of configuring both types of inbound Channel
Adapter with Spring Integration's namespace support in the 'mail' schema.