package com.tievd.cube.modules.system.listener; import com.tievd.cube.modules.system.service.ISysGatewayRouteService; import lombok.extern.slf4j.Slf4j; import com.tievd.cube.commons.constant.CacheConst; import com.tievd.cube.application.config.condition.CloudModeCondition; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.context.event.ApplicationReadyEvent; import org.springframework.context.ApplicationListener; import org.springframework.context.annotation.Conditional; import org.springframework.core.Ordered; import org.springframework.stereotype.Component; /** * 启动程序,初始化路由配置 * * @author flyme * @version 1.1.2 * @since 2020-11-22 */ @Slf4j @Component @Conditional(CloudModeCondition.class) public class SystemInitListener implements ApplicationListener, Ordered { @Autowired private ISysGatewayRouteService sysGatewayRouteService; @Override public void onApplicationEvent(ApplicationReadyEvent applicationReadyEvent) { log.info("服务已启动,初始化路由配置!"); if (applicationReadyEvent.getApplicationContext().getDisplayName().contains("AnnotationConfigServletWebServerApplicationContext")) { sysGatewayRouteService.addRoute2Redis(CacheConst.GATEWAY_ROUTES); } } @Override public int getOrder() { return 1; } }