package de.thedevstack.conversationsplus.services.avatar.listener; import de.thedevstack.conversationsplus.ConversationsPlusApplication; import de.thedevstack.conversationsplus.R; import de.thedevstack.conversationsplus.entities.Account; import de.thedevstack.conversationsplus.persistance.DatabaseBackend; import de.thedevstack.conversationsplus.services.avatar.AvatarCache; import de.thedevstack.conversationsplus.ui.UiCallback; import de.thedevstack.conversationsplus.xmpp.pep.Avatar; import de.thedevstack.conversationsplus.xmpp.stanzas.IqPacket; /** * */ public class PublishAvatarMetadataResponseReceived extends AbstractAvatarIqPacketReceived { public PublishAvatarMetadataResponseReceived(Avatar avatar, UiCallback uiCallback) { super(avatar, uiCallback); } @Override public void onIqPacketReceived(Account account, IqPacket result) { if (result.getType() == IqPacket.TYPE.RESULT) { if (account.setAvatar(avatar.getFilename())) { AvatarCache.clear(account); DatabaseBackend.getInstance(ConversationsPlusApplication.getAppContext()).updateAccount(account); } if (null != callback) { callback.success(avatar); } } else { if (null != callback) { callback.error(R.string.error_publish_avatar_server_reject, avatar); } } } }