Project

General

Profile

Download (2.86 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.cdm.api.service;
2

    
3
import java.util.Collection;
4
import java.util.List;
5
import java.util.Map;
6
import java.util.Set;
7
import java.util.UUID;
8

    
9
import eu.etaxonomy.cdm.api.service.dto.RowWrapperDTO;
10
import eu.etaxonomy.cdm.model.description.DescriptionBase;
11
import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
12
import eu.etaxonomy.cdm.model.description.DescriptiveSystemRole;
13
import eu.etaxonomy.cdm.model.description.Feature;
14
import eu.etaxonomy.cdm.model.description.WorkingSet;
15
import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
16

    
17

    
18
public interface IWorkingSetService extends IAnnotatableService<WorkingSet> {
19
	/**
20
	 * Returns a Map of descriptions each with the descriptionelements that match the supplied features (or all description elements if no features are supplied)
21
	 *
22
	 * @param workingSet the working set which the descriptions belong to
23
	 * @param features restrict the returned description elements to those which have features in this set
24
	 * @param pageSize The maximum number of descriptions returned (can be null for all descriptions that belong to the working set)
25
	 * @param pageNumber The offset (in pageSize chunks) from the start of the result set (0 - based,
26
	 *                   can be null, equivalent of starting at the beginning of the recordset). Descriptions are sorted by titleCache
27
	 * @param propertyPaths properties to be initialized (applied to the descriptionElements)
28
	 * @return
29
	 */
30
	public Map<DescriptionBase, Set<DescriptionElementBase>> getDescriptionElements(WorkingSet workingSet, Set<Feature> features, Integer pageSize,	Integer pageNumber,	List<String> propertyPaths);
31

    
32
	public <T extends DescriptionElementBase> Map<UuidAndTitleCache, Map<UUID, Set<T>>> getTaxonFeatureDescriptionElementMap(Class<T> clazz, UUID workingSetUuid, DescriptiveSystemRole role);
33

    
34
    /**
35
     * @param limitOfInitialElements
36
     * @param pattern
37
     * @return
38
     */
39
    public List<UuidAndTitleCache<WorkingSet>> getWorkingSetUuidAndTitleCache(Integer limitOfInitialElements, String pattern);
40

    
41
    /**
42
     * Returns a collection of {@link RowWrapperDTO} objects for the given {@link WorkingSet}.<br>
43
     * A RowWrapper represents on row in the character matrix.
44
     * @param workingSet the working set for which the row wrapper objects should be fetched
45
     * @return a collection of row wrapper objects
46
     */
47
    public Collection<RowWrapperDTO> getRowWrapper(WorkingSet workingSet);
48

    
49
    /**
50
     * Loads all avaliable specimens wrapped in a {@link RowWrapperDTO} object for
51
     * a given {@link WorkingSet} according to the filters set in the working set
52
     * @param workingSet the working set for which the specimens should be fetched
53
     * @return a collection of wrapper objects containing the specimen
54
     */
55
    public Collection<RowWrapperDTO> loadSpecimens(WorkingSet workingSet);
56

    
57

    
58
}
(68-68/105)