package de.thedevstack.conversationsplus.xmpp.avatar; import de.thedevstack.conversationsplus.xml.Element; import de.thedevstack.conversationsplus.xmpp.pep.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; } }