1 package eu
.etaxonomy
.cdm
.api
.service
;
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
.model
.common
.User
;
9 import eu
.etaxonomy
.cdm
.persistence
.dao
.BeanInitializer
;
10 import eu
.etaxonomy
.cdm
.persistence
.query
.OrderHint
;
12 public interface IMarkerService
extends IVersionableService
<Marker
> {
15 * Returns a pager of markers which have the same type
17 * @param markerType The type of markerType
18 * @param pageSize The maximum number of markers returned (can be null for all markers)
19 * @param pageNumber The offset (in pageSize chunks) from the start of the result set (0 - based)
20 * @param orderHints may be null
21 * @param propertyPaths properties to initialize - see {@link BeanInitializer#initialize(Object, List)}
24 public Pager
<Marker
> page(MarkerType markerType
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
);
28 * @param creator the person who created those markers
29 * @param markerType the markerType of those markers (can be null)
30 * @param pageSize The maximum number of markers returned (can be null for all markers)
31 * @param pageNumber The offset (in pageSize chunks) from the start of the result set (0 - based)
32 * @param orderHints Properties to order by
33 * @param propertyPaths Properties to initialize in the returned entities, following the syntax described in {@link BeanInitializer#initialize(Object, List)}
34 * @return a paged list of Marker instances
36 public Pager
<Marker
> list(User creator
, MarkerType markerType
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
);
40 * @param creator the person who created those markers
41 * @param markerType the markerType of those markers (can be null)
44 public int count(User creator
, MarkerType markerType
);