Project

General

Profile

Download (1.73 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2007 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9

    
10
package eu.etaxonomy.cdm.persistence.dao.reference;
11

    
12
import java.util.List;
13
import java.util.Map;
14
import java.util.Set;
15

    
16
import eu.etaxonomy.cdm.model.reference.ISourceable;
17
import eu.etaxonomy.cdm.model.reference.OriginalSourceBase;
18
import eu.etaxonomy.cdm.persistence.dao.common.ICdmEntityDao;
19

    
20

    
21
public interface IOriginalSourceDao extends ICdmEntityDao<OriginalSourceBase>{
22

    
23

    
24
	/**
25
	 * Returns a map of identifiable entities of class <code>clazz</code> which have an original source of
26
	 * with namespace <code>idNamespace</code> and with an idInSource in <code>idInSourceList</code> <BR>
27
	 * The key of the map is the idInSource. If there are multiple objects that have the same id an arbitrary one is chosen.
28
	 * @param clazz
29
	 * @param idInSourceList
30
	 * @param idNamespace
31
	 * @return
32
	 */
33
	public <S extends ISourceable> Map<String, S> findOriginalSourcesByIdInSource(Class<S> clazz, Set<String> idInSourceSet, String idNamespace);
34

    
35

    
36
	/**
37
	 * Returns a list of identifiable entities according to their class, idInSource and idNamespace
38
	 * @param clazz
39
	 * @param idInSource
40
	 * @param idNamespace
41
	 * @return
42
	 */
43
	public <S extends ISourceable> List<S> findOriginalSourceByIdInSource(Class<S> clazz, String idInSource, String idNamespace);
44

    
45
	/**
46
	 * Returns the first OriginalSource with according idInSource and idNamespace
47
	 * @param idInSource
48
	 * @param idNamespace
49
	 * @return
50
	 */
51
	public List<OriginalSourceBase> findOriginalSourceByIdInSource(String idInSource, String idNamespace);
52

    
53

    
54
}
(1-1/2)