瀏覽代碼

增加默认物模型接口

zhou-hao 4 年之前
父節點
當前提交
ed5355ad53

+ 14 - 0
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/ProtocolSupportController.java

@@ -102,6 +102,20 @@ public class ProtocolSupportController
             .flatMap(support -> support.getConfigMetadata(transport));
     }
 
+    @GetMapping("/{id}/{transport}/metadata")
+    @QueryAction
+    @Authorize(merge = false)
+    @Operation(summary = "获取协议设置的默认物模型")
+    public Mono<String> getDefaultMetadata(@PathVariable @Parameter(description = "协议ID") String id,
+                                           @PathVariable @Parameter(description = "传输协议") DefaultTransport transport) {
+        return protocolSupports
+            .getProtocol(id)
+            .flatMap(support ->support
+                .getDefaultMetadata(transport)
+                .flatMap(metadata-> support.getMetadataCodec().encode(metadata))
+            ).defaultIfEmpty("{}");
+    }
+
     @GetMapping("/{id}/transports")
     @Authorize(merge = false)
     @Operation(summary = "获取协议支持的传输协议")