Project

General

Profile

Download (2.78 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2021 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.model.common;
10

    
11
import javax.persistence.Entity;
12
import javax.xml.bind.annotation.XmlElement;
13

    
14
import org.apache.log4j.Logger;
15
import org.hibernate.envers.Audited;
16

    
17
import eu.etaxonomy.cdm.model.name.TaxonName;
18
import eu.etaxonomy.cdm.model.taxon.Taxon;
19
import eu.etaxonomy.cdm.model.term.DefinedTermBase;
20
import eu.etaxonomy.cdm.model.term.TermType;
21

    
22
/**
23
 * This
24
 *
25
 * @author a.mueller
26
 * @since 22.04.2021
27
 */
28
@Entity
29
@Audited
30
public abstract class AvailableForIdentifiableBase<T extends DefinedTermBase>
31
        extends AvailableForTermBase<T>{
32

    
33
    private static final long serialVersionUID = -8671887501681406910L;
34
    @SuppressWarnings("unused")
35
    private static final Logger logger = Logger.getLogger(AvailableForIdentifiableBase.class);
36

    
37
    //for hibernate use only
38
    @Deprecated
39
    protected AvailableForIdentifiableBase() {
40
        super();
41
    }
42
    @Deprecated
43
    protected AvailableForIdentifiableBase(TermType type) {
44
        super(type);
45
    }
46

    
47
    protected AvailableForIdentifiableBase(TermType type, String term, String label, String labelAbbrev) {
48
        super(type, term, label, labelAbbrev);
49
    }
50

    
51
// ****************************** GETTER_SETTER *******************************/
52

    
53
    /**
54
     * Whether this supplement is available for {@link TaxonName taxon names}.
55
     */
56
    @XmlElement(name = "AvailableForTaxonName")
57
    public boolean isAvailableForTaxonName() {
58
        return getAvailableFor().contains(CdmClass.TAXON_NAME);
59
    }
60
    /**
61
     * @see #isAvailableForTaxon()
62
     */
63
    public void setAvailableForTaxonName(boolean availableForTaxonName) {
64
        setAvailableFor(CdmClass.TAXON_NAME, availableForTaxonName);
65
    }
66

    
67
    /**
68
     * Whether this supplement is available for {@link Taxon taxa}.
69
     */
70
    @XmlElement(name = "AvailableForTaxon")
71
    public boolean isAvailableForTaxon() {
72
        return getAvailableFor().contains(CdmClass.TAXON);
73
    }
74
    /**
75
     * @see #isAvailableForTaxon()
76
     */
77
    public void setAvailableForTaxon(boolean availableForTaxon) {
78
        setAvailableFor(CdmClass.TAXON, availableForTaxon);
79
    }
80

    
81
    /**
82
     * Whether this supplement is available for {@link Reference references}.
83
     */
84
    @XmlElement(name = "AvailableForReference")
85
    public boolean isAvailableForReference() {
86
        return getAvailableFor().contains(CdmClass.REFERENCE);
87
    }
88
    /**
89
     * @see #isAvailableForReference()
90
     */
91
    public void setAvailableForReference(boolean availableForReference) {
92
        setAvailableFor(CdmClass.REFERENCE, availableForReference);
93
    }
94

    
95

    
96
}
(5-5/58)