|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.mailet.MailAddress
public class MailAddress
A representation of an email address.
This class encapsulates functionalities to access to different parts of an email address without dealing with its parsing.
A MailAddress is an address specified in the MAIL FROM and RCPT TO commands in SMTP sessions. These are either passed by an external server to the mailet-compliant SMTP server, or they are created programmatically by the mailet-compliant server to send to another (external) SMTP server. Mailets and matchers use the MailAddress for the purpose of evaluating the sender and recipient(s) of a message.
MailAddress parses an email address as defined in RFC 821
(SMTP) p. 30 and 31 where addresses are defined in BNF convention.
As the mailet API does not support the aged "SMTP-relayed mail"
addressing protocol, this leaves all addresses to be a
This class is a good way to validate email addresses as there are some valid addresses which would fail with a simpler approach to parsing address. It also removes parsing burden from mailets and matchers that might not realize the flexibility of an SMTP address. For instance, "serge@home"@lokitech.com is a valid SMTP address (the quoted text serge@home is the user and lokitech.com is the host). This means all current parsing to date is incorrect as we just find the first @ and use that to separate user from host.
This parses an address as per the BNF specification for
Field Summary | |
---|---|
static long |
serialVersionUID
|
Constructor Summary | |
---|---|
MailAddress(javax.mail.internet.InternetAddress address)
Constructs a MailAddress from a JavaMail InternetAddress, using only the email address portion, discarding the personal name. |
|
MailAddress(java.lang.String address)
Construct a MailAddress parsing the provided String object. |
|
MailAddress(java.lang.String newUser,
java.lang.String newHost)
Construct a MailAddress with the provided personal name and email address. |
Method Summary | |
---|---|
boolean |
equals(java.lang.Object obj)
|
java.lang.String |
getHost()
Return the host part. |
java.lang.String |
getUser()
Return the user part. |
int |
hashCode()
Return a hashCode for this object which should be identical for addresses which are equivalent. |
javax.mail.internet.InternetAddress |
toInternetAddress()
Return MailAddress as InternetAddress |
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final long serialVersionUID
Constructor Detail |
---|
public MailAddress(java.lang.String address) throws javax.mail.internet.ParseException
Construct a MailAddress parsing the provided String
object.
The personal
variable is left empty.
address
- the email address compliant to the RFC822 format
javax.mail.internet.ParseException
- if the parse failedpublic MailAddress(java.lang.String newUser, java.lang.String newHost) throws javax.mail.internet.ParseException
user
- the username or account name on the mail serverhost
- the server that should accept messages for this user
javax.mail.internet.ParseException
- if the parse failedpublic MailAddress(javax.mail.internet.InternetAddress address) throws javax.mail.internet.ParseException
javax.mail.internet.ParseException
Method Detail |
---|
public java.lang.String getHost()
String
object representing the host part
of this email address. If the host is of the dotNum form
(e.g. [yyy.yyy.yyy.yyy]) then strip the braces first.public java.lang.String getUser()
String
object representing the user part
of this email address.
AddressException
- if the parse failedpublic java.lang.String toString()
toString
in class java.lang.Object
public javax.mail.internet.InternetAddress toInternetAddress()
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |