博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
org.springframework.context.event.AbstractApplicationEventMulticaster
阅读量:6069 次
发布时间:2019-06-20

本文共 2183 字,大约阅读时间需要 7 分钟。

private Collection
> retrieveApplicationListeners(ResolvableType eventType, Class
sourceType, AbstractApplicationEventMulticaster.ListenerRetriever retriever) {
LinkedList allListeners = new LinkedList(); Object beanFactory = this.retrievalMutex; LinkedHashSet listeners; LinkedHashSet listenerBeans; synchronized(this.retrievalMutex) {
listeners = new LinkedHashSet(this.defaultRetriever.applicationListeners); listenerBeans = new LinkedHashSet(this.defaultRetriever.applicationListenerBeans); } Iterator beanFactory1 = listeners.iterator(); while(beanFactory1.hasNext()) {
ApplicationListener listener = (ApplicationListener)beanFactory1.next(); if(this.supportsEvent(listener, eventType, sourceType)) {
if(retriever != null) {
retriever.applicationListeners.add(listener); } allListeners.add(listener); } } if(!listenerBeans.isEmpty()) {
BeanFactory beanFactory2 = this.getBeanFactory(); Iterator listener2 = listenerBeans.iterator(); while(listener2.hasNext()) {
String listenerBeanName = (String)listener2.next(); try {
Class listenerType = beanFactory2.getType(listenerBeanName); if(listenerType == null || this.supportsEvent(listenerType, eventType)) {
ApplicationListener listener1 = (ApplicationListener)beanFactory2.getBean(listenerBeanName, ApplicationListener.class); if(!allListeners.contains(listener1) && this.supportsEvent(listener1, eventType, sourceType)) {
if(retriever != null) {
retriever.applicationListenerBeans.add(listenerBeanName); } allListeners.add(listener1); } } } catch (NoSuchBeanDefinitionException var13) {
; } } } AnnotationAwareOrderComparator.sort(allListeners); return allListeners; }

org.springframework.context.event.AbstractApplicationEventMulticaster

 

转载地址:http://bbfgx.baihongyu.com/

你可能感兴趣的文章
Linux 安装oracle内核参数
查看>>
Oracle DG 逻辑Standby数据同步性能优化
查看>>
exchange 2010 队列删除
查看>>
android实用测试方法之Monkey与MonkeyRunner
查看>>
「翻译」逐步替换Sass
查看>>
H5实现全屏与F11全屏
查看>>
处理excel表的列
查看>>
枸杞子也能控制脂肪肝
查看>>
Excuse me?这个前端面试在搞事!
查看>>
C#数据采集类
查看>>
quicksort
查看>>
检验函数运行时间
查看>>
【BZOJ2019】nim
查看>>
Oracle临时表空间满了的解决办法
查看>>
四部曲
查看>>
LINUX内核调试过程
查看>>
【HDOJ】3553 Just a String
查看>>
Java 集合深入理解(7):ArrayList
查看>>
2019年春季学期第四周作业
查看>>
linux环境配置
查看>>