public class InternetAddress extends Address implements java.lang.Cloneable
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
address
The address in RFC822 format.
|
protected java.lang.String |
encodedPersonal
The personal name in RFC2047 format.
|
protected java.lang.String |
personal
The personal name as a Java String.
|
Constructor and Description |
---|
InternetAddress() |
InternetAddress(java.lang.String address) |
InternetAddress(java.lang.String address,
boolean strict) |
InternetAddress(java.lang.String address,
java.lang.String personal) |
InternetAddress(java.lang.String address,
java.lang.String personal,
java.lang.String charset) |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone()
Clone this object.
|
boolean |
equals(java.lang.Object o)
Compares two addresses for equality.
|
java.lang.String |
getAddress()
Return the address.
|
InternetAddress[] |
getGroup(boolean strict)
Return the members of a group address.
|
static InternetAddress |
getLocalAddress(Session session)
Return an InternetAddress representing the current user.
|
java.lang.String |
getPersonal()
Return the personal name.
|
java.lang.String |
getType()
Return the type of this address.
|
int |
hashCode()
Return the hashCode for this address.
|
boolean |
isGroup()
Return true is this address is an RFC822 group address in the format
phrase ":" [#mailbox] ";" . |
static InternetAddress[] |
parse(java.lang.String addresses)
Parse addresses out of the string with basic checking.
|
static InternetAddress[] |
parse(java.lang.String addresses,
boolean strict)
Parse addresses out of the string.
|
static InternetAddress[] |
parseHeader(java.lang.String addresses,
boolean strict)
Parse addresses out of the string.
|
void |
setAddress(java.lang.String address)
Set the address.
|
void |
setPersonal(java.lang.String name)
Set the personal name.
|
void |
setPersonal(java.lang.String name,
java.lang.String charset)
Set the personal name.
|
java.lang.String |
toString()
Return a string representation of this address using only US-ASCII characters.
|
static java.lang.String |
toString(Address[] addresses)
Convert the supplied addresses into a single String of comma-separated text as
produced by
toString() . |
static java.lang.String |
toString(Address[] addresses,
int used)
Convert the supplies addresses into a String of comma-separated text,
inserting line-breaks between addresses as needed to restrict the line
length to 72 characters.
|
java.lang.String |
toUnicodeString()
Return a string representation of this address using Unicode characters.
|
void |
validate()
Validate the address portion of an internet address to ensure
validity.
|
protected java.lang.String address
protected java.lang.String encodedPersonal
protected java.lang.String personal
public InternetAddress()
public InternetAddress(java.lang.String address) throws AddressException
AddressException
public InternetAddress(java.lang.String address, boolean strict) throws AddressException
AddressException
public InternetAddress(java.lang.String address, java.lang.String personal) throws java.io.UnsupportedEncodingException
java.io.UnsupportedEncodingException
public InternetAddress(java.lang.String address, java.lang.String personal, java.lang.String charset) throws java.io.UnsupportedEncodingException
java.io.UnsupportedEncodingException
public java.lang.Object clone()
clone
in class java.lang.Object
public java.lang.String getType()
public void setAddress(java.lang.String address)
address
- the address to setpublic void setPersonal(java.lang.String name, java.lang.String charset) throws java.io.UnsupportedEncodingException
name
- the new personal namecharset
- the charset to use; see MimeUtilityencodeWord
java.io.UnsupportedEncodingException
- if the name cannot be encodedpublic void setPersonal(java.lang.String name) throws java.io.UnsupportedEncodingException
MimeUtility.encodeWord(String)
; if this fails then an
UnsupportedEncodingException is thrown and no fields are modified.name
- the new personal namejava.io.UnsupportedEncodingException
- if the name cannot be encodedpublic java.lang.String getAddress()
public java.lang.String getPersonal()
MimeUtility.decodeWord(String)
; if this is sucessful, then
the personal field is updated with that value and returned; if there is a problem
decoding the text then the raw value from encodedPersonal is returned.public java.lang.String toString()
public java.lang.String toUnicodeString()
public boolean equals(java.lang.Object o)
public int hashCode()
hashCode
in class java.lang.Object
public boolean isGroup()
phrase ":" [#mailbox] ";"
.
We check this by using the presense of a ':' character in the address, and a
';' as the very last character.public InternetAddress[] getGroup(boolean strict) throws AddressException
strict
- whether strict RFC822 checking should be performedAddressException
- if there was a problem parsing the headerpublic static InternetAddress getLocalAddress(Session session)
session
- used to obtain mail propertiespublic static java.lang.String toString(Address[] addresses)
toString()
.
No line-break detection is performed.addresses
- the array of addresses to convertpublic static java.lang.String toString(Address[] addresses, int used)
addresses
- the array of addresses to convertused
- the starting columnpublic static InternetAddress[] parse(java.lang.String addresses) throws AddressException
addresses
- the addresses to parseAddressException
- if addresses checking failspublic static InternetAddress[] parse(java.lang.String addresses, boolean strict) throws AddressException
addresses
- the addresses to parsestrict
- if true perform detailed checking, if false just perform basic checkingAddressException
- if address checking failspublic static InternetAddress[] parseHeader(java.lang.String addresses, boolean strict) throws AddressException
addresses
- the addresses to parsestrict
- if true perform detailed checking, if false perform little checkingAddressException
- if address checking failspublic void validate() throws AddressException
AddressException