(no commit message)
[cdmlib.git] / cdmlib-services / src / main / java / eu / etaxonomy / cdm / api / service / IOccurrenceService.java
1 /**
2 * Copyright (C) 2008 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 */
6
7 package eu.etaxonomy.cdm.api.service;
8
9 import java.util.List;
10 import java.util.Map;
11 import java.util.UUID;
12
13 import eu.etaxonomy.cdm.model.common.Representation;
14 import eu.etaxonomy.cdm.model.location.WaterbodyOrCountry;
15 import eu.etaxonomy.cdm.model.occurrence.Collection;
16 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
17
18 /**
19 * @author a.babadshanjan
20 * @created 01.09.2008
21 */
22 public interface IOccurrenceService extends IIdentifiableEntityService<SpecimenOrObservationBase> {
23
24 /**
25 * Computes all specimen or observation bases.
26 * @param limit
27 * @param start
28 * @return
29 */
30 public abstract List<SpecimenOrObservationBase> getAllSpecimenOrObservationBases(int limit, int start);
31
32 /** Saves a collection of specimen or observation bases.
33 * @return Map with UUID as key and SpecimenOrObservationBase as value.
34 **/
35 public abstract Map<UUID, SpecimenOrObservationBase>
36 saveSpecimenOrObservationBaseAll(java.util.Collection<SpecimenOrObservationBase> specimenOrObservationBaseCollection);
37
38 /** save a specimen or observation and return its UUID**/
39 public abstract UUID saveSpecimenOrObservationBase (SpecimenOrObservationBase specimenOrObservationBase);
40
41 public WaterbodyOrCountry getCountryByIso(String iso639);
42
43 public List<WaterbodyOrCountry> getWaterbodyOrCountryByName(String name);
44
45 /** */
46 public abstract List<Collection> searchCollectionByCode(String code);
47 }