Tigase插件 – 编写插件
本文翻译自 – http://www.tigase.org/content/writing-plugin-code 上一篇文章描述了XMPP stanza如何在session manager当中被处理。处理分为四个步骤,每个步骤都有相对应类型的插件负责处理。 第一步 – 预处理 – XMPPPreprocessorIfc:这是预处理器插件需要实现的接口 第二步 – 处理 – XMPPProcessorIfc:这是处理器插件需要实现的接口 第三步 – 投递 – XMPPPostProcessorIfc:这是投递处理器插件需要实现的接口 第四步 – 过滤 – XMPPPacketFilterIfc:这是结果过滤器插件需要实现的接口 如果你已经看过这四个接口的代码,你会发现每个接口都只有一个方法需要实现。没错,这个方法就是处理packet的地方它们具有非常相似的入口参数,下面对这些参数进行介绍: Packet packet – 需要被处理的packet,这个参数不可以为null。即使这个对象不是immutable的,在方法里也不能对它进行修改。它的任何一个变亮都不能发生改变。 XMPPResourceConnection session – session里面包含所有的用户会话数据和访问用户数据库的方法。它允许向持久化数据库中存储信息,但如果用户在线只允许向内存中存储数据。在方法调用时