소스 검색

add MessageType

18339543638 4 년 전
부모
커밋
d7df8676ba

+ 0 - 6
jetlinks-components/network-component/network-core/src/main/java/org/jetlinks/community/support/JetLinksExtendMqttDeviceMessageCodec.java

@@ -1,6 +1,5 @@
 package org.jetlinks.community.support;
 
-import cn.hutool.core.util.EnumUtil;
 import cn.hutool.core.util.HexUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
@@ -8,7 +7,6 @@ import com.alibaba.fastjson.JSONObject;
 import io.netty.buffer.Unpooled;
 import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
-import org.jetlinks.community.support.message.DirectMessage;
 import org.jetlinks.core.device.DeviceConfigKey;
 import org.jetlinks.core.message.*;
 import org.jetlinks.core.message.codec.*;
@@ -93,8 +91,4 @@ public class JetLinksExtendMqttDeviceMessageCodec extends JetlinksExtendTopicMes
             return decode(topic, object).getMessage();
         });
     }
-
-    public static void main(String[] args) {
-        String pattern="/**/**/direct";
-    }
 }

+ 0 - 3
jetlinks-components/network-component/network-core/src/main/java/org/jetlinks/community/support/JetlinksExtendTopicMessageCodec.java

@@ -4,9 +4,6 @@ import com.alibaba.fastjson.JSONObject;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 import lombok.Setter;
-import org.jetlinks.community.support.message.LogMessage;
-import org.jetlinks.community.support.message.TimeSyncMessage;
-import org.jetlinks.community.support.message.TimeSyncReplyMessage;
 import org.jetlinks.core.message.*;
 import org.jetlinks.core.message.event.EventMessage;
 import org.jetlinks.core.message.firmware.*;

+ 0 - 32
jetlinks-components/network-component/network-core/src/main/java/org/jetlinks/community/support/message/TimeSyncReplyMessage.java

@@ -1,32 +0,0 @@
-package org.jetlinks.community.support.message;
-
-import cn.hutool.core.io.FileUtil;
-import cn.hutool.core.util.EnumUtil;
-import lombok.extern.slf4j.Slf4j;
-import org.hswebframework.ezorm.core.CastUtil;
-import org.jetlinks.core.message.CommonDeviceMessageReply;
-import org.jetlinks.core.message.MessageType;
-import org.reactivestreams.Publisher;
-import org.reactivestreams.Subscriber;
-import reactor.core.publisher.Flux;
-import reactor.core.publisher.Mono;
-import reactor.core.scheduler.Schedulers;
-
-import java.io.File;
-
-/**
- * @author lifang
- * @version 1.0.0
- * @ClassName TimeSyncReplyMessage.java
- * @Description TODO
- * @createTime 2021年08月27日 09:11:00
- */
-@Slf4j
-public class TimeSyncReplyMessage extends CommonDeviceMessageReply<TimeSyncReplyMessage> {
-    private static MessageType messageType= EnumUtil.likeValueOf(MessageType.class, "timeSyncReply");
-    @Override
-    public MessageType getMessageType() {
-        return messageType;
-    }
-
-}

+ 1 - 0
jetlinks-core/src/main/java/org/jetlinks/core/message/DeviceOfflineMessage.java

@@ -1,6 +1,7 @@
 package org.jetlinks.core.message;
 
 public class DeviceOfflineMessage extends CommonDeviceMessage{
+    @Override
     public MessageType getMessageType() {
         return MessageType.OFFLINE;
     }

+ 1 - 3
jetlinks-components/network-component/network-core/src/main/java/org/jetlinks/community/support/message/DirectMessage.java → jetlinks-core/src/main/java/org/jetlinks/core/message/DirectMessage.java

@@ -1,10 +1,8 @@
-package org.jetlinks.community.support.message;
+package org.jetlinks.core.message;
 
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
-import org.jetlinks.core.message.CommonDeviceMessage;
-import org.jetlinks.core.message.MessageType;
 
 import javax.annotation.Nonnull;
 

+ 1 - 4
jetlinks-components/network-component/network-core/src/main/java/org/jetlinks/community/support/message/LogMessage.java → jetlinks-core/src/main/java/org/jetlinks/core/message/LogMessage.java

@@ -1,7 +1,4 @@
-package org.jetlinks.community.support.message;
-
-import org.jetlinks.core.message.CommonDeviceMessage;
-import org.jetlinks.core.message.MessageType;
+package org.jetlinks.core.message;
 
 /**
  * @author lifang

+ 3 - 0
jetlinks-core/src/main/java/org/jetlinks/core/message/MessageType.java

@@ -58,6 +58,9 @@ public enum MessageType {
     //设备离线
     OFFLINE(DeviceOfflineMessage::new),
 
+    TIME_SYNC(TimeSyncMessage::new),
+
+    TIME_SYNC_REPLY(TimeSyncReplyMessage::new),
     //注册
     REGISTER(DeviceRegisterMessage::new),
     //注销

+ 2 - 7
jetlinks-components/network-component/network-core/src/main/java/org/jetlinks/community/support/message/TimeSyncMessage.java → jetlinks-core/src/main/java/org/jetlinks/core/message/TimeSyncMessage.java

@@ -1,9 +1,5 @@
-package org.jetlinks.community.support.message;
+package org.jetlinks.core.message;
 
-import cn.hutool.core.util.EnumUtil;
-import org.jetlinks.core.message.CommonDeviceMessage;
-import org.jetlinks.core.message.MessageType;
-import org.jetlinks.core.message.RepayableDeviceMessage;
 
 /**
  * @author lifang
@@ -14,10 +10,9 @@ import org.jetlinks.core.message.RepayableDeviceMessage;
  */
 public class TimeSyncMessage extends CommonDeviceMessage implements RepayableDeviceMessage<TimeSyncReplyMessage> {
 
-    private static MessageType messageType= EnumUtil.likeValueOf(MessageType.class, "timeSync");
     @Override
     public MessageType getMessageType() {
-        return messageType;
+        return MessageType.DISCONNECT_REPLY;
     }
     @Override
     public TimeSyncReplyMessage newReply() {

+ 19 - 0
jetlinks-core/src/main/java/org/jetlinks/core/message/TimeSyncReplyMessage.java

@@ -0,0 +1,19 @@
+package org.jetlinks.core.message;
+
+import lombok.extern.slf4j.Slf4j;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName TimeSyncReplyMessage.java
+ * @Description TODO
+ * @createTime 2021年08月27日 09:11:00
+ */
+@Slf4j
+public class TimeSyncReplyMessage extends CommonDeviceMessageReply<TimeSyncReplyMessage> {
+    @Override
+    public MessageType getMessageType() {
+        return MessageType.TIME_SYNC_REPLY;
+    }
+
+}

+ 2 - 2
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/message/DeviceMessageConnector.java

@@ -52,9 +52,9 @@ public class DeviceMessageConnector implements DecodedClientMessageHandler {
             builder.append("/message/event/").append(event.getEvent());
         });
         //时间同步
-        createFastBuilder(EnumUtil.likeValueOf(MessageType.class, "timeSync"), "/time-sync");
+        createFastBuilder(EnumUtil.likeValueOf(MessageType.class, "TIME_SYNC"), "/time-sync");
         //时间同步回复
-        createFastBuilder(EnumUtil.likeValueOf(MessageType.class, "timeSyncReply"), "/time-sync/reply");
+        createFastBuilder(EnumUtil.likeValueOf(MessageType.class, "TIME_SYNC_REPLYtimeSyncReply"), "/time-sync/reply");
 
         //上报属性
         createFastBuilder(MessageType.REPORT_PROPERTY, "/message/property/report");

+ 2 - 2
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/message/writer/TimeSeriesMessageWriterConnector.java

@@ -5,16 +5,16 @@ import lombok.extern.slf4j.Slf4j;
 import org.jetlinks.community.device.message.DeviceMessageConnector;
 import org.jetlinks.community.device.service.data.DeviceDataService;
 import org.jetlinks.community.gateway.annotation.Subscribe;
-import org.jetlinks.community.support.message.TimeSyncReplyMessage;
 import org.jetlinks.core.device.DeviceOperator;
 import org.jetlinks.core.device.DeviceRegistry;
 import org.jetlinks.core.event.EventBus;
 import org.jetlinks.core.message.DeviceMessage;
 import org.jetlinks.core.message.MessageType;
+import org.jetlinks.core.message.TimeSyncReplyMessage;
 import org.jetlinks.supports.cluster.redis.RedisClusterManager;
 import reactor.core.publisher.Flux;
 import reactor.core.publisher.Mono;
-import javax.annotation.PostConstruct;
+
 import static org.jetlinks.core.message.MessageType.*;
 import java.util.*;
 

+ 0 - 29
jetlinks-standalone/src/main/java/org/jetlinks/community/standalone/JetLinksApplication.java

@@ -6,16 +6,9 @@ import org.hswebframework.web.authorization.events.AuthorizingHandleBeforeEvent;
 import org.hswebframework.web.crud.annotation.EnableEasyormRepository;
 import org.hswebframework.web.logging.aop.EnableAccessLogger;
 import org.hswebframework.web.logging.events.AccessLoggerAfterEvent;
-import org.jetlinks.community.support.message.TimeSyncMessage;
-import org.jetlinks.community.standalone.utils.EnumsUtils;
-import org.jetlinks.community.support.message.TimeSyncReplyMessage;
-import org.jetlinks.core.message.MessageType;
-import org.jetlinks.core.message.firmware.UpgradeFirmwareMessageReply;
-import org.jetlinks.core.message.firmware.UpgradeFirmwareProgressMessage;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cache.annotation.EnableCaching;
-import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Profile;
 import org.springframework.context.event.EventListener;
 import org.springframework.stereotype.Component;
@@ -64,28 +57,6 @@ public class JetLinksApplication {
             log.info("{}=>{} {}-{}", event.getLogger().getIp(), event.getLogger().getUrl(), event.getLogger().getDescribe(), event.getLogger().getAction());
 
         }
-
-        @Bean
-        public Class<Void>  enumsExtend(){
-            //添加时间同步主题
-            EnumsUtils.addEnum(MessageType.class,"timeSync", new Class<?>[]{Supplier.class},new Object[]{new Supplier<TimeSyncMessage>() {
-
-                @Override
-                public TimeSyncMessage get() {
-                    return new TimeSyncMessage();
-                }
-            }});
-
-            //添加时间回复主题
-            EnumsUtils.addEnum(MessageType.class,"timeSyncReply", new Class<?>[]{Supplier.class},new Object[]{new Supplier<TimeSyncReplyMessage>() {
-                @Override
-                public TimeSyncReplyMessage get() {
-                    return new TimeSyncReplyMessage();
-                }
-            }});
-
-            return Void.TYPE;
-        }
     }