/** * */ package org.inbio.m3s.service.impl; import java.util.List; import org.apache.log4j.Logger; import org.inbio.m3s.dao.core.SiteDAO; import org.inbio.m3s.dto.taxonomy.SpecimenLiteDTO; import org.inbio.m3s.service.SiteManager; import org.inbio.m3s.service.TaxonomyManager; /** * @author jgutierrez * */ public class SiteManagerImpl implements SiteManager { TaxonomyManager taxonomyManager; SiteDAO siteDAO; private static Logger logger = Logger.getLogger(SiteManagerImpl.class); /* (non-Javadoc) * @see org.inbio.m3s.service.SiteManager#getSiteFromGatheringCode(java.lang.String) */ public String getSiteFromGatheringCode(String code) throws IllegalArgumentException { logger.debug("getSiteFromGatheringCode... start"); String errorMsj = "No se enuentra ningĂșna descripcion de sitio para la recolecta #" + code + "."; try { List<SpecimenLiteDTO> slDTOList = taxonomyManager.getSpecimenLiteForGatheringCode(code); SpecimenLiteDTO slDTO = slDTOList.get(0); return siteDAO.getSiteDBIdFromSpecimenNumber(new Integer(slDTO.getSpecimenKey())); } catch (Exception e) { logger.error(errorMsj); logger.error(e.getMessage()); throw new IllegalArgumentException(errorMsj); } } /** * @return the taxonomyManager */ public TaxonomyManager getTaxonomyManager() { return taxonomyManager; } /** * @param taxonomyManager the taxonomyManager to set */ public void setTaxonomyManager(TaxonomyManager taxonomyManager) { this.taxonomyManager = taxonomyManager; } /** * @return the siteDAO */ public SiteDAO getSiteDAO() { return siteDAO; } /** * @param siteDAO the siteDAO to set */ public void setSiteDAO(SiteDAO siteDAO) { this.siteDAO = siteDAO; } }