package foundation.dao.version; import foundation.dao.preload.Bucket; import foundation.util.Util; public class ApplyRelationBucket extends Bucket { private static ApplyRelationBucket instance; private ApplyRelationBucket() { } public static synchronized ApplyRelationBucket getInstance() { if (instance == null) { instance = new ApplyRelationBucket(); } return instance; } public void loadOne(String dataName, String applyTypeCode, ApplyRelation relation) { String key = createKey(dataName, applyTypeCode); super.loadOne(key, relation); } public ApplyRelation get(String dataName, String applyTypeCode) { if (Util.isEmpty(applyTypeCode)) { return super.get(dataName); } String key = createKey(dataName, applyTypeCode); ApplyRelation relation = super.get(key); if (relation != null) { return relation; } relation = super.get(dataName); return relation; } private String createKey(String dataName, String applyTypeCode) { if (Util.isEmpty(applyTypeCode)) { return dataName; } return dataName + "_" + applyTypeCode; } }