package asmack.org.jivesoftware.smackx.packet; import asmack.org.jivesoftware.smack.packet.PacketExtension; import asmack.org.jivesoftware.smack.provider.PacketExtensionProvider; import asmack.org.jivesoftware.smackx.ChatState; import org.xmlpull.v1.XmlPullParser; public class ChatStateExtension implements PacketExtension { private ChatState state; public static class Provider implements PacketExtensionProvider { @Override // asmack.org.jivesoftware.smack.provider.PacketExtensionProvider public PacketExtension parseExtension(XmlPullParser xmlPullParser) throws Exception { ChatState chatState; try { chatState = ChatState.valueOf(xmlPullParser.getName()); } catch (Exception unused) { chatState = ChatState.active; } return new ChatStateExtension(chatState); } } public ChatStateExtension(ChatState chatState) { this.state = chatState; } @Override // asmack.org.jivesoftware.smack.packet.PacketExtension public String getElementName() { return this.state.name(); } @Override // asmack.org.jivesoftware.smack.packet.PacketExtension public String getNamespace() { return "http://jabber.org/protocol/chatstates"; } @Override // asmack.org.jivesoftware.smack.packet.PacketExtension public String toXML() { return "<" + getElementName() + " xmlns=\"" + getNamespace() + "\" />"; } }