(no commit message)
[cdmlib.git] / cdmlib-services / src / main / java / eu / etaxonomy / cdm / api / service / IIdentificationKeyService.java
1 package eu.etaxonomy.cdm.api.service;
2
3 import java.util.List;
4
5 import eu.etaxonomy.cdm.api.service.pager.Pager;
6 import eu.etaxonomy.cdm.model.description.IIdentificationKey;
7 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
8
9 public interface IIdentificationKeyService {
10
11 /**
12 * Returns a paged list of IIdentificationKey entities sorted by creation date, newest first
13 *
14 * @param pageSize The maximum number of objects returned (can be null for all matching objects)
15 * @param pageNumber The offset (in pageSize chunks) from the start of the result set (0 - based,
16 * can be null, equivalent of starting at the beginning of the recordset)
17 * @param propertyPaths properties to be initialized
18 * @return a pager of IdentificationKeys
19 */
20 public Pager<IIdentificationKey> page(Integer pageSize, Integer pageNumber, List<String> propertyPaths);
21
22 /**
23 * Finds IdentificationKeys which cover the Taxon given as parameter
24 *
25 * @param taxon
26 * The Taxon to search IdentificationKeys for
27 * @param type
28 * may restrict the type to a specific implementation of
29 * IIdentificationKey
30 * @param pageSize
31 * The maximum number of objects returned (can be null for all
32 * matching objects)
33 * @param pageNumber
34 * The offset (in pageSize chunks) from the start of the result
35 * set (0 - based, can be null, equivalent of starting at the
36 * beginning of the recordset)
37 * @param propertyPaths
38 * properties to be initialized
39 * @return a pager of IdentificationKeys
40 */
41 public <T extends IIdentificationKey> Pager<T> findKeysConvering(
42 TaxonBase taxon, Class<T> type, Integer pageSize,
43 Integer pageNumber, List<String> propertyPaths);
44
45 }