/** * */ package org.inbio.m3s.service; import java.util.List; import org.inbio.m3s.dto.taxonomy.GatheringLiteDTO; import org.inbio.m3s.dto.taxonomy.ObservationLiteDTO; import org.inbio.m3s.dto.taxonomy.SpecimenLiteDTO; import org.inbio.m3s.dto.taxonomy.TaxonLiteDTO; import org.inbio.m3s.dto.taxonomy.util.TaxonomicalRangeEntity; import org.inbio.m3s.exception.TaxonNotFoundException; /** * @author jgutierrez * */ public interface TaxonomyManager { /** * Este metodo es usado en las consultas! importante. * Si es parte de este manager! * * @param taxonDefaultName * @param taxonomicalRange * @return */ public List<TaxonLiteDTO> getTaxonsIncludedIn(String taxonDefaultName, TaxonomicalRangeEntity taxonomicalRange); public List<TaxonLiteDTO> getTaxonsByPatialNameAndTaxonomicalRange(String taxonName,TaxonomicalRangeEntity taxonomicalRange); /** * Este metodo esta bien hecho, para este manager ;) * * @param mediaKey * @return */ public List<GatheringLiteDTO> getAllGatheringsLiteForMedia(String mediaKey); /** * Este metodo esta bien hecho, para este manager ;) * * @param mediaKey * @return */ public List<SpecimenLiteDTO> getAllSpecimensLiteForMedia(String mediaKey); /** * Este metodo esta bien hecho, para este manager ;) * * @param mediaKey * @return * @throws IllegalArgumentException */ public List<ObservationLiteDTO> getAllObservationsLiteForMedia(String mediaKey) throws IllegalArgumentException; /** * Este metodo esta bien hecho, para este manager ;) * * @param gatheringCode * @return * @throws IllegalArgumentException */ public List<SpecimenLiteDTO> getSpecimenLiteForGatheringCode(String gatheringCode) throws IllegalArgumentException; /** * El default name no es UNICO!, por eso este metodo retorna un list. * */ public List<TaxonLiteDTO> getTaxonLite(String defaultName) throws IllegalArgumentException; /** * @param defaultName * the taxon name * @param kingdom * the kingdom of the taxon default name * @return * @throws IllegalArgumentException */ public TaxonLiteDTO getTaxonLite(String defaultName, String kingdomName) throws TaxonNotFoundException; /** * -List de manera correcta * * @param taxonId * @return * @throws IllegalArgumentException */ public TaxonLiteDTO getTaxonLiteById(String taxonKey) throws IllegalArgumentException; /** * * @param specimenKey * @return * @throws IllegalArgumentException */ public TaxonLiteDTO getTaxonLiteFromSpecimenId(String specimenKey) throws IllegalArgumentException; /** * * @param mediaKey * @return * @throws IllegalArgumentException */ public List<TaxonLiteDTO> getTaxonLiteForMediaId(String mediaKey) throws IllegalArgumentException; /** * * @param observationKey * DB Identifier of the observation * @return * @throws IllegalArgumentException */ public List<TaxonLiteDTO> getTaxonLiteFromObservationId(String observationKey) throws IllegalArgumentException; /** * bien * * @param gatheringCode * @return * @throws IllegalArgumentException */ public List<TaxonLiteDTO> getTaxonLiteFromGatheringCode(String gatheringCode) throws IllegalArgumentException; public TaxonLiteDTO setKingdomName(TaxonLiteDTO tlDTO) throws IllegalArgumentException; public List<TaxonLiteDTO> setKingdomName(List<TaxonLiteDTO> tlDTOList) throws IllegalArgumentException; }