/**
* Combine user identity information into an appropriately formatted string.
* @param displayName The user's name (optional).
* @param emailAddress The user's email address (optional).
* @param username The user's username (optional).
* @param userIdentifier A unique identifier for the user (optional).
* @return A non-<CODE>null</CODE> user identity string.
*/
public String getIdentityString(String displayName, String emailAddress,
String username, String userIdentifier) {
// Create a buffer with which to generate the identity string.
StringBuffer buffer = new StringBuffer();
// Define the values and delimiters of each of the string's elements.
String values = { displayName, emailAddress,
username, userIdentifier };
char delimiters = { { '"', '"' }, { '<', '>' },
{ '(', ')' }, { '[', ']' } };
// Add each element to the buffer, escaping
// and delimiting them appropriately.
for (int i = 0; i < values.length; ++i) {
if (values[i] != null) {
if (buffer.length() > 0) buffer.append(' ');
buffer.append(delimiters[i][0]);
for (int j = 0, n = values[i].length(); j < n; ++j) {
char c = values[i].charAt(j);
if (c == delimiters[i][1] || c == '\\') buffer.append('\\');
buffer.append(c);
}
buffer.append(delimiters[i][1]);
}
}
// Return the generated string.
return buffer.toString();
} |
© 2009 Apple Inc. All Rights Reserved. (Last updated: 2009-11-04)