Project

General

Profile

Download (1.41 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2022 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
package eu.etaxonomy.cdm.persistence.dao.description;
10

    
11
import java.util.List;
12
import java.util.UUID;
13

    
14
import eu.etaxonomy.cdm.filter.VocabularyFilter;
15
import eu.etaxonomy.cdm.persistence.dao.taxon.ITaxonNodeFilterDao;
16

    
17
/**
18
 * TODO very similar to {@link ITaxonNodeFilterDao}. Maybe we can combine it.
19
 *
20
 * @author a.mueller
21
 * @date 02.09.2022
22
 */
23
public interface IVocabularyFilterDao {
24

    
25
    /**
26
     * Counts the number of vocabulary IDs returned
27
     * when calling {@link #listUuids(VocabularyFilter)}
28
     * @param filter the vocabulary filter
29
     * @return Count of vocabularies
30
     */
31
    public long count(VocabularyFilter filter);
32

    
33
    /**
34
     * Retrieve vocabulary {@link UUID uuids} defined by a
35
     * {@link VocabularyFilter vocabulary filter}.
36
     * @param filter the vocabulary filter
37
     * @return List of vocabulary {@link UUID uuids}
38
     */
39
    public List<UUID> listUuids(VocabularyFilter filter);
40

    
41

    
42
    /**
43
     * Retrieve vocabulary IDs defined by a
44
     * {@link VocabularyFilter vocabulary filter}.
45
     * @param filter the vocabulary filter
46
     * @return List of vocabulary IDs
47
     */
48
    public List<Integer> idList(VocabularyFilter filter);
49
}
(8-8/8)