49 lines
1.4 KiB
Java
49 lines
1.4 KiB
Java
package com.mobai;
|
|
|
|
import com.mobai.domian.MqttServerModel;
|
|
import com.mobai.domian.Result;
|
|
import com.mobai.remote.MyClient;
|
|
import com.mobai.util.ConnectMqtt;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.boot.ApplicationArguments;
|
|
import org.springframework.boot.ApplicationRunner;
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.web.client.RestTemplate;
|
|
|
|
import javax.servlet.ServletException;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* @ClassName MqttRunner
|
|
* @Description 描述
|
|
* @Author Mobai
|
|
* @Date 2024/6/5 19:09
|
|
*/
|
|
@Component
|
|
public class MqttRunner implements ApplicationRunner {
|
|
@Autowired
|
|
private MyClient myClient;
|
|
|
|
@Autowired
|
|
private ConnectMqtt conn;
|
|
|
|
@Override
|
|
public void run(ApplicationArguments args) throws Exception {
|
|
// 获取初始服务器配置 IP + topic
|
|
Result<List<MqttServerModel>> ips = myClient.getIps();
|
|
if (ips.getData()==null){
|
|
throw new ServletException("获取初始节点信息失败");
|
|
}
|
|
System.out.println(ips);
|
|
List<MqttServerModel> mqttServerModels = ips.getData();
|
|
mqttServerModels.forEach(mqttServerModel -> {
|
|
try {
|
|
// 监控队列消息
|
|
conn.connectMq(mqttServerModel);
|
|
} catch (ServletException e) {
|
|
throw new RuntimeException(e);
|
|
}
|
|
});
|
|
}
|
|
}
|