导航菜单

页面标题

页面副标题

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

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

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


package org.jivesoftware.smackx.workgroup.packet;

import java.text.SimpleDateFormat;
import java.util.Date;
import org.jivesoftware.smack.packet.PacketExtension;
import org.jivesoftware.smack.provider.PacketExtensionProvider;
import org.jivesoftware.smackx.workgroup.agent.WorkgroupQueue;
import org.xmlpull.v1.XmlPullParser;

public class QueueOverview implements PacketExtension {
    private static final String DATE_FORMAT = "yyyyMMdd'T'HH:mm:ss";
    public static String ELEMENT_NAME = "notify-queue";
    public static String NAMESPACE = "http://jabber.org/protocol/workgroup";
    private SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
    private int averageWaitTime = -1;
    private Date oldestEntry = null;
    private int userCount = -1;
    private WorkgroupQueue.Status status = null;

    public static class Provider implements PacketExtensionProvider {
        public PacketExtension parseExtension(XmlPullParser xmlPullParser) throws Exception {
            xmlPullParser.getEventType();
            QueueOverview queueOverview = new QueueOverview();
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat(QueueOverview.DATE_FORMAT);
            int next = xmlPullParser.next();
            while (true) {
                if (next == 3 && QueueOverview.ELEMENT_NAME.equals(xmlPullParser.getName())) {
                    return queueOverview;
                }
                if ("count".equals(xmlPullParser.getName())) {
                    queueOverview.setUserCount(Integer.parseInt(xmlPullParser.nextText()));
                } else if ("time".equals(xmlPullParser.getName())) {
                    queueOverview.setAverageWaitTime(Integer.parseInt(xmlPullParser.nextText()));
                } else if ("oldest".equals(xmlPullParser.getName())) {
                    queueOverview.setOldestEntry(simpleDateFormat.parse(xmlPullParser.nextText()));
                } else if ("status".equals(xmlPullParser.getName())) {
                    queueOverview.setStatus(WorkgroupQueue.Status.fromString(xmlPullParser.nextText()));
                }
                next = xmlPullParser.next();
            }
        }
    }

    QueueOverview() {
    }

    public int getAverageWaitTime() {
        return this.averageWaitTime;
    }

    public String getElementName() {
        return ELEMENT_NAME;
    }

    public String getNamespace() {
        return NAMESPACE;
    }

    public Date getOldestEntry() {
        return this.oldestEntry;
    }

    public WorkgroupQueue.Status getStatus() {
        return this.status;
    }

    public int getUserCount() {
        return this.userCount;
    }

    void setAverageWaitTime(int i) {
        this.averageWaitTime = i;
    }

    void setOldestEntry(Date date) {
        this.oldestEntry = date;
    }

    void setStatus(WorkgroupQueue.Status status) {
        this.status = status;
    }

    void setUserCount(int i) {
        this.userCount = i;
    }

    public String toXML() {
        StringBuilder sb = new StringBuilder();
        sb.append("<");
        sb.append(ELEMENT_NAME);
        sb.append(" xmlns=\"");
        sb.append(NAMESPACE);
        sb.append("\">");
        if (this.userCount != -1) {
            sb.append("<count>");
            sb.append(this.userCount);
            sb.append("</count>");
        }
        if (this.oldestEntry != null) {
            sb.append("<oldest>");
            sb.append(this.dateFormat.format(this.oldestEntry));
            sb.append("</oldest>");
        }
        if (this.averageWaitTime != -1) {
            sb.append("<time>");
            sb.append(this.averageWaitTime);
            sb.append("</time>");
        }
        if (this.status != null) {
            sb.append("<status>");
            sb.append(this.status);
            sb.append("</status>");
        }
        sb.append("</");
        sb.append(ELEMENT_NAME);
        sb.append(">");
        return sb.toString();
    }
}