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.
10 package eu
.etaxonomy
.cdm
.model
.name
;
13 import org
.apache
.log4j
.Logger
;
15 import eu
.etaxonomy
.cdm
.model
.agent
.Agent
;
16 import eu
.etaxonomy
.cdm
.model
.agent
.INomenclaturalAuthor
;
17 import eu
.etaxonomy
.cdm
.model
.agent
.TeamOrPersonBase
;
18 import eu
.etaxonomy
.cdm
.model
.reference
.INomenclaturalReference
;
19 import eu
.etaxonomy
.cdm
.strategy
.cache
.BotanicNameDefaultCacheStrategy
;
20 import eu
.etaxonomy
.cdm
.strategy
.cache
.ZooNameDefaultCacheStrategy
;
23 import javax
.persistence
.*;
26 * Taxon name class for animals
29 * @created 08-Nov-2007 13:07:03
32 public class ZoologicalName
extends NonViralName
{
33 static Logger logger
= Logger
.getLogger(ZoologicalName
.class);
35 //Name of the breed of an animal
37 private Integer publicationYear
;
38 private Integer originalPublicationYear
;
41 public static ZoologicalName
NewInstance(Rank rank
){
42 return new ZoologicalName(rank
, null);
45 public static ZoologicalName
NewInstance(Rank rank
, HomotypicalGroup homotypicalGroup
){
46 return new ZoologicalName(rank
, homotypicalGroup
);
48 public static ZoologicalName
NewInstance(Rank rank
, String genusOrUninomial
, String specificEpithet
, String infraSpecificEpithet
, TeamOrPersonBase combinationAuthorTeam
, INomenclaturalReference nomenclaturalReference
, String nomenclMicroRef
, HomotypicalGroup homotypicalGroup
) {
49 return new ZoologicalName(rank
, genusOrUninomial
, specificEpithet
, infraSpecificEpithet
, combinationAuthorTeam
, nomenclaturalReference
, nomenclMicroRef
, homotypicalGroup
);
52 protected ZoologicalName() {
53 this.cacheStrategy
= ZooNameDefaultCacheStrategy
.NewInstance();
56 protected ZoologicalName(Rank rank
, HomotypicalGroup homotypicalGroup
) {
57 super(rank
, homotypicalGroup
);
58 this.cacheStrategy
= ZooNameDefaultCacheStrategy
.NewInstance();
61 protected ZoologicalName (Rank rank
, String genusOrUninomial
, String specificEpithet
, String infraSpecificEpithet
, TeamOrPersonBase combinationAuthorTeam
, INomenclaturalReference nomenclaturalReference
, String nomenclMicroRef
, HomotypicalGroup homotypicalGroup
) {
62 super(rank
, genusOrUninomial
, specificEpithet
, infraSpecificEpithet
, combinationAuthorTeam
, nomenclaturalReference
, nomenclMicroRef
, homotypicalGroup
);
63 this.cacheStrategy
= ZooNameDefaultCacheStrategy
.NewInstance();
66 public String
getBreed(){
69 public void setBreed(String breed
){
73 public Integer
getPublicationYear() {
74 return publicationYear
;
76 public void setPublicationYear(Integer publicationYear
) {
77 this.publicationYear
= publicationYear
;
80 public Integer
getOriginalPublicationYear() {
81 return originalPublicationYear
;
83 public void setOriginalPublicationYear(Integer originalPublicationYear
) {
84 this.originalPublicationYear
= originalPublicationYear
;