| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- package com.coffee.bus.device;
- import cn.hutool.core.util.StrUtil;
- import cn.hutool.json.JSONUtil;
- import com.coffee.bus.bean.DeviceBasicInfo;
- import com.coffee.common.redis.RedisUtils;
- import lombok.AllArgsConstructor;
- import org.springframework.stereotype.Service;
- import java.util.Map;
- /**
- * @author lifang
- * @version 1.0.0
- * @ClassName ClusterDeviceRegistry.java
- * @Description TODO
- * @createTime 2022年04月01日 17:10:00
- */
- @AllArgsConstructor
- @Service
- public class ClusterDeviceRegistry implements DeviceRegistry {
- private final RedisUtils redisUtils;
- @Override
- public DeviceOperator getDevice(String deviceId) {
- if(StrUtil.isEmpty(deviceId)){
- return DeviceOperator.of(new DeviceBasicInfo(),redisUtils);
- }
- Map<Object, Object> result = redisUtils.hmget(deviceId);
- if(result==null||result.size()==0){
- return DeviceOperator.of(DeviceBasicInfo.of(deviceId),redisUtils);
- }
- return DeviceOperator.of(JSONUtil.toBean(JSONUtil.toJsonStr(result),DeviceBasicInfo.class),redisUtils);
- }
- @Override
- public void register(DeviceBasicInfo basicInfo) {
- if(StrUtil.isNotEmpty(basicInfo.getDeviceId())){
- DeviceOperator.of(basicInfo, redisUtils).sysn();
- }
- }
- @Override
- public void unRegister(String deviceId) {
- DeviceBasicInfo deviceBasicInfo = DeviceBasicInfo.of(deviceId);
- deviceBasicInfo.setDeviceId(deviceId);
- DeviceOperator.of(deviceBasicInfo, redisUtils).clear();
- }
- }
|