75 lines
2.1 KiB
Java
75 lines
2.1 KiB
Java
|
package de.hsadmin.remote;
|
||
|
|
||
|
import java.util.Map;
|
||
|
|
||
|
import de.hsadmin.core.model.AbstractEntity;
|
||
|
import de.hsadmin.mods.dom.Domain;
|
||
|
import de.hsadmin.mods.email.EMailAddress;
|
||
|
|
||
|
public class EMailAddressRemote extends AbstractRemote {
|
||
|
|
||
|
@Override
|
||
|
protected void entity2map(AbstractEntity entity, Map<String, String> map) {
|
||
|
EMailAddress adr = (EMailAddress) entity;
|
||
|
long id = adr.getId();
|
||
|
String domain = adr.getDomain().getName();
|
||
|
String admin = adr.getDomain().getUser().getName();
|
||
|
String pac = adr.getDomain().getUser().getPac().getName();
|
||
|
String target = adr.getTarget();
|
||
|
String localpart = adr.getLocalPart();
|
||
|
String subdomain = adr.getSubdomain();
|
||
|
String emailaddress = adr.getEMailAddress();
|
||
|
String fulldomain = adr.getFullDomain();
|
||
|
map.put("id", Long.toString(id));
|
||
|
map.put("domain", domain);
|
||
|
map.put("admin", admin);
|
||
|
map.put("pac", pac);
|
||
|
map.put("target", target);
|
||
|
map.put("localpart", localpart);
|
||
|
map.put("subdomain", subdomain);
|
||
|
map.put("emailaddress", emailaddress);
|
||
|
map.put("fulldomain", fulldomain);
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
protected void map2entity(Map<String, String> map, AbstractEntity entity) {
|
||
|
EMailAddress adr = (EMailAddress) entity;
|
||
|
String localPart = map.get("localpart");
|
||
|
if (assertNotNull(localPart)) {
|
||
|
adr.setLocalPart(localPart);
|
||
|
}
|
||
|
String subdomain = map.get("subdomain");
|
||
|
if (assertNotNull(subdomain)) {
|
||
|
adr.setSubdomain(subdomain);
|
||
|
}
|
||
|
String target = map.get("target");
|
||
|
if (assertNotNull(target)) {
|
||
|
adr.setTarget(target);
|
||
|
}
|
||
|
String domain = map.get("domain");
|
||
|
if (assertNotNull(domain)) {
|
||
|
Domain dom = new Domain();
|
||
|
dom.setName(domain);
|
||
|
adr.setDomain(dom);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
protected Class<? extends AbstractEntity> getEntityClass() {
|
||
|
return EMailAddress.class;
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
protected void regularizeKeys(Map<String, String> whereParams) {
|
||
|
replaceKey(whereParams, "domain", "domain.name");
|
||
|
replaceKey(whereParams, "pac", "domain.user.pac.name");
|
||
|
replaceKey(whereParams, "admin", "domain.user.name");
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public String getOrderBy() {
|
||
|
return "ORDER BY obj.domain.name ASC, obj.subdomain ASC, obj.localpart ASC";
|
||
|
}
|
||
|
|
||
|
}
|