正在查看: 95爱播免登录版 v3.1.9 应用的 MetaDataUtils.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 95爱播免登录版 v3.1.9 应用的 MetaDataUtils.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package org.jivesoftware.smackx.workgroup.util;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Hashtable;
import java.util.List;
import java.util.Map;
import org.jivesoftware.smack.util.StringUtils;
import org.jivesoftware.smackx.workgroup.MetaData;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
public class MetaDataUtils {
public static Map<String, List<String>> parseMetaData(XmlPullParser xmlPullParser) throws XmlPullParserException, IOException {
if (xmlPullParser.getEventType() != 2 || !xmlPullParser.getName().equals(MetaData.ELEMENT_NAME) || !xmlPullParser.getNamespace().equals("http://jivesoftware.com/protocol/workgroup")) {
return Collections.emptyMap();
}
Hashtable hashtable = new Hashtable();
int nextTag = xmlPullParser.nextTag();
while (true) {
if (nextTag == 3 && xmlPullParser.getName().equals(MetaData.ELEMENT_NAME)) {
return hashtable;
}
String attributeValue = xmlPullParser.getAttributeValue(0);
String nextText = xmlPullParser.nextText();
if (hashtable.containsKey(attributeValue)) {
((List) hashtable.get(attributeValue)).add(nextText);
} else {
ArrayList arrayList = new ArrayList();
arrayList.add(nextText);
hashtable.put(attributeValue, arrayList);
}
nextTag = xmlPullParser.nextTag();
}
}
public static String serializeMetaData(Map<String, List<String>> map) {
StringBuilder sb = new StringBuilder();
if (map != null && map.size() > 0) {
sb.append("<metadata xmlns=\"http://jivesoftware.com/protocol/workgroup\">");
for (String str : map.keySet()) {
for (String str2 : map.get(str)) {
sb.append("<value name=\"");
sb.append(str);
sb.append("\">");
sb.append(StringUtils.escapeForXML(str2));
sb.append("</value>");
}
}
sb.append("</metadata>");
}
return sb.toString();
}
}