正在查看: 95爱播免登录版 v3.1.9 应用的 Bytestream.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 95爱播免登录版 v3.1.9 应用的 Bytestream.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package org.jivesoftware.smackx.bytestreams.socks5.packet;
import com.zego.zegoavkit2.ZegoConstants;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.jivesoftware.smack.packet.IQ;
import org.jivesoftware.smack.packet.PacketExtension;
public class Bytestream extends IQ {
private String sessionID;
private Activate toActivate;
private StreamHostUsed usedHost;
private Mode mode = Mode.tcp;
private final List<StreamHost> streamHosts = new ArrayList();
public static class Activate implements PacketExtension {
public static String ELEMENTNAME = "activate";
public String NAMESPACE = "";
private final String target;
public Activate(String str) {
this.target = str;
}
@Override
public String getElementName() {
return ELEMENTNAME;
}
@Override
public String getNamespace() {
return this.NAMESPACE;
}
public String getTarget() {
return this.target;
}
@Override
public String toXML() {
return "<" + getElementName() + ">" + getTarget() + "</" + getElementName() + ">";
}
}
public enum Mode {
tcp,
udp;
public static Mode fromName(String str) {
try {
return valueOf(str);
} catch (Exception unused) {
return tcp;
}
}
public static Mode[] valuesCustom() {
Mode[] valuesCustom = values();
int length = valuesCustom.length;
Mode[] modeArr = new Mode[length];
System.arraycopy(valuesCustom, 0, modeArr, 0, length);
return modeArr;
}
}
public static class StreamHost implements PacketExtension {
public static String ELEMENTNAME = "streamhost";
public static String NAMESPACE = "";
private final String JID;
private final String addy;
private int port = 0;
public StreamHost(String str, String str2) {
this.JID = str;
this.addy = str2;
}
public String getAddress() {
return this.addy;
}
@Override
public String getElementName() {
return ELEMENTNAME;
}
public String getJID() {
return this.JID;
}
@Override
public String getNamespace() {
return NAMESPACE;
}
public int getPort() {
return this.port;
}
public void setPort(int i2) {
this.port = i2;
}
@Override
public String toXML() {
StringBuilder sb = new StringBuilder();
sb.append("<");
sb.append(getElementName());
sb.append(ZegoConstants.ZegoVideoDataAuxPublishingStream);
sb.append("jid=\"");
sb.append(getJID());
sb.append("\" ");
sb.append("host=\"");
sb.append(getAddress());
sb.append("\" ");
if (getPort() != 0) {
sb.append("port=\"");
sb.append(getPort());
sb.append("\"");
} else {
sb.append("zeroconf=\"_jabber.bytestreams\"");
}
sb.append("/>");
return sb.toString();
}
}
public static class StreamHostUsed implements PacketExtension {
public static String ELEMENTNAME = "streamhost-used";
private final String JID;
public String NAMESPACE = "";
public StreamHostUsed(String str) {
this.JID = str;
}
@Override
public String getElementName() {
return ELEMENTNAME;
}
public String getJID() {
return this.JID;
}
@Override
public String getNamespace() {
return this.NAMESPACE;
}
@Override
public String toXML() {
return "<" + getElementName() + ZegoConstants.ZegoVideoDataAuxPublishingStream + "jid=\"" + getJID() + "\" />";
}
}
public Bytestream() {
}
public StreamHost addStreamHost(String str, String str2) {
return addStreamHost(str, str2, 0);
}
public int countStreamHosts() {
return this.streamHosts.size();
}
@Override
public String getChildElementXML() {
StringBuilder sb = new StringBuilder();
sb.append("<query xmlns=\"http://jabber.org/protocol/bytestreams\"");
if (getType().equals(IQ.Type.SET)) {
if (getSessionID() != null) {
sb.append(" sid=\"");
sb.append(getSessionID());
sb.append("\"");
}
if (getMode() != null) {
sb.append(" mode = \"");
sb.append(getMode());
sb.append("\"");
}
sb.append(">");
if (getToActivate() == null) {
Iterator<StreamHost> it = getStreamHosts().iterator();
while (it.hasNext()) {
sb.append(it.next().toXML());
}
} else {
sb.append(getToActivate().toXML());
}
} else {
if (!getType().equals(IQ.Type.RESULT)) {
if (!getType().equals(IQ.Type.GET)) {
return null;
}
sb.append("/>");
return sb.toString();
}
sb.append(">");
if (getUsedHost() != null) {
sb.append(getUsedHost().toXML());
} else if (countStreamHosts() > 0) {
Iterator<StreamHost> it2 = this.streamHosts.iterator();
while (it2.hasNext()) {
sb.append(it2.next().toXML());
}
}
}
sb.append("</query>");
return sb.toString();
}
public Mode getMode() {
return this.mode;
}
public String getSessionID() {
return this.sessionID;
}
public StreamHost getStreamHost(String str) {
if (str == null) {
return null;
}
for (StreamHost streamHost : this.streamHosts) {
if (streamHost.getJID().equals(str)) {
return streamHost;
}
}
return null;
}
public Collection<StreamHost> getStreamHosts() {
return Collections.unmodifiableCollection(this.streamHosts);
}
public Activate getToActivate() {
return this.toActivate;
}
public StreamHostUsed getUsedHost() {
return this.usedHost;
}
public void setMode(Mode mode) {
this.mode = mode;
}
public void setSessionID(String str) {
this.sessionID = str;
}
public void setToActivate(String str) {
this.toActivate = new Activate(str);
}
public void setUsedHost(String str) {
this.usedHost = new StreamHostUsed(str);
}
public StreamHost addStreamHost(String str, String str2, int i2) {
StreamHost streamHost = new StreamHost(str, str2);
streamHost.setPort(i2);
addStreamHost(streamHost);
return streamHost;
}
public Bytestream(String str) {
setSessionID(str);
}
public void addStreamHost(StreamHost streamHost) {
this.streamHosts.add(streamHost);
}
}