带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(3)

简介: 带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(3)

带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(2)

https://developer.aliyun.com/article/1339676?groupCode=taobaotech


实现原理

 

业务接口通过生成的Pipeline构造实现,Pipeline负责责任链的组装及调用链表的首个节点(head)。首个节点如果    处理完成有返回值,则直接返回;否则传递给下一个节点。如果处理到最后一个节点(tail)返回仍然为空,则直接返  回空。

image.png

 

 

 

以获取配置为例:

 

image.png

 

 

image.png用 户 实 现 :

image.pngConfigSource

image.png用户自定义的 获取配置的接口

image.pngHandler实现:

image.pngMapConfigSourceHandler 、 SystemConfigSourceHandler

image.pngAutoPipeline生成

image.pngConfigSourcePipeline

image.png含义:责任链管道

image.png核心作用:将ConfigSourceHandler 串联成链表

image.pngConfigSourceHandlerContext

image.png含义:Handler的上下文,相比传统责任链,新增了获取全局Pipeline的能力

image.pngAbstractConfigSourceHandlerContext

image.png含义:Handler的上下文的抽象类

image.png数据结构:主要由三个部分组成:pre、next、handler

image.png核心作用:通过handler().get(key , findNextCtx()) 实现了 String get(String key) 方法

image.pngDefaultConfigSourceHandlerContext

image.png持有ConfigSourceHandler对象的默认实现类

 

 

带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(4)https://developer.aliyun.com/article/1339674?groupCode=taobaotech

相关文章
|
9月前
|
设计模式 Java Maven
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(1)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(1)
|
9月前
|
移动中间件 网络协议 容灾
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(10)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(10)
|
9月前
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(4)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(4)
|
9月前
|
存储 Java API
带你读《2022技术人的百宝黑皮书》——开发规约的意义与细则(4)
带你读《2022技术人的百宝黑皮书》——开发规约的意义与细则(4)
带你读《2022技术人的百宝黑皮书》——开发规约的意义与细则(4)
|
9月前
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(9)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(9)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(9)
|
9月前
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(7)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(7)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(7)
|
9月前
|
IDE 前端开发 Java
带你读《2022技术人的百宝黑皮书》——开发规约的意义与细则(6)
带你读《2022技术人的百宝黑皮书》——开发规约的意义与细则(6)
带你读《2022技术人的百宝黑皮书》——开发规约的意义与细则(6)
|
9月前
|
Java Maven
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(6)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(6)
|
9月前
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(2)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(2)
|
9月前
|
Java
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(5)
带你读《2022技术人的百宝黑皮书》——一个搞定责任链的注解(5)