zoukankan      html  css  js  c++  java
  • OpenFire源码学习之二十六:Spark&Tinder

    因为这两块比较简单,内容也比较少。所以就放一块了。

    Spark

    这里的spark是指openfire的一个客户端,并非目前非常流行的大数据计算框架spark

    Spark页面图:

    Spark的源码构建

    Spark的源码构建和openfire都差不多。

    也都非常的简单。源码目录如下:

    Spark也是用ant来编译源码的

    源码启动类:

    Tinder

    Tinderopenfire官网对xmpp协议做的一个java对象封装。其中源码的内容也不多。下面是一张源码结构图:

    下面略略的看看里面的源码。首先看看Packet这个类。 位于org.xmpp.packet下。这里是xmpp消息包的基本属性配置。比如to、from、id、error等。他有三个大的分类,如图:

    IQ又生出了不通的类型。比如type

    public enum Type {
    
            /**
             * The IQ is a request for information or requirements.
             */
            get,
    
            /**
             * The IQ provides required data, sets new values, or
             * replaces existing values.
             */
            set,
    
            /**
             * The IQ is a response to a successful get or set request.
             */
            result,
    
            /**
             * An error has occurred regarding processing or delivery of a
             * previously-sent get or set.
             */
            error;
    
       }

    在之前,我有写过不同的消息类型比如“sgo”其实这之类的拓展都是基于修改这些包里面的类容就行了。

    关于JID的拓展

    private final String node;

    private final String domain;

    private final String resource;

    默认情况下有三个属性,如何添加新的属性就比较简单了吧。按照上面任意一个属性添加到相关的方法即可。



  • 相关阅读:
    vue-cil和webpack中本地静态图片的路径问题解决方案
    vue-cil 中的配置分析
    webpack中mainifest.js vendor.js app.js 三者的区别
    css 中可以继承的属性
    有关正则表达式的Js方法(replace)
    css 常用的几种垂直居中(包括图片)
    如何在Vue中建立全局引用或者全局命令
    删除数组中多个不连续的数组元素的正确姿势
    数据库
    代码片段
  • 原文地址:https://www.cnblogs.com/huwf/p/4273342.html
Copyright © 2011-2022 走看看