Author: veithen
Date: Sun Oct  5 12:29:31 2008
New Revision: 701867

URL: http://svn.apache.org/viewvc?rev=701867&view=rev
Log:
MailTransportListener: Moved the filter on Status: RO to a more appropriate 
place.

Modified:
    
webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportListener.java

Modified: 
webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportListener.java
URL: 
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportListener.java?rev=701867&r1=701866&r2=701867&view=diff
==============================================================================
--- 
webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportListener.java
 (original)
+++ 
webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportListener.java
 Sun Oct  5 12:29:31 2008
@@ -181,8 +181,15 @@
                     }
 
                     for (int i = 0; i < total; i++) {
-
-                        if (messages[i].isSet(Flags.Flag.SEEN)) {
+                        String[] status = messages[i].getHeader("Status");
+                        if (status != null && status.length == 1 && 
status[0].equals("RO")) {
+                            // some times the mail server sends a special mail 
message which is not relavent
+                            // in processing. ignore this message.
+                            if (log.isDebugEnabled()) {
+                                log.debug("Skipping message # : " + i + " : " +
+                                        messages[i].getSubject() + " - Status: 
RO");
+                            }
+                        } else if (messages[i].isSet(Flags.Flag.SEEN)) {
                             if (log.isDebugEnabled()) {
                                 log.debug("Skipping message # : " + i + " : " +
                                     messages[i].getSubject() + " - already 
marked SEEN");
@@ -250,12 +257,6 @@
         // populate transport headers using the mail headers
         Map trpHeaders = getTransportHeaders(message, entry);
 
-        // FIXME: we should already skip these messages in the checkMail method
-        // some times the mail server sends a special mail message which is 
not relavent
-        // in processing. ignore this message.
-        if ((trpHeaders.get("Status") != null) && 
(trpHeaders.get("Status").equals("RO"))){
-            return;
-        }
         // figure out content type of primary request. If the content type is 
specified, use it
         // FIXME: shouldn't the content type always be specified by the 
message?
         String contentType = entry.getContentType();


Reply via email to