package com.ard.utils.netty.tcp; import com.ard.alarm.radar.domain.ArdEquipRadar; import com.ard.alarm.radar.service.IArdEquipRadarService; import com.ard.utils.netty.config.NettyTcpConfiguration; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; import javax.annotation.Resource; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import static com.ard.utils.netty.tcp.RadarNettyTcpClient.RADAR_MAP; @Component @Slf4j(topic = "netty") public class NettyInit { @Resource NettyTcpConfiguration nettyTcpConfig; @Resource private RadarNettyTcpClient radarNettyTcpClient; @Resource IArdEquipRadarService ardEquipRadarService; @PostConstruct public void createRadarConnect() { try { if (!nettyTcpConfig.getEnabled()) { return; } List> list = new ArrayList<>(); List ardEquipRadars = ardEquipRadarService.selectArdEquipRadarList(new ArdEquipRadar()); for (ArdEquipRadar ardEquipRadar : ardEquipRadars) { String host = ardEquipRadar.getIp(); Integer port = Integer.valueOf(ardEquipRadar.getPort()); Map mapParam =new HashMap(); mapParam.put("IP",host); mapParam.put("PORT",port); list.add(mapParam); RADAR_MAP.put(host+":"+port,ardEquipRadar); } radarNettyTcpClient.initAllChannel(list); }catch (Exception e) { e.printStackTrace(); } } }