【功能实现】IoT:增加 HttpPlugin 独立启动的 demo

This commit is contained in:
YunaiV
2025-01-20 20:02:46 +08:00
parent 3647fd3686
commit d608c4b984
5 changed files with 39 additions and 6 deletions

View File

@@ -127,7 +127,7 @@
<!-- 其他依赖项 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!-- PF4J Spring 集成 -->
<dependency>

View File

@@ -5,7 +5,9 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class HttpPluginSpringbootApplication {
public static void main(String[] args) {
SpringApplication.run(HttpPluginSpringbootApplication.class, args);
}
}

View File

@@ -0,0 +1,34 @@
package cn.iocoder.yudao.module.iot.config;
import cn.iocoder.yudao.module.iot.api.device.DeviceDataApi;
import cn.iocoder.yudao.module.iot.api.device.dto.DeviceDataCreateReqDTO;
import cn.iocoder.yudao.module.iot.plugin.HttpVertxPlugin;
import org.pf4j.DefaultPluginManager;
import org.pf4j.PluginWrapper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
// TODO 芋艿:临时实现;
@Configuration
public class TestConfiguration {
@Bean
public DeviceDataApi deviceDataApi() {
return new DeviceDataApi() {
@Override
public void saveDeviceData(DeviceDataCreateReqDTO createDTO) {
System.out.println("saveDeviceData");
}
};
}
// TODO @haohao可能要看下有没更好的方式
@Bean(initMethod = "start")
public HttpVertxPlugin HttpVertxPlugin() {
PluginWrapper pluginWrapper = new PluginWrapper(new DefaultPluginManager(), null, null, null);
return new HttpVertxPlugin(pluginWrapper);
}
}

View File

@@ -1,10 +1,7 @@
server:
port: 8092
spring:
application:
name: yudao-module-iot-http-plugin
# MQTT-RPC 配置
mqtt:
broker: tcp://chaojiniu.top:1883