Project

General

Profile

Download (2.41 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.cdm.persistence.dao.statistics;
2

    
3
import java.util.List;
4
import java.util.UUID;
5

    
6
import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
7
import eu.etaxonomy.cdm.model.taxon.Classification;
8
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
9

    
10
public interface IStatisticsDao {
11

    
12

    
13
	/**
14
	 * counts items of the type Taxon, Synonym or TaxonBase (Taxon & Synonym)
15
	 * 
16
	 * @param clazz - the Type that will be counted
17
	 * @param classification - only items in this classification will be counted
18
	 * @return the amount of the items in the classification
19
	 */
20
	public Long countTaxaInClassification(Class<? extends TaxonBase> clazz,
21
			Classification classification);
22

    
23
	
24
	/**
25
	 * counts all TaxonNames that are attached to the given classification
26
	 * 
27
	 * @param classification
28
	 * @return - the amount of the TaxonNames
29
	 */
30
	public Long countTaxonNames(Classification classification);
31

    
32
	
33
	/**
34
	 * counts all NomenclaturalReferences in the data base
35
	 * 
36
	 * @return the amount of the NRs
37
	 */
38
	public Long countNomenclaturalReferences();	
39

    
40
	/**
41
	 * counts all NomenclaturalReference items attached to the given classification
42
	 * 
43
	 * @param classification
44
	 * @return - the amount of the items in the classification
45
	 */
46
	public Long countNomenclaturalReferences(Classification classification);
47

    
48
	
49
	/**
50
	 * count all references that are attached to any description in the data base
51
	 * 
52
	 * @return - count result - number of these references
53
	 */
54
	public Long countDescriptiveSourceReferences();
55

    
56
	
57
	/**
58
	 * count all references that are attached to any description in the given classification
59
	 * 
60
	 * @return - count result - number of these references
61
	 */
62
	public Long countDescriptive(Boolean sourceRef,Classification classification);
63

    
64

    
65
	/**
66
	 * count all Reference items attached to the given classification
67
	 * but not nomenclatural references
68
	 * 
69
	 * @param sourceRef - Boolean, tells if to count the descriptions 
70
	 * 		directly or count the descriptive source references
71
	 * @param classification
72
	 * @return - the amount of the items in the classification
73
	 */
74
	public Long countReferencesInClassification(Classification classification);
75

    
76
	
77
	
78
	public List<UUID> getTaxonTree(IdentifiableEntity<?> filter);
79

    
80
//	public List<UUID> getAllTaxonIds(UUID rootUuid);
81

    
82

    
83
	public void getAllTaxonIds();
84

    
85

    
86
	public List<UUID> getAllChildNodeIds(UUID rootUuid);
87

    
88

    
89
	Long countReferencesInClassificationWithUuids(Classification classification);
90

    
91

    
92
	
93

    
94

    
95
	
96

    
97

    
98
	
99

    
100

    
101

    
102
}
    (1-1/1)