jetlinks中MQTT协议从认证到调用自定义协议包中的编解码器的逻辑分析
认证逻辑
使用MQTTX工具连接的时候,会先进入如下图所示的方法中:
这一块的代码逻辑比较简单,就是从之前发布的协议包中通过authenticate方法进行认证,最后认证结果进行下一步处理:
调用自定义协议包中的编解码器
在客户端发送数据到平台的时候,首先会进入如下代码:
走完这块代码后,会进入如图所示方法:
然而这两个图片中的方法并没有显示调用,它是怎么一个调用链呢?
这和Reactor响应式编程(发布/订阅)有关,如下图所示:
那该publishing会在哪里订阅呢,首先如下图所示:
然后再对handleAcceptedMqttConnection调用处进行订阅,如下图所示:
总结:这一部分,博主因为对响应式编程不了解,所以讲不太清一个流程,但是整体还是明白了jetLinks的逻辑意思。