blob: 4cf944745f73c5238623c98a78df4e91eeec235d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package de.thedevstack.conversationsplus.xmpp.avatar;
import de.thedevstack.conversationsplus.xml.Element;
import de.thedevstack.conversationsplus.dto.Avatar;
import de.thedevstack.conversationsplus.xmpp.stanzas.PresencePacket;
/**
*/
public final class AvatarVcardParser {
private AvatarVcardParser() {}
public static Avatar parseVcardPresenceInformation(PresencePacket packet) {
return AvatarVcardParser.parsePresence(packet.findChild("x", "vcard-temp:x:update"));
}
public static Avatar parsePresence(Element x) {
String hash = (x == null) ? null : x.findChildContent("photo");
if (hash == null) {
return null;
}
if (!Avatar.isValidSHA1(hash)) {
return null;
}
Avatar avatar = new Avatar();
avatar.sha1sum = hash;
avatar.origin = Avatar.Origin.VCARD;
return avatar;
}
}
|