Add missing nomenclatural status and taxon relations to transformer
[cdmlib-apps.git] / app-import / src / main / java / eu / etaxonomy / cdm / io / wp6 / CommonNamesTransformer.java
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.wp6;
12
13 import java.util.UUID;
14
15 import org.apache.log4j.Logger;
16
17 import eu.etaxonomy.cdm.common.CdmUtils;
18 import eu.etaxonomy.cdm.io.common.TdwgAreaProvider;
19 import eu.etaxonomy.cdm.io.common.mapping.InputTransformerBase;
20 import eu.etaxonomy.cdm.io.common.mapping.UndefinedTransformerMethodException;
21 import eu.etaxonomy.cdm.model.common.Language;
22 import eu.etaxonomy.cdm.model.location.NamedArea;
23
24 /**
25 * @author a.mueller
26 * @created 01.03.2010
27 * @version 1.0
28 */
29 public final class CommonNamesTransformer extends InputTransformerBase {
30 @SuppressWarnings("unused")
31 private static final Logger logger = Logger.getLogger(CommonNamesTransformer.class);
32
33
34 //named area
35 public static final UUID uuidCentralAfrica = UUID.fromString("45f4e8a4-5145-4d87-af39-122495c08fe3");
36 public static final UUID uuidCentralAndEastAfrica = UUID.fromString("3ea55ef5-7428-4c3f-a1a8-4b6c306add0f");
37 public static final UUID uuidCentralAsiaAndMiddleEast = UUID.fromString("99c2c1e8-dfda-47a4-9835-312336e8ef0e");
38 public static final UUID uuidCentralEastAndSouthernAfrica = UUID.fromString("16972365-a1f7-49ac-89f5-700f3f186263");
39 public static final UUID uuidEastAfrica = UUID.fromString("3b548c0f-8d5d-4f03-b1f2-0c1cd1aa28d2");
40 public static final UUID uuidEastAndSouthernAfrica = UUID.fromString("4b785977-0878-4919-8b80-3b57e64eaa22");
41 public static final UUID uuidMascareneIslands = UUID.fromString("317ad421-5d3e-4e80-b048-15f703de7cee");
42 public static final UUID uuidMiddleEast = UUID.fromString("6575628a-95fa-46ba-aeab-14dbc1300e35");
43 public static final UUID uuidNorthEastAfrica = UUID.fromString("d27cd317-2bd5-4129-8762-40d313d21bed");
44 public static final UUID uuidSeychellesMadagascar = UUID.fromString("36874d33-033e-4b91-9200-96c00e6ef981");
45 public static final UUID uuidSeychellesMadagascarMauritius = UUID.fromString("c0d14467-1c8a-4c12-bb1f-8745daa14ab2");
46 public static final UUID uuidSomaliaEthiopia = UUID.fromString("3b4ac59c-b9d6-4cf3-97b0-dff4df7ab839");
47 public static final UUID uuidSouthAfrica = UUID.fromString("12288119-7cea-4cb2-a460-92d9eb8500fb");
48 public static final UUID uuidSouthAsia = UUID.fromString("7127dfb4-1e4b-48b0-9876-204c54a74814");
49 public static final UUID uuidSouthEastAsia = UUID.fromString("ba137511-7137-4692-816d-bf2823c52219");
50 public static final UUID uuidWestAfrica = UUID.fromString("49add437-63c8-4d12-ac32-00988ccde0e7");
51 public static final UUID uuidWestAndCentralAfrica = UUID.fromString("29027ab6-6d21-413b-8d3d-8548d40d5801");
52 public static final UUID uuidWestCentralEastAfrica = UUID.fromString("a94d2b9d-c58e-41df-9587-e3e01714b000");
53 public static final UUID uuidWesternAndEasternAfrica = UUID.fromString("19ffdae5-622c-459d-af29-c19914e0e3da");
54
55
56 // Languages
57 public static final UUID uuidAge = UUID.fromString("7915d555-72b3-4862-b8de-d6037dc581f0");
58 public static final UUID uuidArb = UUID.fromString("5e4ff341-a5fd-4ae7-9228-c60cb5c668fa");
59 public static final UUID uuidBnc = UUID.fromString("f9deb1c6-da95-46a3-a9eb-046fae544850");
60 public static final UUID uuidCrs = UUID.fromString("78677bcd-3fc1-4de3-a898-40464a221f82");
61 public static final UUID uuidDsh = UUID.fromString("60520bb9-7e29-4b58-b84a-d70f9c14650c");
62 public static final UUID uuidEnq = UUID.fromString("a24d01b4-77ad-4931-b4a0-49bc6706ac55");
63 public static final UUID uuidFvr = UUID.fromString("31bda027-cdf6-4fb9-bb11-effbe63bb4e8");
64 public static final UUID uuidHad = UUID.fromString("edff1b18-4d3f-4f46-af66-90d8e85759f1");
65 public static final UUID uuidHke = UUID.fromString("39170103-fc88-481e-80fe-c8702dd645b6");
66 public static final UUID uuidHre = UUID.fromString("19467133-c821-4e7e-9d39-4dd372c7442b");
67 public static final UUID uuidIbg = UUID.fromString("4843b8d4-0b9e-4641-90b1-05087536c034");
68 public static final UUID uuidIvv = UUID.fromString("65d65904-e8fd-4cd3-ae3e-86e98cdbe71f");
69 public static final UUID uuidJms = UUID.fromString("1639d843-17f5-497a-ab30-0da1180a9583");
70 public static final UUID uuidKue = UUID.fromString("39131dc6-3ebb-46c2-925f-27e53da6c529");
71 public static final UUID uuidKxc = UUID.fromString("dd66af4c-a0be-4b2c-8bcc-d834550e70f9");
72 public static final UUID uuidLaj = UUID.fromString("5699cede-1dcd-4fb5-8c93-60e4488156a5");
73 public static final UUID uuidMed = UUID.fromString("387cdf74-8c8b-49b8-b94c-0edebc07f381");
74 public static final UUID uuidMtv = UUID.fromString("80f60d66-17e7-4bcb-ad8c-629a8025d018");
75 public static final UUID uuidNnb = UUID.fromString("a1ad6c52-ff29-48be-b71a-f6cc518621be");
76 public static final UUID uuidNyj = UUID.fromString("0c850ba6-f256-4b5d-aad3-11a18e4a5fbb");
77 public static final UUID uuidNyu = UUID.fromString("81bd3221-3bf7-4456-8ee9-b9f8de6ce7c2");
78 public static final UUID uuidOku = UUID.fromString("4038e14f-1521-4467-869f-1869d96a9102");
79 public static final UUID uuidRng = UUID.fromString("3276075d-c1db-40fa-8ef1-849c94dc5ed3");
80 public static final UUID uuidScl = UUID.fromString("52da3217-6a41-409e-86fa-780466be67b5");
81 public static final UUID uuidSeh = UUID.fromString("019a1d37-5a11-4550-8423-133f54f64ab2");
82 public static final UUID uuidTeo = UUID.fromString("7c07979a-5a90-47e0-89b1-5ae0c21a8ce4");
83 public static final UUID uuidTra = UUID.fromString("819d7ab3-7f7c-4af5-bc31-d05e6a01bc33");
84 public static final UUID uuidTsz = UUID.fromString("62fce168-47e2-40ad-baf9-b1e28a53cb06");
85 public static final UUID uuidTya = UUID.fromString("e134c069-aea4-4b08-b545-fce120e7e37b");
86 public static final UUID uuidVmw = UUID.fromString("5e4a5ec1-2d6c-4afb-a453-32e7522c69bf");
87 public static final UUID uuidWgi = UUID.fromString("6f3aafcf-a7ca-4edb-b7f3-3eade674f62e");
88 public static final UUID uuidWni = UUID.fromString("e5843f50-86f9-42b1-a542-4201f73333c9");
89 // no iso-code
90 public static final UUID uuidBabua = UUID.fromString("a69e9d9f-ffaf-4815-b730-df9ceff5522b");
91 public static final UUID uuidGur = UUID.fromString("9ec8ba64-8911-4b92-89eb-e0092b4113e4");
92 public static final UUID uuidKilur = UUID.fromString("89f1286f-e869-4f10-a43a-d86ef729833e");
93 public static final UUID uuidNgwaka = UUID.fromString("67dfc889-0084-4932-9b21-ed54bbfe341f");
94
95
96
97 /* (non-Javadoc)
98 * @see eu.etaxonomy.cdm.io.common.mapping.InputTransformerBase#getMarkerTypeByKey(java.lang.String)
99 */
100 @Override
101 public NamedArea getNamedAreaByKey(String key) throws UndefinedTransformerMethodException {
102 if (CdmUtils.isEmpty(key)){return null;
103 // }else if (key.equalsIgnoreCase("Australia")){return Country.AUSTRALIACOMMONWEALTHOF();
104 }else if (key.equalsIgnoreCase("Azores")){return TdwgAreaProvider.getAreaByTdwgAbbreviation("AZO-OO");
105 }else if (key.equalsIgnoreCase("Canary Islands")){return TdwgAreaProvider.getAreaByTdwgAbbreviation("CNY-OO");
106 }else if (key.equalsIgnoreCase("North America")){return TdwgAreaProvider.getAreaByTdwgAbbreviation("7");
107 }else if (key.equalsIgnoreCase("Tansania")){return TdwgAreaProvider.getAreaByTdwgAbbreviation("TAN-OO");
108
109 }else{
110 return null;
111 }
112 }
113
114 @Override
115 public UUID getNamedAreaUuid(String key) throws UndefinedTransformerMethodException {
116 if (CdmUtils.isEmpty(key)){return null;
117 }else if (key.equalsIgnoreCase("Central Africa")){return uuidCentralAfrica;
118 }else if (key.equalsIgnoreCase("Central and East Africa")){return uuidCentralAndEastAfrica;
119 }else if (key.equalsIgnoreCase("Central Asia and Middle East")){return uuidCentralAsiaAndMiddleEast;
120 }else if (key.equalsIgnoreCase("Central, East and Southern Africa")){return uuidCentralEastAndSouthernAfrica;
121 }else if (key.equalsIgnoreCase("East and Southern Africa")){return uuidEastAndSouthernAfrica;
122 }else if (key.equalsIgnoreCase("East Africa")){return uuidEastAfrica;
123 }else if (key.equalsIgnoreCase("Mascarene Islands")){return uuidMascareneIslands;
124 }else if (key.equalsIgnoreCase("Middle East")){return uuidMiddleEast;
125 }else if (key.equalsIgnoreCase("North East Africa")){return uuidNorthEastAfrica;
126 }else if (key.equalsIgnoreCase("Seychelles and Madagascar")){return uuidSeychellesMadagascar;
127 }else if (key.equalsIgnoreCase("Seychelles, Madagascar and Mauritius")){return uuidSeychellesMadagascarMauritius;
128 }else if (key.equalsIgnoreCase("Somalia and Ethiopia")){return uuidSomaliaEthiopia;
129 }else if (key.equalsIgnoreCase("South Africa")){return uuidSouthAfrica;
130 }else if (key.equalsIgnoreCase("Southeast Asia")){return uuidSouthEastAsia;
131 }else if (key.equalsIgnoreCase("West Africa")){return uuidWestAfrica;
132 }else if (key.equalsIgnoreCase("West and Central Africa")){return uuidWestAndCentralAfrica;
133 }else if (key.equalsIgnoreCase("West, Central and East Africa")){return uuidWestCentralEastAfrica;
134 }else if (key.equalsIgnoreCase("South Asia")){return uuidSouthAsia;
135 }else if (key.equalsIgnoreCase("Western Africa")){return uuidWestAfrica;
136 }else if (key.equalsIgnoreCase("Western and Eastern Africa")){return uuidWesternAndEasternAfrica;
137 }else if (key.equalsIgnoreCase("Western Central Africa")){return uuidWestAndCentralAfrica;
138
139
140 }else{
141 return null;
142 }
143
144 }
145
146
147 /* (non-Javadoc)
148 * @see eu.etaxonomy.cdm.io.common.mapping.InputTransformerBase#getLanguageByKey(java.lang.String)
149 */
150 @Override
151 public Language getLanguageByKey(String key) throws UndefinedTransformerMethodException {
152 if (CdmUtils.isEmpty(key)){return null;
153 }else if (key.equals("age")){return Language.NewInstance(uuidAge, "Angal", key);
154 }else if (key.equals("arb")){return Language.NewInstance(uuidArb, "Standard Arabic", key);
155 }else if (key.equals("bnc")){return Language.NewInstance(uuidBnc, "Bontok", key);
156 }else if (key.equals("crs")){return Language.NewInstance(uuidCrs, "Seselwa Creole French", key);
157 }else if (key.equals("deu")){return Language.GERMAN();
158 }else if (key.equals("dsh")){return Language.NewInstance(uuidDsh, "Daasanach", key);
159 }else if (key.equals("ell")){return Language.GREEK_MODERN();
160 }else if (key.equals("enq")){return Language.NewInstance(uuidEnq, "Enga", key);
161 }else if (key.equals("fra")){return Language.FRENCH();
162 }else if (key.equals("fvr")){return Language.NewInstance(uuidFvr, "Fur", key);
163 }else if (key.equals("had")){return Language.NewInstance(uuidHad, "Hatam", key);
164 }else if (key.equals("hke")){return Language.NewInstance(uuidHke, "Hunde", key);
165 }else if (key.equals("hre")){return Language.NewInstance(uuidHre, "Hre", key);
166 }else if (key.equals("ibg")){return Language.NewInstance(uuidIbg, "Ibanag", key);
167 }else if (key.equals("ivv")){return Language.NewInstance(uuidIvv, "Ivatan", key);
168 }else if (key.equals("jms")){return Language.NewInstance(uuidJms, "Mashi (Nigeria)", key);
169 }else if (key.equals("kue")){return Language.NewInstance(uuidKue, "Kuman", key);
170 }else if (key.equals("kxc")){return Language.NewInstance(uuidKxc, "Konso", key);
171 }else if (key.equals("laj")){return Language.NewInstance(uuidLaj, "Lango (Uganda)", key);
172 }else if (key.equals("med")){return Language.NewInstance(uuidMed, "Melpa", key);
173 }else if (key.equals("mri")){return Language.MAORI();
174 }else if (key.equals("mtv")){return Language.NewInstance(uuidMtv, "Asaro'o", key);
175 }else if (key.equals("nld")){return Language.DUTCH_FLEMISH();
176 }else if (key.equals("nnb")){return Language.NewInstance(uuidNnb, "Nande", key);
177 }else if (key.equals("nyj")){return Language.NewInstance(uuidNyj, "Nyanga", key);
178 }else if (key.equals("nyu")){return Language.NewInstance(uuidNyu, "Nyungwe", key);
179 }else if (key.equals("oku")){return Language.NewInstance(uuidOku, "Oku", key);
180 }else if (key.equals("rng")){return Language.NewInstance(uuidRng, "Ronga", key);
181 }else if (key.equals("scl")){return Language.NewInstance(uuidScl, "Shina", key);
182 }else if (key.equals("seh")){return Language.NewInstance(uuidSeh, "Sena", key);
183 }else if (key.equals("teo")){return Language.NewInstance(uuidTeo, "Teso", key);
184 }else if (key.equals("tra")){return Language.NewInstance(uuidTra, "Tirahi", key);
185 }else if (key.equals("tsz")){return Language.NewInstance(uuidTsz, "Purepecha", key);
186 }else if (key.equals("tya")){return Language.NewInstance(uuidTya, "Tauya", key);
187 }else if (key.equals("vmw")){return Language.NewInstance(uuidVmw, "Makhuwa", key);
188 }else if (key.equals("wgi")){return Language.NewInstance(uuidWgi, "Wahgi", key);
189 }else if (key.equals("wni")){return Language.NewInstance(uuidWni, "Ndzwani Comorian", key);
190 // no iso-code
191 }else if (key.equals("Babua")){return Language.NewInstance(uuidBabua, "Babua", null);
192 }else if (key.equals("Kilur")){return Language.NewInstance(uuidKilur, "Kilur", null);
193 }else if (key.equals("Ngwaka")){return Language.NewInstance(uuidNgwaka, "Ngwaka", null);
194 }else if (key.equals("Gur")){return Language.NewInstance(uuidGur, "Gur", null);
195 }else{
196 return null;
197 }
198 }
199
200
201
202 /* (non-Javadoc)
203 * @see eu.etaxonomy.cdm.io.common.mapping.InputTransformerBase#getLanguageUuid(java.lang.String)
204 */
205 @Override
206 public UUID getLanguageUuid(String key) throws UndefinedTransformerMethodException {
207 if (CdmUtils.isEmpty(key)){return null;
208 }else if (key.equalsIgnoreCase("Babua")){return uuidBabua;
209 }else if (key.equalsIgnoreCase("Kilur")){return uuidKilur;
210 }else if (key.equalsIgnoreCase("Ngwaka")){return uuidNgwaka;
211 }else if (key.equalsIgnoreCase("Gur")){return uuidGur;
212
213 }else{
214 return null;
215 }
216
217 }
218
219
220
221 }