| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface EmailExaminer
This interface provides methods for examining 
 javax.mail.Message objects. It's designed to 
 get information about bounced emails in particular via information
 found in the body or headers of the email. Each particular MTA provides
 information about the nature of the bounced email in their own format, and
 thus it is expected that an implementation of an EmailExaminer should
 be created for each specific MTA that the user is expecting to receive 
 bounced emails from.
| Field Summary | |
|---|---|
| static java.lang.String | CLASS_VERSIONClass version string | 
| Method Summary | |
|---|---|
|  java.lang.Object | examineEmail(javax.mail.Message pMessage)This is a generic method that can be used to examine a message in an implementation-specific manner and in a context that is meaningful to the developer implementing it. | 
|  java.lang.String | getBouncedEmailAddress(javax.mail.Message pMessage)Gets the email address of the bounced recipient from the given javax.mail.Message. | 
|  java.lang.String | getBouncedEnhancedStatusCode(javax.mail.Message pMessage)Gets the enhanced status code from the given bounced email. | 
|  java.lang.String | getBouncedErrorMessage(javax.mail.Message pMessage)Gets the error message from the given bounced email. | 
|  java.lang.String | getBouncedReplyCode(javax.mail.Message pMessage)Gets the reply code (RFC 821) of the given bounced message. | 
|  java.lang.String[] | getMonitoredBounceReplyCodes()Gets the reply codes that indicate an email is bounced | 
|  java.lang.String | getMTAName()Gets the name of the MTA that this examiner is valid for For example, if this returns the value "sendmail", then the user can assume that this examiner will correctly get information from bounced emails in a sendmail-based format | 
|  boolean | isBouncedEmail(javax.mail.Message pMessage)Checks the passed in javax.mail.Messageobject
 for indications that it has been bounced. | 
|  void | setMonitoredBounceReplyCodes(java.lang.String[] pReplyCodes)Sets the reply codes that indicate an email is bounced This can be any number of standard SMTP codes defined in RFC 821. | 
| Field Detail | 
|---|
static final java.lang.String CLASS_VERSION
| Method Detail | 
|---|
java.lang.String getMTAName()
void setMonitoredBounceReplyCodes(java.lang.String[] pReplyCodes)
pReplyCodes - an array of RFC 821 reply codes that, 
 if present, will indicate a message has been bouncedjava.lang.String[] getMonitoredBounceReplyCodes()
boolean isBouncedEmail(javax.mail.Message pMessage)
                       throws javax.mail.MessagingException,
                              EmailException
javax.mail.Message object
 for indications that it has been bounced. Each MTA sends
 a formatted reply for bounced emails, so this implementation
 will depend on the specific MTA examiner used.
pMessage - the message to examine
javax.mail.MessagingException - if a problem occurs while calling
 methods on the pMessage object
EmailException - if a problem occurs during the parsing
 of the content, of invalid arguments are specified
 NOTE: An exception should NOT be thrown if the given message
 is not in a format recognized by this examiner. In most cases,
 a list of examiners will be called upon to see if any consider
 the message as bounced in a given operation. Developers are
 expected to return false in this case.
java.lang.String getBouncedEmailAddress(javax.mail.Message pMessage)
                                        throws javax.mail.MessagingException,
                                               EmailException
javax.mail.Message. This address can
 be found via MTA-specific headers, or body content and is
 implementation dependent. If the passed in message has not
 been found to be bounced, this should return null.
pMessage - the bounced message to examine
pMessage
 i.e. the formatting is not what was expected, or the message
 has not been determined as bounced
javax.mail.MessagingException - if a problem occurs while calling
 methods on the pMessage object
EmailException - if a problem occurs during the parsing
 of the content, of invalid arguments are specified
 NOTE: An exception should NOT be thrown if the given message
 is not in a format recognized by this examiner. In most cases,
 a list of examiners will be called upon to see if any consider
 the message as bounced in a given operation. Developers are
 expected to return null in this case.
java.lang.String getBouncedErrorMessage(javax.mail.Message pMessage)
                                        throws javax.mail.MessagingException,
                                               EmailException
pMessage should also
 be declared as bounced before looking for the error message, otherwise
 null should be returned
pMessage - the bounced message to examine
pMessage i.e. the formatting is not what was
 expected, or the message has not been determined as bounced
javax.mail.MessagingException - if a problem occurs while calling 
 methods on the pMessage object
EmailException - if a problem occurs during the parsing
 of the content, of invalid arguments are specified
 NOTE: An exception should NOT be thrown if the given message
 is not in a format recognized by this examiner. In most cases,
 a list of examiners will be called upon to see if any consider
 the message as bounced in a given operation. Developers are expected
 to return null in this case.
java.lang.String getBouncedEnhancedStatusCode(javax.mail.Message pMessage)
                                              throws javax.mail.MessagingException,
                                                     EmailException
pMessage should also be declared as 
 bounced before looking for the status code, otherwise null should
 be returned.
pMessage - the bounced message to examine
pMessage i.e. the formatting is not what was
 expected, or the message has not been determined as bounced
javax.mail.MessagingException - if a problem occurs while calling
 methods on the pMessage object
EmailException - if a problem occurs during the parsing
 of the content, of invalid arguments are specified
 NOTE: An exception should NOT be thrown if the given message
 is not in a format recognized by this examiner. In most cases,
 a list of examiners will be called upon to see if any consider
 the message as bounced in a given operation. Developers are expected
 to return null in this case.
java.lang.String getBouncedReplyCode(javax.mail.Message pMessage)
                                     throws javax.mail.MessagingException,
                                            EmailException
getMonitoredReplyCodes
 array. The location of this code is MTA-specific and is the
 developers responsibility to determine its location in a given
 message. The passed in pMessage should also be
 declared as bounced before looking for the reply code, otherwise
 null should be returned
pMessage - the bounced message to examine
pMessage i.e. the formatting is not what was
 expected, or the message has not been determined as bounced
javax.mail.MessagingException - if a problem occurs while calling
 methods on the pMessage object
EmailException - if a problem occurs during the parsing
 of the content, of invalid arguments are specified
 NOTE: An exception should NOT be thrown if the given message
 is not in a format recognized by this examiner. In most cases,
 a list of examiners will be called upon to see if any consider
 the message as bounced in a given operation. Developers are expected
 to return null in this case.
java.lang.Object examineEmail(javax.mail.Message pMessage)
                              throws javax.mail.MessagingException,
                                     EmailException
pMessage - the message to examine
javax.mail.MessagingException - if a problem occurs while calling methods
 on the pMessage object
EmailException - if a problem occurs during the parsing
 of the content, of invalid arguments are specified| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||