本文整理汇总了Java中org.gbif.api.model.checklistbank.ParsedName.getScientificName方法的典型用法代码示例。如果您正苦于以下问题:Java ParsedName.getScientificName方法的具体用法?Java ParsedName.getScientificName怎么用?Java ParsedName.getScientificName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.gbif.api.model.checklistbank.ParsedName
的用法示例。
在下文中一共展示了ParsedName.getScientificName方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: scientificName
import org.gbif.api.model.checklistbank.ParsedName; //导入方法依赖的package包/类
/**
* @param pn
* @param code to which rules to adhere to
* @return
*/
public static String scientificName(ParsedName pn, NomenclaturalCode code) {
if (!pn.isParsed() || NomenclaturalCode.VIRUS == code) {
return pn.getScientificName();
}
// remove authorship if indet name
if (pn.isIndetermined()) {
return pn.buildName(true, true, false, false, true, false, true, false, true, false, false, false, true, true);
}
String sciname;
if (code == NomenclaturalCode.ZOOLOGICAL && pn.getInfraSpecificEpithet() != null && Rank.SUBSPECIES == pn.getRank()) {
Rank r = pn.getRank();
pn.setRank(null);
sciname = pn.buildName(true, false, true, false, true, false, true, false, true, false, false, false, true, true);
pn.setRank(r);
} else {
sciname = pn.canonicalNameComplete();
}
return sciname;
}
示例2: canonicalOrScientificName
import org.gbif.api.model.checklistbank.ParsedName; //导入方法依赖的package包/类
/**
* @return the canonical name of a parsed name or the entire scientific name in case the canonical cannot be created (e.g. virus or hybrid names)
*/
public static String canonicalOrScientificName(ParsedName pn) {
if (pn.isParsed()) {
String name = SciNameNormalizer.normalize(pn.canonicalName());
if (!StringUtils.isBlank(name)) {
return name;
}
LOG.error("Parsed {} name found with an empty canonical name string: {}", pn.getType(), pn.getScientificName());
}
return pn.getScientificName();
}
示例3: parseAuthorship
import org.gbif.api.model.checklistbank.ParsedName; //导入方法依赖的package包/类
/**
* Extract authorship from the name itself as best as we can to at least do some common string comparison
*/
private void parseAuthorship(ParsedName pn) {
// try to use full sciname minus the epithets
String lastEpithet = ObjectUtils.coalesce(pn.getInfraSpecificEpithet(), pn.getSpecificEpithet(), pn.getGenusOrAbove());
if (lastEpithet != null && pn.getScientificName() != null) {
int idx = pn.getScientificName().lastIndexOf(lastEpithet);
if (idx >= 0) {
pn.setAuthorship(pn.getScientificName().substring(idx + lastEpithet.length()));
}
}
// copy full name to year, will be extracted/normalized in year comparison
pn.setYear(pn.getScientificName());
pn.setParsedPartially(false);
}