OKHttp拦截器之责任链模式
作者:互联网
OKHttp中一个比较有意思的地方就是提供了拦截器机制
说起这个拦截器,它使用了一个比较冷门的设计模式,叫责任链模式
我翻阅了若干设计模式的书籍,对责任链模式基本上都是一笔带过没有过多的描述
关于责任链模式的写法,网上有很多,大多比较简单,而OkHttp的责任链写法比较独特。下面就采用OkHttp的写法 来实现一个简单的责任链模式,理解了这个责任链模式,也就理解了OkHttp的拦截器原理
在这个示例中 我们模拟一个邮件服务器 设计若干种邮件处理器
用户选择多个邮件处理器组成一个责任链,将邮件交给该责任链之后 邮件依次使用各个处理器进行处理,得到最终的处理结果
语言过于苍白,程序员都是直接看源码,解释都写在了代码的注释里面
首先定义邮件和邮件处理器接口
|
定义链式模型中一个链条
|
定义三种邮件处理器
|
测试代码
|
输出结果
finalResult = 添加重要性标签 添加提醒 移入指定文件夹
标签:拦截器,processors,Email,责任,public,处理器,OKHttp,链条,email 来源: https://blog.csdn.net/binghelonglong123/article/details/100126726