/* * Ara - Capture Species and Specimen Data * * Copyright © 2009 INBio (Instituto Nacional de Biodiversidad). * Heredia, Costa Rica. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package org.inbio.ara.facade.search; import java.util.*; import javax.ejb.Remote; import org.inbio.ara.dto.gis.SiteDTO; import org.inbio.ara.dto.inventory.GatheringObservationDTO; import org.inbio.ara.dto.inventory.IdentificationDTO; import org.inbio.ara.dto.inventory.SpecimenDTO; import org.inbio.ara.dto.transaction.TransactedSpecimenDTO; import org.inbio.ara.dto.transaction.TransactionDTO; import org.inbio.ara.util.QueryNode; /** * * @author herson */ @Remote public interface SearchFacadeRemote { public List<SpecimenDTO> test(); /*************************************************************************** *********************** ========SITE======== ****************************** **************************************************************************/ public List<SiteDTO> searchSiteByCriteria(String query, int base, int offset); public List<SiteDTO> searchSiteByCriteria(SiteDTO inputDTO, int base, int offset); public Long countSitesByCriteria(String query); public Long countSitesByCriteria(SiteDTO inputDTO); /*************************************************************************** ************************* ===SPECIMEN=== ********************************** **************************************************************************/ /** * @param query String unstructured query * @param base * @param offset * @return List<SpecimenDTO> * @deprecated Use instead searchSpecimenByCriteria(String query, * Long collectionId, int base, int offset) */ public List<SpecimenDTO> searchSpecimenByCriteria(String query, int base, int offset); /** * * @param query String unstructured query * @param collectionId * @param base * @param offset * @return List<SpecimenDTO> */ public List<SpecimenDTO> searchSpecimenByCriteria(String query, Long collectionId, int base, int offset); public List<SpecimenDTO> searchSpecimenByCriteria(SpecimenDTO inputDTO, int base, int offset); /** * * @param query * @return Count about how many results will be returned in a simple query * @deprecated Use instead: countSpecimensByCriteria(String query, * <b>Long collectionId</b>) */ public Long countSpecimensByCriteria(String query); /** * * @param query * @param collectionId * @return Count about how many results will be returned in a simple query, * filtered by collection */ public Long countSpecimensByCriteria(String query, Long collectionId); public Long countSpecimensByCriteria(SpecimenDTO inputDTO); public Long countSpecimensByCriteria(SpecimenDTO inputDTO,String taxonLevel, String catalogEnd,Long initialGathObserDetail, Long finalGathObserDetail,Long initialGathObser, Long finalGathObser, Calendar initialDate, Calendar finalDate, Long identicatorId); public List<SpecimenDTO> searchSpecimenByCriteria(SpecimenDTO inputDTO, String taxonomyLevel,String catalogEnd, Long initialGathObserDetail, Long finalGathObserDetail, Long initialGathObser, Long finalGathObser, Calendar initialDate, Calendar finalDate, Long identicatorId, int base, int offset); /*************************************************************************** *********************** ===IDENTIFICATION=== ****************************** **************************************************************************/ public List<IdentificationDTO> searchIdentificationByCriteria( IdentificationDTO inputDTO, int base, int offset, Set<Long> identIds); /** * * @param query String unstructured query * @param base * @param offset * @return * @deprecated Use instead: searchIdentificationByCriteria(String query, * <b>Long collectionId</b>, int base, int offset) */ public List<IdentificationDTO> searchIdentificationByCriteria(String query, int base, int offset); public List<IdentificationDTO> searchIdentificationByCriteria(String query, Long collectionId, int base, int offset); /** * * @param query * @return * @deprecated Use instead: countIdentificationByCriteria(String query, * <b>Long collectionId</b>) */ public Long countIdentificationByCriteria(String query); public Long countIdentificationByCriteria(String query, Long collectionId); public Long countIdentificationByCriteria(IdentificationDTO inputDTO); /*************************************************************************** ************************ ===GATHERING=== ********************************** **************************************************************************/ /** * @param query String unstructured query * @param base * @param offset * @return * @deprecated */ public List<GatheringObservationDTO> searchGathObsByCriteria(String query, int base, int offset); public List<GatheringObservationDTO> searchGathObsByCriteria(String query, Long collectionId, int base, int offset); /** * * @param query * @return * @deprecated */ public Long countGathObsByCriteria(String query); public Long countGathObsByCriteria(String query, Long collectionId); public List<GatheringObservationDTO> searchGathObsByCriteria(GatheringObservationDTO inputDTO, int base, int offset); public Long countGathObsByCriteria(GatheringObservationDTO inputDTO); public Long countQueryElements(LinkedList<QueryNode> sll); public List findAllDwCPaginated(int first, int amount); public List makePaginatedQuery (LinkedList<QueryNode> sll, int first, int amount); public Long countAllDwC(); /*************************************************************************** ********************** === TRANSACTION === ******************************** **************************************************************************/ public List<TransactionDTO> searchTransactionsByCriteria(TransactionDTO inputTransactionDTO, TransactedSpecimenDTO inputTransactedSpecimenDTO, int base, int offset); public List<TransactionDTO> searchTransactionsByCriteria(String query, Long collectionId, int base, int offset); public Long countTransactionsByCriteria(TransactionDTO inputTransactionDTO, TransactedSpecimenDTO inputTransactedSpecimenDTO); public Long countTransactionsByCriteria(String query, Long collectionId); public java.util.Set<java.lang.Long> getIdentificationIds(org.inbio.ara.dto.inventory.IdentificationDTO inputDTO); }