📄 entitiescachestorage.java
字号:
package org.speedframework.cache;
//~--- non-JDK imports --------------------------------------------------------
import org.speedframework.utilities.PropertiesUtil;
//~--- JDK imports ------------------------------------------------------------
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 类描述信息,描述类的主要职责和用处。
*
*
* @version $LastChangedRevision: 1945 $, 2007.09.29 at 02:14:29 CST
* @author <a href="mailto:falcon8848@gmail.com">piginzoo </a>
*/
public class EntitiesCacheStorage
{
/**
* 方法描述信息,
* 描述方法是做什么的,
* 如何调用,最好给出调用代码示例。
*
* @param region
* @param key
* @param source
*
* @return
*
* @throws Exception
*/
public static Object save(String region, Object key, Object source) throws Exception {
return saveOrUpdate(region, key, source);
}
/**
* Get object from queue
*
* @param region
* @param key
*
* @return
* @throws Exception
*/
public static synchronized Object get(String region, Object key) throws Exception {
Map queue = getQueueOfObject(region);
Object reObj = null;
if (queue.containsKey(key)) {
reObj = queue.get(key);
}
return reObj;
}
/**
* Delete object from queue
*
* @param region
* @param key
* @throws Exception
*/
public static synchronized void remove(String region, Object key) throws Exception {
Map queue = getQueueOfObject(region);
if (queue.containsKey(key)) {
queue.remove(key);
}
CacheStorage.put(region, queue);
}
/**
* Update object in the queue
*
* @param region
* @param key
* @param source
*
* @return
* @throws Exception
*/
public static synchronized Object update(String region, Object key, Object source) throws Exception {
return saveOrUpdate(region, key, source);
}
/**
* Cache collection
*
* @param region
* @return
* @throws Exception
*/
private static Map getQueueOfObject(String region) throws Exception {
Map queue = (Map) CacheStorage.get(region);
if (queue == null) {
queue = new LinkedHashMap();
CacheStorage.put(region, queue);
getQueueOfObject(region);
}
return queue;
}
/**
* Insert or update
*
* @param region
* @param key
* @param source
* @return
* @throws Exception
*/
private static Object saveOrUpdate(String region, Object key, Object source) throws Exception {
Map queue = getQueueOfObject(region);
Object old = null;
if (queue.containsKey(key)) {
old = queue.get(key);
PropertiesUtil.copyProperties(old, source);
} else {
queue.put(key, source);
}
CacheStorage.put(region, queue);
return source;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -