소스 검색

增加默认物模型接口

zhou-hao 4 년 전
부모
커밋
ed5355ad53
1개의 변경된 파일14개의 추가작업 그리고 0개의 파일을 삭제
  1. 14 0
      jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/ProtocolSupportController.java

+ 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 = "获取协议支持的传输协议")