⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 streamhostprovider.java

📁 网站即时通讯系统
💻 JAVA
字号:
package com.valhalla.jbother.jabber.smack.provider;import com.valhalla.jbother.jabber.smack.*;import org.jivesoftware.smack.provider.IQProvider;import org.jivesoftware.smack.packet.IQ;import org.xmlpull.v1.XmlPullParser;/** * Created by IntelliJ IDEA. * User: luke * Date: Jan 20, 2005 * Time: 10:48:16 AM * To change this template use Options | File Templates. *//** * this class implements a provider for <streamhost> and <streamhost-used> * packets. */public class StreamhostProvider implements IQProvider{  private static String fId = "$Id$";  public static final String NAMESPACE = "http://jabber.org/protocol/bytestreams";  public IQ parseIQ(XmlPullParser parser) throws Exception  {    boolean done = false;    int port = -1;    String host = "";    String jid = "";    boolean isStreamhostUsed = false;    String sid = parser.getAttributeValue("","sid");;    while (!done) {      int eventType = parser.next();      String elementName = parser.getName();      String namespace = parser.getNamespace();      if (eventType == XmlPullParser.START_TAG)      {        if (elementName.equals("streamhost"))        {          port = Integer.parseInt(parser.getAttributeValue("","port"));          host = parser.getAttributeValue("","host");          jid = parser.getAttributeValue("","jid");          isStreamhostUsed = false;        }        else if (elementName.equals("streamhost-used"))        {          jid = parser.getAttributeValue("","jid");          isStreamhostUsed = true;        }        else if (elementName.equals("fast") && namespace.equals("http://affinix.com/jabber/stream/"))        {          // other side is Psi          // (I don't know if we can use this information)        }      }      else if (eventType == XmlPullParser.END_TAG && elementName.equals("query")) {          done = true;      }    }    if (isStreamhostUsed == true) {      return new StreamhostUsed(jid);    } else {      return new Streamhost(port,host,jid,sid);    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -