package com.vci.server.cache; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.apache.commons.lang3.StringUtils; import com.alibaba.fastjson.JSONObject; import com.vci.corba.framework.data.PvolumeInfo; import com.vci.server.cache.redis.RedisUtil; public final class VolumeCacheProvider { public static PvolumeInfo getVolume(String name) { String attrObj = RedisUtil.getInstance().hget(CacheNames.VOLUMES, name); if (StringUtils.isBlank(attrObj)) return null; return JSONObject.parseObject(attrObj, PvolumeInfo.class); } public static PvolumeInfo[] getVolumes(String[] names) { List lstAI = new ArrayList(); for (int i = 0; i < names.length; i++) { String jsonObj = RedisUtil.getInstance().hget(CacheNames.VOLUMES, names[i]); if (StringUtils.isBlank(jsonObj)) continue; lstAI.add(JSONObject.parseObject(jsonObj, PvolumeInfo.class)); } return lstAI.toArray(new PvolumeInfo[0]); } public static PvolumeInfo[] getAllVolumes() { Map allVols = RedisUtil.getInstance().hgetAll(CacheNames.VOLUMES); List lstAI = new ArrayList(); String[] items = allVols.values().toArray(new String[0]); for (int i = 0; i < items.length; i++) { lstAI.add(JSONObject.parseObject(items[i], PvolumeInfo.class)); } return lstAI.toArray(new PvolumeInfo[0]); } }