int modCount = 100;\r
int page = 0;\r
int count = cdmApp.getTaxonService().count(Taxon.class);\r
- List<TaxonBase> taxonList = cdmApp.getTaxonService().list(Taxon.class, 100000, page, null, null);\r
+ List<Taxon> taxonList = cdmApp.getTaxonService().list(Taxon.class, 100000, page, null, null);\r
List<TaxonNameBase> nameList = cdmApp.getNameService().list(null, 100000, page, null, null);\r
Map<String, TaxonNameBase> nameMap = new HashMap<String, TaxonNameBase>();\r
Map<String, TaxonNameBase> nameDuplicateMap = new HashMap<String, TaxonNameBase>();\r
\r
int i = 0;\r
\r
- Taxon taxon;\r
- for (TaxonBase taxonBase : taxonList){\r
+ for (Taxon taxon : taxonList){\r
if ((i++ % modCount) == 0){ logger.warn("taxa handled: " + (i-1));}\r
\r
- if (taxonBase.isInstanceOf(Taxon.class)){\r
- taxon = CdmBase.deproxy(taxonBase, Taxon.class);\r
- Set<TextData> citations = getCitations(taxon);\r
- for (TextData citation : citations){\r
- Language language = Language.DEFAULT();\r
- String text = citation.getText(language);\r
- String originalNameString = parseOriginalNameString(text);\r
- String newText = parseNewText(text);\r
- citation.removeText(language);\r
- citation.putText(language, newText);\r
- TaxonNameBase<?,?> scientificName = getScientificName(originalNameString, nameMap, nameDuplicateMap);\r
- \r
- Set<DescriptionElementSource> sources = citation.getSources();\r
- if (sources.size() > 1){\r
- logger.warn("There are more then 1 sources for a description");\r
- }else if (sources.size() == 0){\r
- DescriptionElementSource source = DescriptionElementSource.NewInstance(OriginalSourceType.PrimaryTaxonomicSource);\r
- citation.addSource(source);\r
- sources = citation.getSources();\r
- }\r
- for (DescriptionElementSource source : sources){\r
- if (scientificName != null){\r
- source.setNameUsedInSource(scientificName);\r
- }else{\r
- source.setOriginalNameString(originalNameString);\r
- }\r
+ Set<TextData> citations = getCitations(taxon);\r
+ for (TextData citation : citations){\r
+ Language language = Language.DEFAULT();\r
+ String text = citation.getText(language);\r
+ String originalNameString = parseOriginalNameString(text);\r
+ String newText = parseNewText(text);\r
+ citation.removeText(language);\r
+ citation.putText(language, newText);\r
+ TaxonNameBase<?,?> scientificName = getScientificName(originalNameString, nameMap, nameDuplicateMap);\r
+ \r
+ Set<DescriptionElementSource> sources = citation.getSources();\r
+ if (sources.size() > 1){\r
+ logger.warn("There are more then 1 sources for a description");\r
+ }else if (sources.size() == 0){\r
+ DescriptionElementSource source = DescriptionElementSource.NewInstance(OriginalSourceType.PrimaryTaxonomicSource);\r
+ citation.addSource(source);\r
+ sources = citation.getSources();\r
+ }\r
+ for (DescriptionElementSource source : sources){\r
+ if (scientificName != null){\r
+ source.setNameUsedInSource(scientificName);\r
+ }else{\r
+ source.setOriginalNameString(originalNameString);\r
}\r
- \r
- citationsToSave.add(citation);\r
}\r
+ \r
+ citationsToSave.add(citation);\r
}\r
}\r
\r