You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mirae-dev@ws.apache.org by ia...@apache.org on 2005/10/27 08:08:42 UTC

svn commit: r328798 - /webservices/mirae/trunk/src/mirae/ws/org/apache/mirae/ws/MailAgent.java

Author: ias
Date: Wed Oct 26 23:08:36 2005
New Revision: 328798

URL: http://svn.apache.org/viewcvs?rev=328798&view=rev
Log:
Improve by using Message-ID header.

Modified:
    webservices/mirae/trunk/src/mirae/ws/org/apache/mirae/ws/MailAgent.java

Modified: webservices/mirae/trunk/src/mirae/ws/org/apache/mirae/ws/MailAgent.java
URL: http://svn.apache.org/viewcvs/webservices/mirae/trunk/src/mirae/ws/org/apache/mirae/ws/MailAgent.java?rev=328798&r1=328797&r2=328798&view=diff
==============================================================================
--- webservices/mirae/trunk/src/mirae/ws/org/apache/mirae/ws/MailAgent.java (original)
+++ webservices/mirae/trunk/src/mirae/ws/org/apache/mirae/ws/MailAgent.java Wed Oct 26 23:08:36 2005
@@ -72,16 +72,16 @@
             while (true) {
                 for (int i = 0; i < pop3Client.getMessageCount(); i++) {
                     Message message = pop3Client.getHeaders(i);
-                    String subject = message.getHeaderValue("Subject",
-                            "No subject");
-                    // message.getHeaderValue("From", "No sender");
-                    for (Enumeration e = requests.keys(); e.hasMoreElements();) {
-                        String receivedId = (String) e.nextElement();
-                        if (subject.endsWith(receivedId)) {
-                            OperationMail request = (OperationMail) requests
-                                    .get(receivedId);
-                            request.callBack(message);
-                            requests.remove(request);
+                    String inReplyTo = message.getHeaderValue("In-Reply-To");
+                    if (inReplyTo != null) {
+                        for (Enumeration e = requests.keys(); e.hasMoreElements();) {
+                            String sentMessageId = (String) e.nextElement();
+                            if (inReplyTo.endsWith(sentMessageId)) {
+                                OperationMail request = (OperationMail) requests
+                                .get(sentMessageId);
+                                request.callBack(message);
+                                requests.remove(request);
+                            }
                         }
                     }
                 }
@@ -106,19 +106,13 @@
             }
 
             smtpClient.sendMessage(message);
-            requests.put(subject, call);
+            requests.put(message.getHeaderValue("Message-ID"), call);
         } catch (IOException e) {
             e.printStackTrace();
         } catch (MailException e) {
             e.printStackTrace();
         } finally {
-            try {
-                smtpClient.close();
-            } catch (IOException e) {
-                e.printStackTrace();
-            } catch (MailException e) {
-                e.printStackTrace();
-            }
+            smtpClient.close();
         }
     }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: mirae-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: mirae-dev-help@ws.apache.org