45 lines
1.5 KiB
Java
45 lines
1.5 KiB
Java
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<String, DimensionModel> {
|
|
public DimensionCache(CachePluginProfile configuration) {
|
|
super(configuration);
|
|
registeIndex(DimensionParentIndex.class, (CacheIndex)new DimensionParentIndex());
|
|
}
|
|
|
|
public List<DimensionModel> getDimensionListOfParent(String parentDimensionId) {
|
|
List<DimensionModel> list = iteratorToList(getCache().getByIndex(DimensionParentIndex.class, parentDimensionId));
|
|
return list;
|
|
}
|
|
|
|
protected void load() {
|
|
DimensionDao dimensionDao = new DimensionDao();
|
|
IDaoQuery<DimensionModel> iDaoQuery = dimensionDao.query();
|
|
List<DimensionModel> 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<String, DimensionModel> {
|
|
public String key(DimensionModel t) {
|
|
return t.getParentId();
|
|
}
|
|
}
|
|
}
|
|
|
|
|