导航菜单

页面标题

页面副标题

95爱播免登录版 v3.1.9 - AgentStatusRequest.java 源代码

正在查看: 95爱播免登录版 v3.1.9 应用的 AgentStatusRequest.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package org.jivesoftware.smackx.workgroup.packet;

import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
import org.jivesoftware.smack.packet.IQ;
import org.jivesoftware.smack.provider.IQProvider;
import org.xmlpull.v1.XmlPullParser;

public class AgentStatusRequest extends IQ {
    public static final String ELEMENT_NAME = "agent-status-request";
    public static final String NAMESPACE = "http://jabber.org/protocol/workgroup";
    private Set<Item> agents = new HashSet();

    public static class Item {
        private String jid;
        private String name;
        private String type;

        public Item(String str, String str2, String str3) {
            this.jid = str;
            this.type = str2;
            this.name = str3;
        }

        public String getJID() {
            return this.jid;
        }

        public String getName() {
            return this.name;
        }

        public String getType() {
            return this.type;
        }
    }

    public static class Provider implements IQProvider {
        private Item parseAgent(XmlPullParser xmlPullParser) throws Exception {
            String attributeValue = xmlPullParser.getAttributeValue("", "jid");
            String attributeValue2 = xmlPullParser.getAttributeValue("", "type");
            boolean z = false;
            String str = null;
            while (!z) {
                int next = xmlPullParser.next();
                if (next == 2 && "name".equals(xmlPullParser.getName())) {
                    str = xmlPullParser.nextText();
                } else if (next == 3 && "agent".equals(xmlPullParser.getName())) {
                    z = true;
                }
            }
            return new Item(attributeValue, attributeValue2, str);
        }

        public IQ parseIQ(XmlPullParser xmlPullParser) throws Exception {
            AgentStatusRequest agentStatusRequest = new AgentStatusRequest();
            if (xmlPullParser.getEventType() != 2) {
                throw new IllegalStateException("Parser not in proper position, or bad XML.");
            }
            boolean z = false;
            while (!z) {
                int next = xmlPullParser.next();
                if (next == 2 && "agent".equals(xmlPullParser.getName())) {
                    agentStatusRequest.agents.add(parseAgent(xmlPullParser));
                } else if (next == 3 && AgentStatusRequest.ELEMENT_NAME.equals(xmlPullParser.getName())) {
                    z = true;
                }
            }
            return agentStatusRequest;
        }
    }

    public int getAgentCount() {
        return this.agents.size();
    }

    public Set<Item> getAgents() {
        return Collections.unmodifiableSet(this.agents);
    }

    public String getChildElementXML() {
        StringBuilder sb = new StringBuilder();
        sb.append("<");
        sb.append(ELEMENT_NAME);
        sb.append(" xmlns=\"");
        sb.append("http://jabber.org/protocol/workgroup");
        sb.append("\">");
        synchronized (this.agents) {
            for (Item item : this.agents) {
                sb.append("<agent jid=\"");
                sb.append(item.getJID());
                sb.append("\">");
                if (item.getName() != null) {
                    sb.append("<name xmlns=\"http://jivesoftware.com/protocol/workgroup\">");
                    sb.append(item.getName());
                    sb.append("</name>");
                }
                sb.append("</agent>");
            }
        }
        sb.append("</");
        sb.append(getElementName());
        sb.append("> ");
        return sb.toString();
    }

    public String getElementName() {
        return ELEMENT_NAME;
    }

    public String getNamespace() {
        return "http://jabber.org/protocol/workgroup";
    }
}