Document how an Avatar can be removed from a vCard. Add a convenience method.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13585 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
Florian Schmaus 2013-03-23 00:30:44 +00:00 committed by flow
parent ebfe3e69ed
commit 374a12b73a
1 changed files with 13 additions and 13 deletions

View File

@ -338,22 +338,22 @@ public class VCard extends IQ {
}
/**
* Specify the bytes for the avatar to use.
* Removes the avatar from the vCard
*
* @param bytes the bytes of the avatar.
* This is done by setting the PHOTO value to the empty string as defined in XEP-0153
*/
public void removeAvatar() {
setAvatar(null, "image/jpeg");
}
/**
* Specify the bytes for the avatar to use.
* If bytes is null, then the avatar will be removed.
*
* @param bytes the bytes of the avatar, or null to remove the avatar data
*/
public void setAvatar(byte[] bytes) {
if (bytes == null) {
// Remove avatar (if any) from mappings
otherUnescapableFields.remove("PHOTO");
return;
}
// Otherwise, add to mappings.
String encodedImage = StringUtils.encodeBase64(bytes);
avatar = encodedImage;
setField("PHOTO", "<TYPE>image/jpeg</TYPE><BINVAL>" + encodedImage + "</BINVAL>", true);
setAvatar(bytes, "image/jpeg");
}
/**