azkaban源码解读(二):观察者模式在job执行过程中事件监听应用
2015-08-10 23:24
330 查看
抽象观察者
public interface EventListener { public void handleEvent(Event event); }
抽象观察主体
public class EventHandler { //持有观察者容器 private HashSet<EventListener> listeners = new HashSet<EventListener>(); public EventHandler() { } //添加观察者 public void addListener(EventListener listener) { listeners.add(listener); } //通知所有观察者 public void fireEventListeners(Event event) { ArrayList<EventListener> listeners = new ArrayList<EventListener>(this.listeners); for (EventListener listener : listeners) { listener.handleEvent(event); } } //删除观察者 public void removeListener(EventListener listener) { listeners.remove(listener); } }
阅读更多
相关文章推荐
- OpenJDK源码研究笔记(六)--观察者模式工具类(Observer和Observable)和应用示例
- Spark源码解读-JOB的提交与执行
- 利用接口实现自定义监听事件以及观察者模式
- OpenJDK源码研究笔记(六)--观察者模式工具类(Observer和Observable)和应用示例
- [转]jQuery源码解读---执行过程分析
- java设计模式--事件监听器模式和观察者模式
- Java设计模式之观察者模式的应用--简单的事件通知工具
- 前端基本知识:JS的异步模式:1、回调函数;2、事件监听;3、观察者模式;4、promise对象
- OpenJDK源码研究笔记(六)--观察者模式工具类(Observer和Observable)和应用示例
- 详解java的事件监听机制和观察者设计模式
- Android源码学习之观察者模式应用
- java设计模式--事件监听器模式和观察者模式
- Backbone源码解析(六):观察者模式应用
- 【C#】Event事件的应用之观察者模式
- java设计模式--事件监听器模式和观察者模式 .
- 观察者模式的理解(感觉还好,有时间看下 Button的监听过程)
- Azkaban的Web Server源码探究系列25: 一次性执行execute任务实际分发过程
- RxJava 源码解读分析 观察者模式
- 前端基本知识(四):JS的异步模式:1、回调函数;2、事件监听;3、观察者模式;4、promise对象
- 事件 委拖 及应用(观察者模式)