javax.mail.internet
class: UniqueValue [javadoc |
source]
java.lang.Object
javax.mail.internet.UniqueValue
This is a utility class that generates unique values. The generated
String contains only US-ASCII characters and hence is safe for use
in RFC822 headers.
This is a package private class.
- author:
John - Mani
- author:
Max - Spivak
- author:
Bill - Shannon
| Method from javax.mail.internet.UniqueValue Detail: |
public static String getUniqueBoundaryValue() {
StringBuffer s = new StringBuffer();
// Unique string is ----=_Part_< part >_< hashcode >.< currentTime >
s.append("----=_Part_").append(getUniqueId()).append("_").
append(s.hashCode()).append('.").
append(System.currentTimeMillis());
return s.toString();
}
Get a unique value for use in a multipart boundary string.
This implementation generates it by concatenating a global
part number, a newly created object's hashCode(),
and the current time (in milliseconds). |
public static String getUniqueMessageIDValue(Session ssn) {
String suffix = null;
InternetAddress addr = InternetAddress.getLocalAddress(ssn);
if (addr != null)
suffix = addr.getAddress();
else {
suffix = "javamailuser@localhost"; // worst-case default
}
StringBuffer s = new StringBuffer();
// Unique string is < hashcode >.< id >.< currentTime >.JavaMail.< suffix >
s.append(s.hashCode()).append('.").append(getUniqueId()).append('.").
append(System.currentTimeMillis()).append('.").
append("JavaMail.").
append(suffix);
return s.toString();
}
Get a unique value for use in a Message-ID.
This implementation generates it by concatenating a newly
created object's hashCode(), a global ID
(incremented on every use), the current
time (in milliseconds), the string "JavaMail", and
this user's local address generated by
InternetAddress.getLocalAddress().
(The address defaults to "javamailuser@localhost" if
getLocalAddress() returns null.) |