Project

General

Profile

Download (5.12 KB) Statistics
| Branch: | Revision:
1
// $Id$
2
/**
3
* Copyright (C) 2007 EDIT
4
* European Distributed Institute of Taxonomy
5
* http://www.e-taxonomy.eu
6
*
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.
9
*/
10

    
11
package eu.etaxonomy.cdm.io.redlist.gefaesspflanzen;
12

    
13
import org.apache.log4j.Logger;
14

    
15
import eu.etaxonomy.cdm.io.common.mapping.InputTransformerBase;
16
import eu.etaxonomy.cdm.io.common.mapping.UndefinedTransformerMethodException;
17
import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;
18
import eu.etaxonomy.cdm.model.name.Rank;
19
import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
20

    
21
/**
22
 *
23
 * @author pplitzner
24
 * @date Mar 1, 2016
25
 *
26
 */
27
@SuppressWarnings("serial")
28
public final class RedListGefaesspflanzenTransformer extends InputTransformerBase {
29

    
30
    @SuppressWarnings("unused")
31
	private static final Logger logger = Logger.getLogger(RedListGefaesspflanzenTransformer.class);
32

    
33
    @Override
34
    public Rank getRankByKey(String key) throws UndefinedTransformerMethodException {
35
        if (key == null){return null;}
36
        if (key.equals("GAT")){return Rank.GENUS();}
37
        else if (key.equals("SPE")){return Rank.SPECIES();}
38
        else if (key.equals("VAR")){return Rank.VARIETY();}
39
        else if (key.equals("SSP")){return Rank.SUBSPECIES();}
40
        else if (key.equals("FOR")){return Rank.FORM();}
41
        else if (key.equals("RAC")){return Rank.RACE();}
42
        else if (key.equals("SEC")){return Rank.SECTION_BOTANY();}
43
        else if (key.equals("SSE")){return Rank.SUBSECTION_BOTANY();}
44
        else if (key.equals("SGE")){return Rank.SUBGENUS();}
45
        else if (key.equals("SVA")){return Rank.SUBVARIETY();}
46
        else if (key.equals("CV")){return Rank.CULTIVAR();}
47
        else if (key.equals("PRO")){return Rank.PROLES();}
48
        else if (key.equals("SER")){return Rank.SERIES();}
49
        else if (key.equals("GRE")){return Rank.GREX();}
50
        else if (key.equals("AGG")){return Rank.SPECIESAGGREGATE();}
51
        else if (key.equals("GRO") || key.equals("GRU")){return Rank.SPECIESGROUP();}
52
        else if (key.equals("ORA")){return null;}
53
        else if (key.equals("?")){return Rank.UNKNOWN_RANK();}
54
        return null;
55
    }
56

    
57
    @Override
58
    public NomenclaturalStatusType getNomenclaturalStatusByKey(String key) throws UndefinedTransformerMethodException {
59
        if (key == null){return null;}
60
        if (key.equals("nom. cons.")){return NomenclaturalStatusType.CONSERVED();}
61
        else if (key.equals("nom. illeg.")){return NomenclaturalStatusType.ILLEGITIMATE();}
62
        else if (key.equals("nom. inval.")){return NomenclaturalStatusType.INVALID();}
63
        else if (key.equals("nom. inval. (sine typus)")){return NomenclaturalStatusType.INVALID();}
64
        else if (key.equals("nom. inval. (sine descr.)")){return NomenclaturalStatusType.INVALID();}
65
        else if (key.equals("nom. inval. (sine descr. lat.)")){return NomenclaturalStatusType.INVALID();}
66
        else if (key.equals("nom. inval. (sine basion.)")){return NomenclaturalStatusType.INVALID();}
67
        else if (key.equals("nom. inval. (nom. non accept.)")){return NomenclaturalStatusType.INVALID();}
68
        else if (key.equals("nom. ambig.")){return NomenclaturalStatusType.AMBIGUOUS();}
69
        else if (key.equals("nom. nud.")){return NomenclaturalStatusType.NUDUM();}
70
        else if (key.equals("nom. dub.")){return NomenclaturalStatusType.DOUBTFUL();}
71
        else if (key.equals("nom. rejic.")){return NomenclaturalStatusType.REJECTED();}
72
        else if (key.equals("nom. rejic. prop.")){return NomenclaturalStatusType.REJECTED_PROP();}
73
        else if (key.equals("nom. utique rejic.")){return NomenclaturalStatusType.UTIQUE_REJECTED();}
74
        else if (key.equals("nom. utique rejic. pro.")){return NomenclaturalStatusType.UTIQUE_REJECTED_PROP();}
75
        else if (key.equals("nom. utique rejic. prop.")){return NomenclaturalStatusType.UTIQUE_REJECTED_PROP();}
76
        else if (key.equals("comb. nov.")){return NomenclaturalStatusType.COMB_NOV();}
77
        else if (key.equals("nom. illeg. (nom. superfl.)")){return NomenclaturalStatusType.SUPERFLUOUS();}
78
        else if (key.equals("nom. inval. (nom. nud.)")){return NomenclaturalStatusType.NUDUM();}
79
        else if (key.equals("nom. nud.")){return NomenclaturalStatusType.NUDUM();}
80
        else if (key.equals("nom. inval. (op. utique oppr.)")){return NomenclaturalStatusType.OPUS_UTIQUE_OPPR();}
81
        else if (key.equals("nom. inval. (nom. prov.)")){return NomenclaturalStatusType.PROVISIONAL();}
82
        return null;
83
    }
84

    
85
    public TaxonRelationshipType getTaxonRelationshipTypeByKey(String key) {
86
        if (key == null){return null;}
87
        else {
88
            if (key.equals("=")){return TaxonRelationshipType.CONGRUENT_TO();}
89
            else if (key.equals(">")){return TaxonRelationshipType.INCLUDES();}
90
            else if (key.equals("<")){return TaxonRelationshipType.INCLUDES();}
91
            else if (key.equals("!")){return TaxonRelationshipType.OVERLAPS();}
92
            else if (key.equals("?")){return TaxonRelationshipType.UNCLEAR();}
93
            else if (key.equals("x")){return TaxonRelationshipType.NOT_YET_WORKED_ON();}
94
        }
95
        return null;
96
    }
97

    
98
}
(6-6/7)