package com.tievd.jyz.cache;
|
|
import com.google.common.cache.Cache;
|
import com.google.common.cache.CacheBuilder;
|
import com.tievd.jyz.mqtt.dto.MqttParamDTO;
|
|
import java.util.Map;
|
import java.util.concurrent.TimeUnit;
|
|
public class EventCodeResourceCache {
|
|
/** 图片临时缓存,用于事件还未生成时,接收到图片
|
* eventCode:oilRecordId */
|
private final static Cache<String, MqttParamDTO>
|
EVENT_CODE_RESOURCE_CACHE_MAP = CacheBuilder.newBuilder().expireAfterWrite(10, TimeUnit.MINUTES).build();
|
|
|
|
/**
|
* 压入
|
*/
|
public static void put(String eventCode, MqttParamDTO data){
|
EVENT_CODE_RESOURCE_CACHE_MAP.put(eventCode, data);
|
}
|
|
/**
|
* 获取
|
* @param eventCode
|
* @return
|
*/
|
public static MqttParamDTO get(String eventCode){
|
return EVENT_CODE_RESOURCE_CACHE_MAP.getIfPresent(eventCode);
|
}
|
|
/**
|
* 移除
|
* @param eventCode
|
* @return
|
*/
|
public static void remove(String eventCode){
|
EVENT_CODE_RESOURCE_CACHE_MAP.invalidate(eventCode);
|
}
|
|
public static Map<String, MqttParamDTO> asMap() {
|
return EVENT_CODE_RESOURCE_CACHE_MAP.asMap();
|
}
|
|
}
|