merge cate-development2 branch with trunk
[cdmlib.git] / cdmlib-services / src / main / java / eu / etaxonomy / cdm / api / service / IMarkerService.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.common.Marker;
7 import eu.etaxonomy.cdm.model.common.MarkerType;
8 import eu.etaxonomy.cdm.persistence.dao.BeanInitializer;
9 import eu.etaxonomy.cdm.persistence.query.OrderHint;
10
11 public interface IMarkerService extends IVersionableService<Marker> {
12
13 /**
14 * Returns a pager of markers which have the same type
15 *
16 * @param markerType The type of markerType
17 * @param pageSize The maximum number of markers returned (can be null for all markers)
18 * @param pageNumber The offset (in pageSize chunks) from the start of the result set (0 - based)
19 * @param orderHints may be null
20 * @param propertyPaths properties to initialize - see {@link BeanInitializer#initialize(Object, List)}
21 * @return
22 */
23 public Pager<Marker> page(MarkerType markerType, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths);
24
25 }