导航菜单

页面标题

页面副标题

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

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

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


package org.jivesoftware.smackx.workgroup.ext.macros;

import java.io.StringReader;
import org.jivesoftware.smack.packet.IQ;
import org.jivesoftware.smack.provider.IQProvider;
import org.jivesoftware.smack.util.StringUtils;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;

public class Macros extends IQ {
    public static final String ELEMENT_NAME = "macros";
    public static final String NAMESPACE = "http://jivesoftware.com/protocol/workgroup";
    private boolean personal;
    private MacroGroup personalMacroGroup;
    private MacroGroup rootGroup;

    public static class InternalProvider implements IQProvider {
        public IQ parseIQ(XmlPullParser xmlPullParser) throws Exception {
            Macros macros = new Macros();
            boolean z = false;
            while (!z) {
                int next = xmlPullParser.next();
                if (next == 2) {
                    if (xmlPullParser.getName().equals("model")) {
                        macros.setRootGroup(parseMacroGroups(xmlPullParser.nextText()));
                    }
                } else if (next == 3 && xmlPullParser.getName().equals(Macros.ELEMENT_NAME)) {
                    z = true;
                }
            }
            return macros;
        }

        public Macro parseMacro(XmlPullParser xmlPullParser) throws Exception {
            Macro macro = new Macro();
            boolean z = false;
            while (!z) {
                int next = xmlPullParser.next();
                if (next == 2) {
                    if (xmlPullParser.getName().equals("title")) {
                        xmlPullParser.next();
                        macro.setTitle(xmlPullParser.getText());
                    } else if (xmlPullParser.getName().equals("description")) {
                        macro.setDescription(xmlPullParser.nextText());
                    } else if (xmlPullParser.getName().equals("response")) {
                        macro.setResponse(xmlPullParser.nextText());
                    } else if (xmlPullParser.getName().equals("type")) {
                        macro.setType(Integer.valueOf(xmlPullParser.nextText()).intValue());
                    }
                } else if (next == 3 && xmlPullParser.getName().equals("macro")) {
                    z = true;
                }
            }
            return macro;
        }

        public MacroGroup parseMacroGroup(XmlPullParser xmlPullParser) throws Exception {
            MacroGroup macroGroup = new MacroGroup();
            boolean z = false;
            while (!z) {
                int next = xmlPullParser.next();
                if (next == 2) {
                    if (xmlPullParser.getName().equals("macrogroup")) {
                        macroGroup.addMacroGroup(parseMacroGroup(xmlPullParser));
                    }
                    if (xmlPullParser.getName().equals("title")) {
                        macroGroup.setTitle(xmlPullParser.nextText());
                    }
                    if (xmlPullParser.getName().equals("macro")) {
                        macroGroup.addMacro(parseMacro(xmlPullParser));
                    }
                } else if (next == 3 && xmlPullParser.getName().equals("macrogroup")) {
                    z = true;
                }
            }
            return macroGroup;
        }

        public MacroGroup parseMacroGroups(String str) throws Exception {
            XmlPullParser newPullParser = XmlPullParserFactory.newInstance().newPullParser();
            newPullParser.setInput(new StringReader(str));
            int eventType = newPullParser.getEventType();
            MacroGroup macroGroup = null;
            while (eventType != 1) {
                eventType = newPullParser.next();
                if (eventType == 2 && newPullParser.getName().equals("macrogroup")) {
                    macroGroup = parseMacroGroup(newPullParser);
                }
            }
            return macroGroup;
        }
    }

    public String getChildElementXML() {
        StringBuilder sb = new StringBuilder();
        sb.append("<");
        sb.append(ELEMENT_NAME);
        sb.append(" xmlns=\"");
        sb.append("http://jivesoftware.com/protocol/workgroup");
        sb.append("\">");
        if (isPersonal()) {
            sb.append("<personal>true</personal>");
        }
        if (getPersonalMacroGroup() != null) {
            sb.append("<personalMacro>");
            sb.append(StringUtils.escapeForXML(getPersonalMacroGroup().toXML()));
            sb.append("</personalMacro>");
        }
        sb.append("</");
        sb.append(ELEMENT_NAME);
        sb.append("> ");
        return sb.toString();
    }

    public MacroGroup getPersonalMacroGroup() {
        return this.personalMacroGroup;
    }

    public MacroGroup getRootGroup() {
        return this.rootGroup;
    }

    public boolean isPersonal() {
        return this.personal;
    }

    public void setPersonal(boolean z) {
        this.personal = z;
    }

    public void setPersonalMacroGroup(MacroGroup macroGroup) {
        this.personalMacroGroup = macroGroup;
    }

    public void setRootGroup(MacroGroup macroGroup) {
        this.rootGroup = macroGroup;
    }
}