package com.awspaas.user.bpa.job; import com.actionsoft.apps.resource.plugin.profile.CachePluginProfile; import com.actionsoft.bpms.commons.cache.Cache; import com.actionsoft.bpms.commons.cache.CacheIndex; import com.actionsoft.bpms.commons.cache.CacheManager; import com.actionsoft.bpms.commons.cache.ListValueIndex; import com.actionsoft.bpms.commons.mvc.dao.IDaoQuery; import java.io.Serializable; import java.util.List; public class DimensionCache extends Cache { public DimensionCache(CachePluginProfile configuration) { super(configuration); registeIndex(DimensionParentIndex.class, (CacheIndex)new DimensionParentIndex()); } public List getDimensionListOfParent(String parentDimensionId) { List list = iteratorToList(getCache().getByIndex(DimensionParentIndex.class, parentDimensionId)); return list; } protected void load() { DimensionDao dimensionDao = new DimensionDao(); IDaoQuery iDaoQuery = dimensionDao.query(); List dimensionModels = iDaoQuery.list(); for (DimensionModel dimensionModel : dimensionModels) put(dimensionModel.getId(), (DimensionModel) dimensionModel, false); } public static DimensionCache getCache() { return (DimensionCache)CacheManager.getCache(DimensionCache.class); } class DimensionParentIndex extends ListValueIndex { public String key(DimensionModel t) { return t.getParentId(); } } }