From 163f08aff534df4250a984b58183553b05f55995 Mon Sep 17 00:00:00 2001 From: Vincent Date: Fri, 22 Sep 2023 20:48:19 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20MqttGatewayPublish#publish()=20log.debug?= =?UTF-8?q?=20=E6=9C=AA=E5=88=A4=E5=AE=9AisDebugEnable=20feat:=20add=20rem?= =?UTF-8?q?ark=20on=20ServicesPublish?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java | 8 ++++++-- .../com/dji/sdk/mqtt/services/ServicesPublish.java | 10 ++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java b/src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java index f04336b..956e200 100644 --- a/src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java +++ b/src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java @@ -41,7 +41,9 @@ public class MqttGatewayPublish { public void publish(String topic, int qos, CommonTopicRequest request) { try { - log.debug("send topic: {}, payload: {}", topic, request.toString()); + if(log.isDebugEnabled()) { + log.debug("send topic: {}, payload: {}", topic, request.toString()); + } byte[] payload = Common.getObjectMapper().writeValueAsBytes(request); messageGateway.publish(topic, payload, qos); } catch (JsonProcessingException e) { @@ -52,7 +54,9 @@ public class MqttGatewayPublish { public void publish(String topic, int qos, CommonTopicResponse response) { try { - log.debug("send topic: {}, payload: {}", topic, response.toString()); + if(log.isDebugEnabled()) { + log.debug("send topic: {}, payload: {}", topic, response.toString()); + } byte[] payload = Common.getObjectMapper().writeValueAsBytes(response); messageGateway.publish(topic, payload, qos); } catch (JsonProcessingException e) { diff --git a/src/main/java/com/dji/sdk/mqtt/services/ServicesPublish.java b/src/main/java/com/dji/sdk/mqtt/services/ServicesPublish.java index 6528453..d554365 100644 --- a/src/main/java/com/dji/sdk/mqtt/services/ServicesPublish.java +++ b/src/main/java/com/dji/sdk/mqtt/services/ServicesPublish.java @@ -94,6 +94,16 @@ public class ServicesPublish { */ } + /** + * Remark by witcom@2023.09.22 + * TODO: 在贡献的版本到这里就不再往下修改了,需要修改所有AbstractXXXService和AOP,改动量很大 + * 主要思想是 + * 1.提供异步支持 + * 2.Chan的实现可由用户自定义 + * 3.提供发送选项参数 + * 4.提供发送前,接收后钩子用于记录请求和返回接近最原始的记录 + */ + public CompletableFuture>> publish(TypeReference clazz, String sn, String method, Object data, Consumer options){ String topic = TopicConst.THING_MODEL_PRE + TopicConst.PRODUCT + Objects.requireNonNull(sn) + TopicConst.SERVICES_SUF; return gatewayPublish.publishWithReply(ServicesReplyReceiver.class, topic, new TopicServicesRequest<>()