package de.hsadmin.remote; import java.util.List; import java.util.Map; import de.hsadmin.core.model.AbstractEntity; import de.hsadmin.mods.email.EMailAlias; public class EMailAliasRemote extends AbstractRemote { @Override protected void entity2map(AbstractEntity entity, Map map) { EMailAlias alias = (EMailAlias) entity; String id = Long.toString(alias.getId()); String name = alias.getName(); String pac = alias.getPac().getName(); String target = alias.getTarget(); map.put("id", id); map.put("name", name); map.put("pac", pac); map.put("target", target); } @Override protected Class getEntityClass() { return EMailAlias.class; } @Override protected void map2entity(Map map, AbstractEntity entity) { EMailAlias alias = (EMailAlias) entity; String name = (String) map.get("name"); if (assertNotNull(name)) { alias.setName(name); } Object l = map.get("target"); if (l instanceof String) { String target = (String) l; if (assertNotNull(target)) { alias.setTarget(target); } } if (l instanceof List) { StringBuffer tBuff = new StringBuffer(); for (Object o : (List) l) { if (o instanceof String) { if (tBuff.length() > 0) { tBuff.append(','); } tBuff.append((String) o); } } alias.setTarget(tBuff.toString()); } } @Override protected void regularizeKeys(Map whereParams) { replaceKey(whereParams, "pac", "pac.name"); } }