javax.mail.internet
Class InternetAddress
- Cloneable, Serializable
public class InternetAddress
implements Cloneable
An RFC 822 address.
protected String | address - The string representation of the address.
|
protected String | encodedPersonal - The RFC 2047 encoded version of the personal name.
|
protected String | personal - The personal name.
|
InternetAddress() - Constructor for an empty address.
|
InternetAddress(String address) - Constructor with an RFC 822 string representation of the address.
|
InternetAddress(String address, String personal) - Constructor with an address and personal name.
|
InternetAddress(String address, String personal, String charset) - Construct with an address and personal name.
|
InternetAddress(String address, boolean strict) - Constructor with an RFC 822 string representation of the address.
|
Object | clone() - Returns a copy of this address.
|
boolean | equals(Object other)
|
String | getAddress() - Returns the email address.
|
InternetAddress[] | getGroup(boolean strict) - Returns the members of a group address.
|
static InternetAddress | getLocalAddress(Session session) - Returns an InternetAddress object representing the current user.
|
String | getPersonal() - Returns the personal name.
|
String | getType() - Returns the type of this address.
|
int | hashCode()
|
boolean | isGroup() - Indicates whether this address is an RFC 822 group address.
|
static InternetAddress[] | parse(String addresslist) - Parses the given comma-separated sequence of RFC 822 addresses into
InternetAddresses.
|
static InternetAddress[] | parse(String addresslist, boolean strict) - Parses the given comma-separated sequence of RFC 822 addresses into
InternetAddresses.
|
static InternetAddress[] | parseHeader(String addresslist, boolean strict) - Parses the given comma-separated sequence of RFC 822 addresses into
InternetAddresses.
|
void | setAddress(String address) - Sets the email address.
|
void | setPersonal(String name) - Sets the personal name.
|
void | setPersonal(String name, String charset) - Sets the personal name.
|
String | toString() - Returns the RFC 822 / RFC 2047 string representation of this address.
|
static String | toString(Address[] addresses) - Converts the given array of InternetAddresses into a comma-separated
sequence of address strings.
|
static String | toString(Address[] addresses, int used) - Converts the given array of InternetAddresses into a comma-separated
sequence of address strings.
|
String | toUnicodeString() - Returns the RFC 822 string representation of this address.
|
void | validate() - Validate this address according to the syntax rules of RFC 822.
|
address
protected String address
The string representation of the address.
encodedPersonal
protected String encodedPersonal
The RFC 2047 encoded version of the personal name.
personal
protected String personal
The personal name.
InternetAddress
public InternetAddress()
Constructor for an empty address.
InternetAddress
public InternetAddress(String address)
throws AddressException
Constructor with an RFC 822 string representation of the address.
Note that this parses the address in non-strict mode: this is for
compatibility with implementations and not with the JavaMail
specification.
address
- the address in RFC 822 format
InternetAddress
public InternetAddress(String address,
String personal)
throws UnsupportedEncodingException
Constructor with an address and personal name.
The address is assumed to be syntactically valid according to RFC 822.
address
- the address in RFC 822 formatpersonal
- the personal name
InternetAddress
public InternetAddress(String address,
String personal,
String charset)
throws UnsupportedEncodingException
Construct with an address and personal name.
The address is assumed to be syntactically valid according to RFC 822.
address
- the address in RFC 822 formatpersonal
- the personal namecharset
- the charset for the personal name
InternetAddress
public InternetAddress(String address,
boolean strict)
throws AddressException
Constructor with an RFC 822 string representation of the address.
address
- the address in RFC 822 formatstrict
- enforce RFC 822 syntax
clone
public Object clone()
Returns a copy of this address.
equals
public boolean equals(Object other)
- equals in interface Address
getAddress
public String getAddress()
Returns the email address.
getGroup
public InternetAddress[] getGroup(boolean strict)
throws AddressException
Returns the members of a group address. A group may have any number of
members. If this address is not a group, this method returns
null
.
getLocalAddress
public static InternetAddress getLocalAddress(Session session)
Returns an InternetAddress object representing the current user.
This information is determined from the following locations, in order
of preference:
- the session property
mail.from
- the session properties
mail.user
or
user.name
, and mail.host
- the system property
user.name
and the hostname of
localhost as determined by InetAddress.getLocalHost
getPersonal
public String getPersonal()
Returns the personal name.
getType
public String getType()
Returns the type of this address.
The type of an InternetAddress
is "rfc822".
- getType in interface Address
hashCode
public int hashCode()
isGroup
public boolean isGroup()
Indicates whether this address is an RFC 822 group address.
Group addresses are not mailing list addresses and are rarely used;
see RFC 822 for details.
parse
public static InternetAddress[] parse(String addresslist)
throws AddressException
Parses the given comma-separated sequence of RFC 822 addresses into
InternetAddresses.
addresslist
- the comma-separated addresses
parse
public static InternetAddress[] parse(String addresslist,
boolean strict)
throws AddressException
Parses the given comma-separated sequence of RFC 822 addresses into
InternetAddresses.
If strict
is false, simple email addresses separated by
spaces are also allowed. If strict
is true, many (but not
all) of the RFC 822 syntax rules are enforced.
Even if strict
is true, addresses composed of simple
names (with no "@domain" part) are allowed.
addresslist
- the comma-separated addressesstrict
- whether to enforce RFC 822 syntax
parseHeader
public static InternetAddress[] parseHeader(String addresslist,
boolean strict)
throws AddressException
Parses the given comma-separated sequence of RFC 822 addresses into
InternetAddresses.
If strict
is false, simple email addresses separated by
spaces are also allowed. If strict
is true, many (but not
all) of the RFC 822 syntax rules are enforced.
addresslist
- the comma-separated addressesstrict
- whether to enforce RFC 822 syntax
setAddress
public void setAddress(String address)
Sets the email address.
setPersonal
public void setPersonal(String name)
throws UnsupportedEncodingException
Sets the personal name.
If the name contains non US-ASCII characters, it will be encoded using
the platform default charset.
setPersonal
public void setPersonal(String name,
String charset)
throws UnsupportedEncodingException
Sets the personal name.
If the name contains non US-ASCII characters, it will be encoded using
the specified charset as per RFC 2047.
name
- the personal namecharset
- the charset to be used for any encoding
toString
public String toString()
Returns the RFC 822 / RFC 2047 string representation of this address.
The resulting string contains only US-ASCII characters,
and is therefore mail-safe.
- toString in interface Address
toString
public static String toString(Address[] addresses)
Converts the given array of InternetAddresses into a comma-separated
sequence of address strings.
The resulting string contains only US-ASCII characters,
and is therefore mail-safe.
addresses
- the InternetAddresses
toString
public static String toString(Address[] addresses,
int used)
Converts the given array of InternetAddresses into a comma-separated
sequence of address strings.
The resulting string contains only US-ASCII characters,
and is therefore mail-safe.
addresses
- the InternetAddressesused
- the number of character positions already used, in the
field into which the address string is to be inserted
toUnicodeString
public String toUnicodeString()
Returns the RFC 822 string representation of this address.
The returned string may contain unencoded Unicode characters and may
therefore not be mail-safe.
validate
public void validate()
throws AddressException
Validate this address according to the syntax rules of RFC 822.
This implementation checks many but not all of the syntax rules.
© Copyright 2003, 2004
The Free Software Foundation, All rights reserved