leutu
2024-06-03 3ef35e6cd16bbfa206b26bb3271eac40ad020bcb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package com.fastbee.mqtt.manager;
 
import com.fastbee.mqtt.model.WillMessage;
import lombok.extern.slf4j.Slf4j;
 
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
 
 
@Slf4j
public class WillMessageManager {
 
    private static Map<String, WillMessage> map = new ConcurrentHashMap<>();
 
    public static void push(WillMessage message){
        map.put(message.getClientId(),message);
    }
 
    public static void pop(String clientId){
        try {
            WillMessage message = map.get(clientId);
            if (null == message){
                return;
            }
            ClientManager.pubTopic(message.getMessage());
        }catch (Exception e){
            log.error("=>发送客户端[{}],遗嘱消息异常",e.getMessage(),e);
        }
    }
}