3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
11 package eu
.etaxonomy
.cdm
.io
.redlist
.gefaesspflanzen
;
13 import java
.util
.UUID
;
15 import org
.apache
.log4j
.Logger
;
17 import eu
.etaxonomy
.cdm
.io
.common
.mapping
.InputTransformerBase
;
18 import eu
.etaxonomy
.cdm
.io
.common
.mapping
.UndefinedTransformerMethodException
;
19 import eu
.etaxonomy
.cdm
.model
.name
.NomenclaturalStatusType
;
20 import eu
.etaxonomy
.cdm
.model
.name
.Rank
;
21 import eu
.etaxonomy
.cdm
.model
.taxon
.TaxonRelationshipType
;
29 @SuppressWarnings("serial")
30 public final class RedListGefaesspflanzenTransformer
extends InputTransformerBase
{
32 @SuppressWarnings("unused")
33 private static final Logger logger
= Logger
.getLogger(RedListGefaesspflanzenTransformer
.class);
36 public UUID
getRankUuid(String key
) throws UndefinedTransformerMethodException
{
37 if (key
== null){return null;}
38 if (key
.equals("SAM")){return RedListUtil
.uuidRankCollectionSpecies
;}
43 public Rank
getRankByKey(String key
) throws UndefinedTransformerMethodException
{
44 if (key
== null){return null;}
45 if (key
.equals("GAT")){return Rank
.GENUS();}
46 else if (key
.equals("SPE")){return Rank
.SPECIES();}
47 else if (key
.equals("VAR")){return Rank
.VARIETY();}
48 else if (key
.equals("SSP")){return Rank
.SUBSPECIES();}
49 else if (key
.equals("FOR")){return Rank
.FORM();}
50 else if (key
.equals("RAC")){return Rank
.RACE();}
51 else if (key
.equals("SEC")){return Rank
.SECTION_BOTANY();}
52 else if (key
.equals("SSE")){return Rank
.SUBSECTION_BOTANY();}
53 else if (key
.equals("SGE")){return Rank
.SUBGENUS();}
54 else if (key
.equals("SVA")){return Rank
.SUBVARIETY();}
55 else if (key
.equals("CV")){return Rank
.CULTIVAR();}
56 else if (key
.equals("PRO")){return Rank
.PROLES();}
57 else if (key
.equals("SER")){return Rank
.SERIES();}
58 else if (key
.equals("GRE")){return Rank
.GREX();}
59 else if (key
.equals("AGG")){return Rank
.SPECIESAGGREGATE();}
60 else if (key
.equals("SFO")){return Rank
.SUBFORM();}
61 else if (key
.equals("FAM")){return Rank
.FAMILY();}
62 else if (key
.equals("SLU")){return Rank
.SUBLUSUS();}
63 //FIXME implement ranks
64 // else if (key.equals("LUS")){return Rank.LUSUS();}
65 // else if (key.equals("SPR")){return Rank.SUBPROLES();}
66 // else if (key.equals("SAM")){return Rank.SAMMELART();}
67 // else if (key.equals("MOD")){return Rank.MODIFICATIO();}
68 // else if (key.equals("KMB")){return Rank.COMBINATION();}
69 // else if (key.equals("SPI")){return Rank.SUBSPECIESPRINCIPES();}
70 else if (key
.equals("GRO") || key
.equals("GRU")){return Rank
.SPECIESGROUP();}
71 else if (key
.equals("?")){return Rank
.UNKNOWN_RANK();}
76 public NomenclaturalStatusType
getNomenclaturalStatusByKey(String key
) throws UndefinedTransformerMethodException
{
77 if (key
== null){return null;}
79 if (key
.equals("nom. cons.")){return NomenclaturalStatusType
.CONSERVED();}
80 else if (key
.equals("nom. illeg.")){return NomenclaturalStatusType
.ILLEGITIMATE();}
81 else if (key
.equals("nom. inval.")){return NomenclaturalStatusType
.INVALID();}
82 else if (key
.equals("nom. inval. (sine typus)")){return NomenclaturalStatusType
.INVALID();}
83 else if (key
.equals("nom. inval. (sine descr.)")){return NomenclaturalStatusType
.INVALID();}
84 else if (key
.equals("nom. inval. (sine descr. lat.)")){return NomenclaturalStatusType
.INVALID();}
85 else if (key
.equals("nom. inval. (sine basion.)")){return NomenclaturalStatusType
.INVALID();}
86 else if (key
.equals("nom. inval. (nom. non accept.)")){return NomenclaturalStatusType
.INVALID();}
87 else if (key
.equals("nom. ambig.")){return NomenclaturalStatusType
.AMBIGUOUS();}
88 else if (key
.equals("nom. nud.")){return NomenclaturalStatusType
.NUDUM();}
89 else if (key
.equals("nom. dub.")){return NomenclaturalStatusType
.DOUBTFUL();}
90 else if (key
.equals("nom. rejic.")){return NomenclaturalStatusType
.REJECTED();}
91 else if (key
.equals("nom. rejic. prop.")){return NomenclaturalStatusType
.REJECTED_PROP();}
92 else if (key
.equals("nom. utique rejic.")){return NomenclaturalStatusType
.UTIQUE_REJECTED();}
93 else if (key
.equals("nom. utique rejic. pro.")){return NomenclaturalStatusType
.UTIQUE_REJECTED_PROP();}
94 else if (key
.equals("nom. utique rejic. prop.")){return NomenclaturalStatusType
.UTIQUE_REJECTED_PROP();}
95 else if (key
.equals("comb. nov.")){return NomenclaturalStatusType
.COMB_NOV();}
96 else if (key
.equals("nom. illeg. (nom. superfl.)")){return NomenclaturalStatusType
.SUPERFLUOUS();}
97 else if (key
.equals("nom. inval. (nom. nud.)")){return NomenclaturalStatusType
.NUDUM();}
98 else if (key
.equals("nom. nud.")){return NomenclaturalStatusType
.NUDUM();}
99 else if (key
.equals("nom. inval. (op. utique oppr.)")){return NomenclaturalStatusType
.OPUS_UTIQUE_OPPR();}
100 else if (key
.equals("nom. inval. (nom. prov.)")){return NomenclaturalStatusType
.PROVISIONAL();}
104 public TaxonRelationshipType
getTaxonRelationshipTypeByKey(String key
) {
105 if (key
== null){return null;}
107 if (key
.equals("=")){return TaxonRelationshipType
.CONGRUENT_TO();}
108 else if (key
.equals(">")){return TaxonRelationshipType
.INCLUDES();}
109 else if (key
.equals("<")){return TaxonRelationshipType
.INCLUDES();}
110 else if (key
.equals("!")){return TaxonRelationshipType
.OVERLAPS();}
111 else if (key
.equals("?")){return TaxonRelationshipType
.UNCLEAR();}
112 else if (key
.equals("x")){return TaxonRelationshipType
.NOT_YET_WORKED_ON();}