Commit cbe4bc55 by gdj

Revert "订阅消息的优化,"

This reverts commit 6112355b
parent 9c4e09c6
...@@ -3,19 +3,14 @@ package com.dji.sample.component; ...@@ -3,19 +3,14 @@ package com.dji.sample.component;
import com.dji.sample.component.redis.RedisConst; import com.dji.sample.component.redis.RedisConst;
import com.dji.sample.component.redis.RedisOpsUtils; import com.dji.sample.component.redis.RedisOpsUtils;
import com.dji.sample.manage.model.dto.DeviceDTO; import com.dji.sample.manage.model.dto.DeviceDTO;
import com.dji.sample.manage.model.entity.DeviceEntity;
import com.dji.sample.manage.service.IDeviceRedisService; import com.dji.sample.manage.service.IDeviceRedisService;
import com.dji.sample.manage.service.IDeviceService; import com.dji.sample.manage.service.IDeviceService;
import com.dji.sdk.cloudapi.device.DeviceDomainEnum; import com.dji.sdk.cloudapi.device.DeviceDomainEnum;
import com.dji.sdk.cloudapi.device.DeviceSubTypeEnum;
import com.dji.sdk.cloudapi.device.DeviceTypeEnum;
import com.dji.sdk.common.SDKManager; import com.dji.sdk.common.SDKManager;
import com.dji.sdk.config.version.GatewayManager;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner; import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Optional; import java.util.Optional;
/** /**
...@@ -42,27 +37,6 @@ public class ApplicationBootInitial implements CommandLineRunner { ...@@ -42,27 +37,6 @@ public class ApplicationBootInitial implements CommandLineRunner {
public void run(String... args) throws Exception { public void run(String... args) throws Exception {
int start = RedisConst.DEVICE_ONLINE_PREFIX.length(); int start = RedisConst.DEVICE_ONLINE_PREFIX.length();
// 系统启动的时候,把数据库中设备加入订阅中
// 查询现有的设备
List<DeviceEntity> deviceList = deviceService.list();
// 订阅设备
deviceList.stream()
.filter(device -> device.getDomain() == 3)
.forEach(device -> {
DeviceDomainEnum domainEnum = DeviceDomainEnum.find(device.getDomain());
DeviceTypeEnum deviceTypeEnum = DeviceTypeEnum.find(device.getDeviceType());
DeviceSubTypeEnum deviceSubTypeEnum = DeviceSubTypeEnum.find(device.getSubType());
GatewayManager gatewayManager = SDKManager.registerDevice(device.getDeviceSn(), device.getChildSn(), domainEnum,
deviceTypeEnum, deviceSubTypeEnum, device.getVersion(),
deviceRedisService.getDeviceOnline(device.getChildSn()).map(DeviceDTO::getThingVersion).orElse(null)
);
deviceService.subDeviceOnlineSubscribeTopic(gatewayManager);
});
RedisOpsUtils.getAllKeys(RedisConst.DEVICE_ONLINE_PREFIX + "*") RedisOpsUtils.getAllKeys(RedisConst.DEVICE_ONLINE_PREFIX + "*")
.stream() .stream()
.map(key -> key.substring(start)) .map(key -> key.substring(start))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment