Revision 5d5e8580
Added by Andreas Müller over 9 years ago
app-import/src/main/java/eu/etaxonomy/cdm/io/cyprus/CyprusDistributionImport.java | ||
---|---|---|
24 | 24 |
|
25 | 25 |
import eu.etaxonomy.cdm.api.service.pager.Pager; |
26 | 26 |
import eu.etaxonomy.cdm.common.CdmUtils; |
27 |
import eu.etaxonomy.cdm.io.common.TdwgAreaProvider; |
|
28 | 27 |
import eu.etaxonomy.cdm.io.common.mapping.IInputTransformer; |
29 | 28 |
import eu.etaxonomy.cdm.io.common.mapping.UndefinedTransformerMethodException; |
30 | 29 |
import eu.etaxonomy.cdm.io.excel.common.ExcelImporterBase; |
... | ... | |
35 | 34 |
import eu.etaxonomy.cdm.model.description.DescriptionBase; |
36 | 35 |
import eu.etaxonomy.cdm.model.description.DescriptionElementBase; |
37 | 36 |
import eu.etaxonomy.cdm.model.description.Distribution; |
38 |
import eu.etaxonomy.cdm.model.description.PresenceAbsenceTermBase; |
|
39 |
import eu.etaxonomy.cdm.model.description.PresenceTerm; |
|
37 |
import eu.etaxonomy.cdm.model.description.PresenceAbsenceTerm; |
|
40 | 38 |
import eu.etaxonomy.cdm.model.description.TaxonDescription; |
39 |
import eu.etaxonomy.cdm.model.location.Country; |
|
41 | 40 |
import eu.etaxonomy.cdm.model.location.NamedArea; |
42 | 41 |
import eu.etaxonomy.cdm.model.location.NamedAreaLevel; |
43 | 42 |
import eu.etaxonomy.cdm.model.location.NamedAreaType; |
44 |
import eu.etaxonomy.cdm.model.location.Country; |
|
45 | 43 |
import eu.etaxonomy.cdm.model.name.BotanicalName; |
46 | 44 |
import eu.etaxonomy.cdm.model.reference.Reference; |
47 | 45 |
import eu.etaxonomy.cdm.model.reference.ReferenceFactory; |
... | ... | |
138 | 136 |
|
139 | 137 |
// TaxonDescription description = getTaxonDescription(taxon, NO_IMAGE_GALLERY, CREATE); |
140 | 138 |
TaxonDescription description = getNewDescription(state, taxon); |
141 |
PresenceAbsenceTermBase<?> status = getStatus(taxon);
|
|
139 |
PresenceAbsenceTerm status = getStatus(taxon); |
|
142 | 140 |
status = removeDoubtfulStatus(status); |
143 | 141 |
removeDistributions(taxon); |
144 | 142 |
|
... | ... | |
160 | 158 |
return desc; |
161 | 159 |
} |
162 | 160 |
|
163 |
private PresenceAbsenceTermBase<?> indigenousStatus;
|
|
164 |
private PresenceAbsenceTermBase<?> casualStatus;
|
|
165 |
private PresenceAbsenceTermBase<?> nonInvasiveStatus;
|
|
166 |
private PresenceAbsenceTermBase<?> invasiveStatus;
|
|
167 |
private PresenceAbsenceTermBase<?> questionableStatus;
|
|
161 |
private PresenceAbsenceTerm indigenousStatus; |
|
162 |
private PresenceAbsenceTerm casualStatus; |
|
163 |
private PresenceAbsenceTerm nonInvasiveStatus; |
|
164 |
private PresenceAbsenceTerm invasiveStatus; |
|
165 |
private PresenceAbsenceTerm questionableStatus; |
|
168 | 166 |
|
169 |
private PresenceAbsenceTermBase<?> removeDoubtfulStatus(PresenceAbsenceTermBase<?> status) {
|
|
167 |
private PresenceAbsenceTerm removeDoubtfulStatus(PresenceAbsenceTerm status) {
|
|
170 | 168 |
if (status == null){ |
171 | 169 |
return null; |
172 | 170 |
} |
... | ... | |
181 | 179 |
}else if (status.getUuid().equals(CyprusTransformer.questionableDoubtfulUuid)){ |
182 | 180 |
status = questionableStatus; |
183 | 181 |
}else if (status.getUuid().equals(CyprusTransformer.cultivatedDoubtfulUuid)){ |
184 |
status = PresenceTerm.CULTIVATED(); |
|
182 |
status = PresenceAbsenceTerm.CULTIVATED();
|
|
185 | 183 |
} |
186 | 184 |
|
187 | 185 |
return status; |
188 | 186 |
} |
189 | 187 |
|
190 |
private PresenceAbsenceTermBase<?> getStatus(Taxon taxon) {
|
|
191 |
Set<PresenceAbsenceTermBase<?>> statusSet = new HashSet<PresenceAbsenceTermBase<?>>();
|
|
188 |
private PresenceAbsenceTerm getStatus(Taxon taxon) { |
|
189 |
Set<PresenceAbsenceTerm> statusSet = new HashSet<PresenceAbsenceTerm>();
|
|
192 | 190 |
Set<Distribution> existingDistributions = getExistingDistributions(taxon); |
193 | 191 |
if (existingDistributions.size() > 1){ |
194 | 192 |
logger.warn("There is more than 1 distribution: " + taxon.getTitleCache()); |
195 | 193 |
} |
196 | 194 |
for (Distribution distribution: existingDistributions){ |
197 |
PresenceAbsenceTermBase<?> status = distribution.getStatus();
|
|
195 |
PresenceAbsenceTerm status = distribution.getStatus(); |
|
198 | 196 |
statusSet.add(status); |
199 | 197 |
} |
200 | 198 |
|
... | ... | |
340 | 338 |
* |
341 | 339 |
*/ |
342 | 340 |
private void loadStatus() { |
343 |
indigenousStatus = (PresenceTerm)getTermService().find(CyprusTransformer.indigenousUuid); |
|
344 |
casualStatus = (PresenceTerm)getTermService().find(CyprusTransformer.casualUuid); |
|
345 |
nonInvasiveStatus = (PresenceTerm)getTermService().find(CyprusTransformer.nonInvasiveUuid); |
|
346 |
invasiveStatus = (PresenceTerm)getTermService().find(CyprusTransformer.invasiveUuid); |
|
347 |
questionableStatus = (PresenceTerm)getTermService().find(CyprusTransformer.questionableUuid); |
|
341 |
indigenousStatus = (PresenceAbsenceTerm)getTermService().find(CyprusTransformer.indigenousUuid);
|
|
342 |
casualStatus = (PresenceAbsenceTerm)getTermService().find(CyprusTransformer.casualUuid);
|
|
343 |
nonInvasiveStatus = (PresenceAbsenceTerm)getTermService().find(CyprusTransformer.nonInvasiveUuid);
|
|
344 |
invasiveStatus = (PresenceAbsenceTerm)getTermService().find(CyprusTransformer.invasiveUuid);
|
|
345 |
questionableStatus = (PresenceAbsenceTerm)getTermService().find(CyprusTransformer.questionableUuid);
|
|
348 | 346 |
} |
349 | 347 |
|
350 | 348 |
/** |
Also available in: Unified diff
adapt app-import to model 3.4.1