فهرست منبع

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

YunaiV 6 ماه پیش
والد
کامیت
d608c4b984

+ 1 - 1
yudao-dependencies/pom.xml

@@ -67,7 +67,7 @@
         <bizlog-sdk.version>3.0.6</bizlog-sdk.version>
         <mqtt.version>1.2.5</mqtt.version>
         <pf4j-spring.version>0.9.0</pf4j-spring.version>
-        <vertx.version>4.4.0</vertx.version>
+        <vertx.version>4.5.11</vertx.version>
         <!-- 三方云服务相关 -->
         <okio.version>3.5.0</okio.version>
         <okhttp3.version>4.11.0</okhttp3.version>

+ 1 - 1
yudao-module-iot/yudao-module-iot-plugin/yudao-module-iot-http-plugin/pom.xml

@@ -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>

+ 2 - 0
yudao-module-iot/yudao-module-iot-plugin/yudao-module-iot-http-plugin/src/main/java/cn/iocoder/yudao/module/iot/HttpPluginSpringbootApplication.java

@@ -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);
     }
+
 }

+ 34 - 0
yudao-module-iot/yudao-module-iot-plugin/yudao-module-iot-http-plugin/src/main/java/cn/iocoder/yudao/module/iot/config/TestConfiguration.java

@@ -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);
+    }
+
+}

+ 1 - 4
yudao-module-iot/yudao-module-iot-plugin/yudao-module-iot-http-plugin/src/main/resources/application.yml

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