package org.jeecg.boot.starter.rabbitmq.event; import cn.hutool.core.util.ObjectUtil; import org.jeecg.common.util.SpringContextHolder; import org.springframework.context.ApplicationListener; import org.springframework.stereotype.Component; /** * 监听远程事件,并分发消息到业务模块消息处理器 */ @Component public class BaseApplicationEvent implements ApplicationListener { @Override public void onApplicationEvent(JeecgRemoteApplicationEvent jeecgRemoteApplicationEvent) { EventObj eventObj = jeecgRemoteApplicationEvent.getEventObj(); if (ObjectUtil.isNotEmpty(eventObj)) { //获取业务模块消息处理器 JeecgBusEventHandler busEventHandler = SpringContextHolder.getHandler(eventObj.getHandlerName(), JeecgBusEventHandler.class); if (ObjectUtil.isNotEmpty(busEventHandler)) { //通知业务模块 busEventHandler.onMessage(eventObj); } } } }