2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
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.
9 package eu
.etaxonomy
.cdm
.model
.agent
;
11 import javax
.persistence
.Entity
;
12 import javax
.xml
.bind
.annotation
.XmlAccessType
;
13 import javax
.xml
.bind
.annotation
.XmlAccessorType
;
14 import javax
.xml
.bind
.annotation
.XmlElement
;
15 import javax
.xml
.bind
.annotation
.XmlTransient
;
16 import javax
.xml
.bind
.annotation
.XmlType
;
18 import org
.apache
.log4j
.Logger
;
20 import eu
.etaxonomy
.cdm
.strategy
.cache
.agent
.INomenclaturalAuthorCacheStrategy
;
24 * The abstract class for such {@link Agent agents} ({@link Person persons} or {@link Team teams}) who might also be used
25 * for authorship of {@link eu.etaxonomy.cdm.model.reference.ReferenceBase references} or of {@link eu.etaxonomy.cdm.model.name.TaxonNameBase taxon names}.
29 * @created 17-APR-2008
31 @XmlAccessorType(XmlAccessType
.FIELD
)
32 @XmlType(name
= "TeamOrPersonBase", propOrder
= {
36 public abstract class TeamOrPersonBase
<T
extends TeamOrPersonBase
> extends Agent
implements INomenclaturalAuthor
{
37 static Logger logger
= Logger
.getLogger(TeamOrPersonBase
.class);
39 @XmlElement(name
="NomenclaturalTitle")
40 protected String nomenclaturalTitle
;
43 protected INomenclaturalAuthorCacheStrategy
<T
> cacheStrategy
;
46 * Returns the identification string (nomenclatural abbreviation) used in
47 * nomenclature for this {@link Person person} or this {@link Team team}.
49 * @see INomenclaturalAuthor#getNomenclaturalTitle()
51 public String
getNomenclaturalTitle() {
52 return nomenclaturalTitle
;
56 * @see #getNomenclaturalTitle()
58 public void setNomenclaturalTitle(String nomenclaturalTitle
) {
59 this.nomenclaturalTitle
= nomenclaturalTitle
;