org.ow2.petals.bc.mail.service.consume
Class ExternalEventPoller

java.lang.Object
  extended by java.util.TimerTask
      extended by org.ow2.petals.bc.mail.service.consume.ExternalEventPoller
All Implemented Interfaces:
java.lang.Runnable

public class ExternalEventPoller
extends java.util.TimerTask

This class is used to monitor a mailbox for new mails (accept() method). It acts as a Listener. After new mail retrieval, the listener calls a 'process(MimeMessage)' method on the MimeMessageManager, which acts as a handler of MimeMessages.

Author:
Adrien LOUIS - EBMWebSourcing, ofabre - EBM Websourcing

Field Summary
protected  ConsumeDescriptor consumeDescriptor
           
protected  org.ow2.petals.component.framework.jbidescriptor.generated.Consumes consumes
           
protected  java.util.logging.Logger logger
           
protected  MailSessionManager mailSessionManager
           
 
Constructor Summary
ExternalEventPoller(java.util.logging.Logger log, ExternalListener externalListener, org.ow2.petals.component.framework.jbidescriptor.generated.Consumes consumes, ConsumeDescriptor consumeDescriptor, MailSessionManager mailSessionManager)
          Instantiate a ExternalEventPoller for a specific address
 
Method Summary
 java.util.logging.Logger getLogger()
           
 void run()
          Create mail store and folder.
 
Methods inherited from class java.util.TimerTask
cancel, scheduledExecutionTime
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected final transient java.util.logging.Logger logger

mailSessionManager

protected transient MailSessionManager mailSessionManager

consumes

protected transient org.ow2.petals.component.framework.jbidescriptor.generated.Consumes consumes

consumeDescriptor

protected transient ConsumeDescriptor consumeDescriptor
Constructor Detail

ExternalEventPoller

public ExternalEventPoller(java.util.logging.Logger log,
                           ExternalListener externalListener,
                           org.ow2.petals.component.framework.jbidescriptor.generated.Consumes consumes,
                           ConsumeDescriptor consumeDescriptor,
                           MailSessionManager mailSessionManager)
Instantiate a ExternalEventPoller for a specific address

Parameters:
externalListener - the external listener for a given consumes
log - the component logger
consumeDescriptor - information about the mail session to open
mailSessionManager - the MailSessionManager
Method Detail

getLogger

public java.util.logging.Logger getLogger()

run

public void run()
Create mail store and folder. Retrieve new mails and process them. Mail store and folder are opened (connected) and closed each time the run method is called. If the processing of a message fails, it is skipped and the processing of other messages continue. All processed messages are deleted from the folder.

Specified by:
run in interface java.lang.Runnable
Specified by:
run in class java.util.TimerTask


Copyright © 2005-2011 Petals Link (EBM Websourcing). All Rights Reserved.