`
jishuaige
  • 浏览: 10540 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

mina源码中的疑问之---过滤器

    博客分类:
  • mina
阅读更多
最近在研究mina的源码,看到了过滤器这块,有个疑问在源码中没有找到答案,因此在这里请教一下各位同事。


疑问:
        使用mina作为服务器。调用NioSocketAcceptor类的方法getFilterChain()方法的时候,获取的是DefaultIoFilterChainBuilder类。把过滤器的类添加到DefaultIoFilterChainBuilder中。
       但是在mina中AbstractPollingIoProcessor类的内部类Processor的process()--->read()方法中:

                IoFilterChain filterChain = session.getFilterChain();
                filterChain.fireMessageReceived(buf);
        以上代码获取的filter是DefaultIoFilterChain类。大概大家看网上对mina的过滤器的介绍大不部分都是在说此类。


这样用户使用和mina内部使用的过滤器链不一样,或者说它们是怎么结合起来的。这里小弟在源码中没有找到答案,这里发出来,大家可以一起讨论一下!
分享到:
评论

相关推荐

    mina源码+例子mina-2.0.0-M6.zip

    5. **丰富的过滤器链**:MINA中的过滤器链机制允许在数据传输过程中添加自定义处理逻辑,例如数据编码解码、安全加密、压缩等。 6. **跨平台兼容**:由于MINA是用Java编写的,因此它可以在任何支持Java的平台上运行...

    mina-core-2.0.0-RC1

    - **过滤器体系**:MINA的IoFilter机制允许开发者插入自定义过滤器,实现数据的预处理或后处理,增强了灵活性和可扩展性。 - **异步模型**:MINA基于NIO(非阻塞I/O)实现,提供异步的网络通信,能更好地利用系统...

    apache-mina源码

    在这个"apache-mina源码"中,我们可以深入理解MINA的设计原理和实现细节。 MINA的核心概念包括: 1. **IoSession**:IoSession是MINA中的核心组件,代表了服务端和客户端之间的连接。它包含了会话的状态信息,如...

    MINA-2.0.0-M3

    在实际开发中,MINA源码的学习可以帮助我们更好地理解和优化网络应用的性能,例如,通过调整过滤器链的顺序和逻辑,可以实现更高效的通信流程。同时,对于网络编程和Java NIO的理解也会得到提升。 标签中的"Socket...

    apache-mina-2.0.16-jar包-代码.zip

    压缩包子文件的文件名称列表中只有一个条目:"apache-mina-2.0.16-jar包-代码",这意味着压缩包内仅包含Apache Mina 2.0.16的源码JAR文件。开发者通常会用这个文件来导入到IDE中,例如Eclipse或IntelliJ IDEA,然后...

    Mina 框架源码解析-构建简单通信程序

    `FilterChain`是Mina的过滤器链,它允许我们在数据传输过程中添加自定义的处理逻辑。每个过滤器都可以对输入数据进行修改,或者根据需要触发事件。`ProtocolDecoder`和`ProtocolEncoder`负责将网络数据流转换为应用...

    MINA源码与例子

    在MINA源码中,我们可以看到以下关键组件: 1. **Session**:这是MINA中的核心概念,代表了网络连接。Session负责管理连接状态,并提供读写数据的方法。 2. **Filter Chain**:MINA采用过滤器链模式来处理网络事件...

    apache-mina-3.0.0-M2-src.zip

    3. **丰富的过滤器体系**:MINA采用过滤器链的设计模式,允许开发者插入自定义的过滤器来处理输入和输出数据,实现数据编码、解码、安全加密等功能。 4. **多协议支持**:MINA可以轻松地支持各种网络协议,如TCP、...

    Mina源码解析

    Mina的核心设计理念之一是过滤器链(Filter Chain),它借鉴了Servlet的过滤器模型。每个过滤器都可以在数据传输过程中进行拦截和处理,如数据编码、解码、安全检查等。过滤器之间通过`Filter.nextFilter`方法串联...

    MINA 协议解码过滤器

    在`mina src`压缩包中,可能包含MINA框架的源代码,你可以通过阅读这些源码来深入理解MINA的工作原理,特别是过滤器和解码器的实现。这对于学习MINA、理解和定制自己的网络服务非常有帮助。同时,结合提供的博客链接...

    MINA 2.0.0-M6

    3. 新的过滤器和事件:MINA中的过滤器机制允许开发者在数据传输过程中添加自定义逻辑。M6可能添加了新的过滤器类型,增强了事件处理能力。 4. 问题修复:通常,每个milestone版本都会解决前一版本中报告的问题,M6也...

    mina 源码

    深入研究"apache-mina-2.0.4"源码,我们可以学习到MINA如何实现非阻塞I/O,过滤器链的构建和事件传播机制,以及如何定制和扩展MINA以满足特定需求。例如,可以查看IoSession的实现,了解其如何管理会话状态;研究...

    MINA源码分析,内涵类的讲解

    总结来说,MINA源码分析涉及了网络编程的基础概念,包括异步事件驱动、过滤器链、编码解码、会话管理等多个方面。通过深入理解这些核心组件,开发者可以更加灵活地构建高并发、高性能的网络应用。同时,MINA的源码也...

    深入理解Apache Mina (2)---- 与IoFilter相关的几个类

    在Apache Mina框架中,IoFilter是核心组件之一,用于拦截和过滤I/O操作中的各种信息,可以类比于Servlet中的过滤器。这些过滤器提供了强大的机制来控制数据的传输和处理流程。Apache Mina的IoFilter主要有以下作用:...

    apache-mina-2.0.7-src.zip

    通过研究这个源代码,开发者可以学习到MINA如何实现非阻塞I/O,如何利用事件驱动模型提高性能,以及如何通过过滤器链处理网络数据。同时,源码也是理解网络编程和协议处理的一个宝贵资源,对于提升Java网络应用开发...

    MINA 2.0.9源码

    通过阅读MINA 2.0.9的源码,你可以了解如何实现高效的网络通信,包括事件驱动的设计模式、多线程处理、数据包的拆分和组合,以及如何利用过滤器链实现复杂的功能。此外,源码分析还能帮助你掌握如何自定义Filter和...

    apache-mina-2.0.7架包与源码

    结合源码,开发者可以根据自己的需求定制MINA的行为,如添加新的过滤器、优化性能或调试潜在问题。 总之,Apache MINA 2.0.7版的二进制包和源码提供了全面的工具集,帮助开发者构建高效、灵活且可扩展的网络应用...

    Mina2源码分析

    6. **IoFilterChain**:为每个会话提供过滤器链,由IoFilterChainBuilder构建。 7. **广播消息**:支持向所有会话广播消息,并返回一个WriteFuture集合。 8. **IoSessionDataStructureFactory**:为IoSession提供...

    mina2 源码 mina

    3. **IoFilter**和**FilterChain**:MINA使用过滤器链来处理数据,允许在数据传输前或后进行预处理或后处理。IoFilter接口定义了过滤器的行为,而FilterChain则负责管理过滤器的执行顺序。 4. **ProtocolCodec**:...

Global site tag (gtag.js) - Google Analytics