美文网首页
责任链模式(Chain of Responsibility)

责任链模式(Chain of Responsibility)

作者: gbmaotai | 来源:发表于2019-05-28 17:44 被阅读0次

模型

输入:Request
处理:Handler =>Handler => Handler的Chain
目的:输入和处理解耦

客户: 只需要将请求发送到责任链上即可,无须关心请求的处理细节和请求的传递。
链: 1.链上的处理,某一节点可以处理完退出,不往下传递
2.可以多个链拼接
3.可以增加删除节点,扩展方便

实例

Key(input event) 的处理

按键或其他Input Event 在接受到之后会一层层向上传递,直到可以处理

InputStage syntheticStage = new SyntheticInputStage();
InputStage viewPostImeStage = new ViewPostImeInputStage(syntheticStage);
InputStage nativePostImeStage = new NativePostImeInputStage(viewPostImeStage,
                        "aq:native-post-ime:" + counterSuffix);
InputStage earlyPostImeStage = new EarlyPostImeInputStage(nativePostImeStage);
InputStage imeStage = new ImeInputStage(earlyPostImeStage,
                        "aq:ime:" + counterSuffix);
InputStage viewPreImeStage = new ViewPreImeInputStage(imeStage);
                InputStage nativePreImeStage = new NativePreImeInputStage(viewPreImeStage,
                        "aq:native-pre-ime:" + counterSuffix);

mFirstInputStage = nativePreImeStage;
mFirstPostImeInputStage = earlyPostImeStage;
servlet 中过滤器Filter

实现一个Filter, FilterChain

public void doFilter(ServletRequest request, ServletResponse response) 

相关文章

网友评论

      本文标题:责任链模式(Chain of Responsibility)

      本文链接:https://www.haomeiwen.com/subject/udfjtctx.html