@Override protected Object getObjectValue(UserGroupCache userGroupCache, Session session, HistProp prop) { if (prop == null) { return null; } String type = prop.getType(); if (AddressDO.class.getName().equals(type)) { return prop.getValue(); } if (AddressCampaignDO.class.getName().equals(type)) { return prop.getValue(); } return super.getObjectValue(userGroupCache, session, prop); } };
private void attachInsertProperties(IEmgr<?> emgr, PfHistoryMasterDO hm) { // EntityMetadata ent = emfac.getMetadataRepository().findEntityMetadata(hm.getEntityName()); // a dummy entry. String newVal = ""; String oldVal = ""; String propertyName = ""; String propertyType = "java.lang.String"; DiffEntry de = new DiffEntry(); HistProp newp = new HistProp(propertyName, propertyType, newVal); de.setNewProp(newp); HistProp oldp = new HistProp(propertyName, propertyType, oldVal); de.setOldProp(oldp); de.setPropertyName(propertyName); de.setPropertyOpType(getPropOpTypeFrom(hm.getEntityOpType())); HistoryServiceImpl.putHistProp(hm, de); }
private List<Object> getDBObjects(Session session, HistProp prop) { List<Object> ret = new ArrayList<>(); EntityMetadata emd = PfEmgrFactory.get().getMetadataRepository().findEntityMetadata(prop.getType()); if (emd == null) { ret.add(prop.getValue()); return ret; } String[] sa = StringUtils.split(prop.getValue(), ", "); if (sa == null || sa.length == 0) { return Collections.emptyList(); } for (String pks : sa) { try { int pk = Integer.parseInt(pks); Object ent = session.get(emd.getJavaType(), pk); if (ent != null) { ret.add(ent); } } catch (NumberFormatException ex) { Log.warn("Cannot parse pk: " + prop); } } return ret; }