From 5b6578645e8243b55e5d4f85233ee1e3265e10b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=AF=BB=E6=AC=A2?= <1101766085@qq.com> Date: Tue, 24 Aug 2021 17:06:27 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E4=BF=AE=E5=A4=8D=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E7=9A=84=E6=B6=88=E6=81=AF=E8=BD=AC=E5=8F=91=E5=99=A8=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispatcher/AbstractMqttMessageDispatcher.java | 6 +++++- .../server/support/DefaultMqttMessageDispatcher.java | 11 ++--------- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/dispatcher/AbstractMqttMessageDispatcher.java b/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/dispatcher/AbstractMqttMessageDispatcher.java index 7a53f06..ec286b2 100644 --- a/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/dispatcher/AbstractMqttMessageDispatcher.java +++ b/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/dispatcher/AbstractMqttMessageDispatcher.java @@ -58,13 +58,17 @@ public abstract class AbstractMqttMessageDispatcher implements IMqttMessageDispa @Override public boolean send(Message message) { Objects.requireNonNull(mqttServer, "MqttServer require not Null."); + // 1. 先发送到本服务 + ByteBuffer payload = ByteBuffer.wrap(message.getPayload()); + MqttQoS qoS = MqttQoS.valueOf(message.getQos()); + mqttServer.publishAll(message.getTopic(), payload, qoS); return sendAll(message); } @Override public boolean send(String clientId, Message message) { Objects.requireNonNull(mqttServer, "MqttServer require not Null."); - // 判断如果 clientId 就在本服务 + // 1. 判断如果 clientId 就在本服务,存在则发送 ServerTioConfig config = this.mqttServer.getServerConfig(); ChannelContext context = Tio.getByBsId(config, clientId); if (context != null) { diff --git a/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/support/DefaultMqttMessageDispatcher.java b/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/support/DefaultMqttMessageDispatcher.java index 678122d..99ce00d 100644 --- a/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/support/DefaultMqttMessageDispatcher.java +++ b/mica-mqtt-core/src/main/java/net/dreamlu/iot/mqtt/core/server/support/DefaultMqttMessageDispatcher.java @@ -16,12 +16,9 @@ package net.dreamlu.iot.mqtt.core.server.support; -import net.dreamlu.iot.mqtt.codec.MqttQoS; import net.dreamlu.iot.mqtt.core.server.dispatcher.AbstractMqttMessageDispatcher; import net.dreamlu.iot.mqtt.core.server.model.Message; -import java.nio.ByteBuffer; - /** * 默认的消息转发器 * @@ -31,16 +28,12 @@ public class DefaultMqttMessageDispatcher extends AbstractMqttMessageDispatcher @Override public boolean sendAll(Message message) { - ByteBuffer payload = ByteBuffer.wrap(message.getPayload()); - MqttQoS qoS = MqttQoS.valueOf(message.getQos()); - return mqttServer.publishAll(message.getTopic(), payload, qoS); + return true; } @Override public boolean sendTo(String clientId, Message message) { - ByteBuffer payload = ByteBuffer.wrap(message.getPayload()); - MqttQoS qoS = MqttQoS.valueOf(message.getQos()); - return mqttServer.publish(clientId, message.getTopic(), payload, qoS); + return true; } } -- GitLab