/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package com.smartitengineering.user.service.impl.hbase.solr; import com.smartitengineering.dao.solr.MultivalueMap; import com.smartitengineering.dao.solr.impl.MultivalueMapImpl; import com.smartitengineering.user.domain.Person; import com.smartitengineering.user.service.Services; import com.smartitengineering.util.bean.adapter.AbstractAdapterHelper; import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * * @author saumitra */ public class PersonAdapterHelper extends AbstractAdapterHelper<Person, MultivalueMap<String, Object>> { public static final String PREFIX = "person:"; private static final int PREFIX_INDEX = PREFIX.length(); public static final Logger logger = LoggerFactory.getLogger(PersonAdapterHelper.class); @Override protected MultivalueMap<String, Object> newTInstance() { return new MultivalueMapImpl<String, Object>(); } @Override protected void mergeFromF2T(Person fromBean, MultivalueMap<String, Object> toBean) { toBean.addValue("id", new StringBuilder(PREFIX).append(fromBean.getId().toString()).toString()); if (fromBean.getSelf() != null) { if (fromBean.getSelf().getName() != null) { toBean.addValue("name", fromBean.getSelf().getName().toString()); } if (StringUtils.isNotBlank(fromBean.getSelf().getNationalID())) { toBean.addValue("nationalId", fromBean.getSelf().getNationalID().toString()); } } if (fromBean.getFather() != null) { if (fromBean.getFather().getName() != null) { toBean.addValue("fatherName", fromBean.getFather().getName().toString()); } if (StringUtils.isNotBlank(fromBean.getFather().getNationalID())) { toBean.addValue("fatherNationalId", fromBean.getFather().getNationalID().toString()); } } if (fromBean.getFather() != null) { if (fromBean.getFather().getName() != null) { toBean.addValue("sposeName", fromBean.getSpouse().getName().toString()); } } if (StringUtils.isNotBlank(fromBean.getPrimaryEmail())) { toBean.addValue("email", fromBean.getPrimaryEmail().toString()); } if (StringUtils.isNotBlank(fromBean.getCellPhoneNumber())) { toBean.addValue("cellNo", fromBean.getCellPhoneNumber().toString()); } if (StringUtils.isNotBlank(fromBean.getAddress().getStreetAddress())) { toBean.addValue("streetAddress", fromBean.getAddress().getStreetAddress()); } if (StringUtils.isNotBlank(fromBean.getAddress().getCity())) { toBean.addValue("city", fromBean.getAddress().getCity()); } if (StringUtils.isNotBlank(fromBean.getAddress().getCountry())) { toBean.addValue("country", fromBean.getAddress().getCountry()); } } @Override protected Person convertFromT2F(MultivalueMap<String, Object> toBean) { return Services.getInstance().getPersonService().getById(Long.parseLong(toBean.getFirst("id").toString().substring( PREFIX_INDEX))); } }