认识smack中的基本对象 - 接口PacketFilter
来源:互联网 发布:linux mysql启动命令 编辑:程序博客网 时间:2024/05/22 06:33
一 接口PacketFilter的介绍
该接口定义了一种过滤packet对象的方法,对于一个packet结果集,只取具有指定属性的子集。该接口主要用于创建packet的监听器(listener)和收集器(collector),通过PacketFilter对监听器和收集器需要处理的packet进行过滤,让他们去处理指定的一部分packet。
Smack中已经预定义了一些基本的packet过滤器,也就是继承该接口的子类:AndFilter,FromContainsFilter,FromMatchesFilter,IQTypeFilter, MessageTypeFilter, NotFilter, OrFilter, PacketExtensionFilter, PacketIDFilter, PacketTypeFilter, ThreadFilter, ToContainsFilter。这些过滤器又可以通过AndFilter和OrFilter进行组合,从而构造一些更复杂的过滤器。通过实现该接口,用户还可以自定义过滤器。
二使用示例
下面的示例所创建的过滤器,就只保留指定ID的packet。其实现方法:使用匿名内部类定义一个PacketFilter,需要实现其accept方法,返回布尔值表示是否符合匹配条件,创建好的packetFilter接口可以被用于创建PacketCollector对象,有关PacketCollector对象的介绍,参见后文。
// Use an anonymous inner class to define a packet filter that returns // all packets that have a packet ID of "RS145". PacketFilter myFilter = new PacketFilter() { public boolean accept(Packet packet) { return "RS145".equals(packet.getPacketID()); } }; // Create a new packet collector using the filter we created. PacketCollector myCollector = packetReader.createPacketCollector(myFilter);
原文:http://www.igniterealtime.org/builds/smack/docs/3.2.2/javadoc/index.html?org/jivesoftware/smack/AccountManager.html
- 认识smack中的基本对象 - 接口PacketFilter
- 认识smack中的基本对象 - 接口PacketFilter
- 认识smack中的基本对象
- 认识smack中的基本对象 - PacketCollector对象
- 认识smack中的基本对象 - Roster对象
- 认识smack中的基本对象 - Presence对象
- 认识smack中的基本对象 - Presence对象
- 认识smack中的基本对象 - Roster对象
- 认识smack中的基本对象-Packet
- 认识smack中的基本对象-IQ
- 认识smack中的基本对象 - Registration
- 认识smack中的基本对象 - Registration
- 认识smack中的基本对象-Packet
- 认识smack中的基本对象 - Registration
- 认识smack4.1.4基本对象——StanzaFilter接口
- java中的接口认识
- C#面向对象基本认识
- 认识Javascript中的Document对象
- 帮助快速生成页面固定显示元素的jQuery插件 - sticky-kit
- 运算符优先级
- 丢失或损坏NDF文件如何附加数据库
- winform 分页
- 求二进制数中1的个数
- 认识smack中的基本对象 - 接口PacketFilter
- 寻找发帖“水王”
- MySQL基础入门:MySQL简介、安装、配置
- float类型的值后要加f
- LWIP互联网资料汇总
- 保证只创建一次
- 刘强东“反腐”:贪10万,我花一千万也要把你查出来!
- telerik:RadGrid导出Excel隐藏列
- 寻找最大的K个数