本文整理汇总了Java中org.gbif.api.vocabulary.Rank类的典型用法代码示例。如果您正苦于以下问题:Java Rank类的具体用法?Java Rank怎么用?Java Rank使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Rank类属于org.gbif.api.vocabulary包,在下文中一共展示了Rank类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getHigherRank
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
String getHigherRank(Rank rank)
{
NameUsage<? extends NubNameUsage> n = getNameUsage();
if(n != this && n instanceof NubNameUsage) {
return ((NubNameUsage)n).getHigherRank(rank);
}
if(scientificNameUsage != null) {
return scientificNameUsage.getHigherRank(rank);
}
else if (nameUsageSearchResult != null) {
return nameUsageSearchResult.getHigherRank(rank);
}
else if (nameUsageSuggestResult != null) {
return nameUsageSuggestResult.getHigherRank(rank);
}
else {
return null;
}
}
示例2: getHigherRankKey
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
Integer getHigherRankKey(Rank rank)
{
NameUsage<? extends NubNameUsage> n = getNameUsage();
if(n != this && n instanceof NubNameUsage) {
return ((NubNameUsage)n).getHigherRankKey(rank);
}
if(scientificNameUsage != null) {
return scientificNameUsage.getHigherRankKey(rank);
}
else if (nameUsageSearchResult != null) {
return nameUsageSearchResult.getHigherRankKey(rank);
}
else if (nameUsageSuggestResult != null) {
return nameUsageSuggestResult.getHigherRankKey(rank);
}
else {
return null;
}
}
示例3: parseToCanonical
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
@Override
// parses the name without authorship and returns the ParsedName.canonicalName() string
public String parseToCanonical(String scientificName, @Nullable Rank rank) {
if (Strings.isNullOrEmpty(scientificName)) {
return null;
}
try {
ParsedName pn = parse(scientificName, rank);
if (pn != null) {
return pn.canonicalName();
}
} catch (UnparsableException e) {
logUnparsable(e);
}
return null;
}
示例4: parseQuietly
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
@Test
public void parseQuietly() throws Exception {
ParsedName pn = parser.parseQuietly("Navicula var. fasciata", Rank.VARIETY);
assertNull(pn.getSpecificEpithet());
assertEquals(NameType.INFORMAL, pn.getType());
assertEquals("Abies alba", parser.parseQuietly("Abies alba Mill.").canonicalName());
pn = parser.parseQuietly("Abies alba x Pinus graecus L.");
assertEquals("Abies alba x Pinus graecus L.", pn.getScientificName());
assertEquals(NameType.HYBRID, pn.getType());
assertNull(pn.getGenusOrAbove());
assertFalse(parser.parseQuietly("Protoscenium simplex (Cleve, 1899), Jørgensen, 1905 ", Rank.SPECIES).isParsedPartially());
assertFalse(parser.parseQuietly("Plagiacanthidae", Rank.SPECIES).isParsedPartially());
pn = parser.parseQuietly("Plagiacanthidae WhatTheHeck @%&/ (please dont parse me[ he?5789])", Rank.SPECIES);
assertTrue(pn.isParsed());
assertTrue(pn.isParsedPartially());
assertEquals("Plagiacanthidae", pn.getGenusOrAbove());
}
示例5: match
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
private OccurrenceParseResult<NameUsageMatch> match(Map<Term, String> terms) {
Rank rank = interpretRank(terms);
return match(
value(terms, DwcTerm.kingdom),
value(terms, DwcTerm.phylum),
value(terms, DwcTerm.class_),
value(terms, DwcTerm.order),
value(terms, DwcTerm.family),
value(terms, DwcTerm.genus),
value(terms, DwcTerm.scientificName),
value(terms, DwcTerm.scientificNameAuthorship),
value(terms, GbifTerm.genericName),
value(terms, DwcTerm.specificEpithet),
value(terms, DwcTerm.infraspecificEpithet),
rank);
}
示例6: updateSelfReferences
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
private void updateSelfReferences(NameUsage u) {
if (u.getBasionymKey() != null && u.getBasionymKey() == -1) {
u.setBasionymKey(u.getKey());
}
if (u.getParentKey() != null && u.getParentKey() == -1) {
u.setParentKey(u.getKey());
}
if (u.getAcceptedKey() != null && u.getAcceptedKey() == -1) {
u.setAcceptedKey(u.getKey());
}
if (u.getProParteKey() != null && u.getProParteKey() == -1) {
u.setProParteKey(u.getKey());
}
for (Rank r : Rank.LINNEAN_RANKS) {
if (u.getHigherRankKey(r) != null && u.getHigherRankKey(r) == -1) {
ClassificationUtils.setHigherRankKey(u, r, u.getKey());
}
}
}
示例7: testMatching
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
@Test
public void testMatching() throws IOException, InterruptedException {
matcher = NubMatchingTestModule.provideLookup();
assertMatch("Abies", "", "", Rank.GENUS, Kingdom.PLANTAE, 1);
assertNoMatch("Abies alba", null, null, Rank.SPECIES, Kingdom.ANIMALIA);
assertNoMatch("Abies alba", null, null, Rank.GENUS, Kingdom.PLANTAE);
assertNoMatch("Abies alba", null, null, Rank.SUBSPECIES, Kingdom.PLANTAE);
assertMatch("Abies alba", null, null, Rank.SPECIES, Kingdom.PLANTAE, 2);
assertMatch("Abies alba", "", "", Rank.SPECIES, Kingdom.PLANTAE, 2);
assertMatch("Abies alba", "", "1768", Rank.SPECIES, Kingdom.PLANTAE, 2);
assertMatch("Abies alba", "Mill.", "", Rank.SPECIES, Kingdom.PLANTAE, 2);
assertMatch("Abies alba", "Miller", "", Rank.SPECIES, Kingdom.PLANTAE, 2);
assertMatch("Abies alba", "Mill.", "1800", Rank.SPECIES, Kingdom.INCERTAE_SEDIS, 2);
assertMatch("Abies alba", "nothing but a year", "1768", Rank.SPECIES, Kingdom.INCERTAE_SEDIS, 2);
assertNoMatch("Abies alba", "DC", "", Rank.SPECIES, Kingdom.PLANTAE);
assertNoMatch("Abies alba", "DeCandole", "1770", Rank.SPECIES, Kingdom.PLANTAE);
assertNoMatch("Abies alba", "Linnaeus", "", Rank.SPECIES, Kingdom.PLANTAE);
assertNoMatch("Abies alba", "L.", "1989", Rank.SPECIES, Kingdom.PLANTAE);
}
示例8: testGetParent
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
@Test
public void testGetParent() throws Exception {
UsageDao dao = UsageDao.temporaryDao(10);
NubDb db = NubDb.create(dao, AuthorComparator.createWithoutAuthormap());
try (Transaction tx = dao.beginTx()) {
final NubUsage plantae = db.addRoot(buildNub(Kingdom.PLANTAE, "Plantae", Rank.KINGDOM, TaxonomicStatus.ACCEPTED));
final NubUsage oenanteP = db.addUsage(plantae, buildNub("Oenanthe Vieillot, 1816", Rank.GENUS, TaxonomicStatus.ACCEPTED));
db.addUsage(oenanteP, buildNub("Oenanthe aquatica Poir.", Rank.SPECIES, TaxonomicStatus.ACCEPTED));
NubUsage acc = db.addUsage(plantae, buildNub("Palma aquatica (Senser.)", Rank.SPECIES, TaxonomicStatus.ACCEPTED));
db.addUsage(acc, buildNub("Oenanthe aquatica Senser.", Rank.SPECIES, TaxonomicStatus.SYNONYM));
db.addUsage(oenanteP, buildNub("Oenanthe carolina (Mill.)", Rank.SPECIES, TaxonomicStatus.DOUBTFUL));
assertNull(db.parent((NubUsage) null));
assertNull(db.parent(new NubUsage()));
assertNull(db.parent(plantae));
assertNotNull(db.parent(oenanteP));
}
}
示例9: nubusage
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
public static NubUsage nubusage(int key) {
NubUsage u = new NubUsage();
u.usageKey = key;
u.datasetKey = UUID.randomUUID();
u.kingdom = Kingdom.byNubUsageId(RND.nextInt(8));
u.origin = Origin.SOURCE;
u.addRemark(StringUtils.randomSpecies());
u.parsedName = new ParsedName();
u.parsedName.setGenusOrAbove(StringUtils.randomGenus());
u.parsedName.setSpecificEpithet(StringUtils.randomEpithet());
if (key % 5 == 0) {
u.rank = Rank.SUBSPECIES;
u.parsedName.setInfraSpecificEpithet(StringUtils.randomEpithet());
} else {
u.rank = Rank.SPECIES;
}
u.parsedName.setAuthorship(StringUtils.randomAuthor());
u.parsedName.setYear(StringUtils.randomSpeciesYear());
u.parsedName.setScientificName(u.parsedName.fullName());
u.status = TaxonomicStatus.ACCEPTED;
return u;
}
示例10: testSetHigherRank
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
@Test
public void testSetHigherRank() throws Exception {
NameUsage lck = new NameUsage();
ClassificationUtils.setHigherRank(lck, Rank.GENUS, "harry");
assertEquals("harry", lck.getGenus());
assertNull(lck.getGenusKey());
ClassificationUtils.setHigherRank(lck, Rank.GENUS, "harrys", 432);
assertEquals("harrys", lck.getGenus());
assertEquals((Integer) 432, lck.getGenusKey());
ClassificationUtils.setHigherRank(lck, null, "klinke", 1);
assertEquals("harrys", lck.getGenus());
assertEquals((Integer) 432, lck.getGenusKey());
}
示例11: applyClassification
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
private void applyClassification(Node n) {
RankedName highest;
if (meta.isParentNameMapped()) {
// verify if we already have a classification, that it ends with a known rank
highest = getDirectParent(n);
if (highest.node != n && (highest.rank == null || UNKNOWN_RANKS.contains(highest.rank))) {
LOG.debug("Node {} already has a classification which ends in an uncomparable rank.", n.getId());
addIssueRemark(n, null, NameUsageIssue.CLASSIFICATION_NOT_APPLIED);
return;
}
} else {
// use this node
highest = dao.readRankedName(n);
}
// shortcut: exit if highest is already a kingdom, the denormed classification cannot add to it anymore!
if (highest.rank != null && highest.rank == Rank.KINGDOM) {
return;
}
LinneanClassification lc = dao.readUsage(n, false);
applyClassification(highest, lc);
}
示例12: testMatching
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
@Test
public void testMatching() throws IOException, InterruptedException {
assertMatch("Abies", Rank.GENUS, Kingdom.PLANTAE, 2684876);
assertNoMatch("Abies alba", Rank.SPECIES, Kingdom.ANIMALIA);
assertNoMatch("Abies alba", Rank.GENUS, Kingdom.PLANTAE);
assertNoMatch("Abies alba", Rank.SUBSPECIES, Kingdom.PLANTAE);
assertMatch("Abies alba", Rank.SPECIES, Kingdom.PLANTAE, 2685484);
assertMatch("Abies alba", Rank.SPECIES, Kingdom.PLANTAE, 2685484);
assertMatch("Abies alba 1768", Rank.SPECIES, Kingdom.PLANTAE, 2685484);
assertMatch("Abies alba Mill.", Rank.SPECIES, Kingdom.PLANTAE, 2685484);
assertMatch("Abies alba Miller", Rank.SPECIES, Kingdom.PLANTAE, 2685484);
assertMatch("Abies alba Mill., 1800", Rank.SPECIES, Kingdom.INCERTAE_SEDIS, 2685484);
assertNoMatch("Abies alba DC", Rank.SPECIES, Kingdom.PLANTAE);
assertNoMatch("Abies alba de Candolle, 1769", Rank.SPECIES, Kingdom.PLANTAE);
assertNoMatch("Abies alba Linnaeus", Rank.SPECIES, Kingdom.PLANTAE);
assertNoMatch("Abies alba L., 1989", Rank.SPECIES, Kingdom.PLANTAE);
// assertMatch("Abies alba nothing but a year, 1768", Rank.SPECIES, Kingdom.INCERTAE_SEDIS, 2685484);
}
示例13: createTaxonWithClassification
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
/**
* Creates a new taxon in neo and the name usage kvp using the source usages as a template for the classification properties.
* Only copies the classification above genus and ignores genus and below!
* A verbatim usage is created with just the parentNameUsage(ID) values so they can get resolved into proper neo relations later.
*
* @param taxonID the optional taxonID to apply to the new node
*/
private Node createTaxonWithClassification(Origin origin, String sciname, Rank rank, TaxonomicStatus status, NameUsageNode source,
@Nullable String taxonID, @Nullable String remarks, VerbatimNameUsage sourceVerbatim) {
NameUsage u = new NameUsage();
u.setScientificName(sciname);
u.setCanonicalName(sciname);
u.setRank(rank);
u.setOrigin(origin);
u.setTaxonomicStatus(status);
u.setTaxonID(taxonID);
u.setRemarks(remarks);
// copy verbatim classification from source
ClassificationUtils.copyLinneanClassification(source.usage, u);
removeGenusAndBelow(u);
Node n = create(u, false).node;
// copy parent props from source
VerbatimNameUsage v = new VerbatimNameUsage();
v.setCoreField(DwcTerm.parentNameUsageID, sourceVerbatim.getCoreField(DwcTerm.parentNameUsageID));
v.setCoreField(DwcTerm.parentNameUsage, sourceVerbatim.getCoreField(DwcTerm.parentNameUsage));
dao.store(n.getId(), v);
return n;
}
示例14: testVernacularNames
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
@Test
public void testVernacularNames() {
SearchResponse<NameUsageSearchResult, NameUsageSearchParameter> resp =
search("Sciurus vulgaris Linnaeus", NameUsageSearchParameter.RANK, Rank.SPECIES);
assertEquals(1, resp.getResults().size());
NameUsageSearchResult nu = resp.getResults().get(0);
assertEquals(2, nu.getVernacularNames().size());
resp = search("Sciurus vulgaris Linnaeus", NameUsageSearchParameter.RANK, Rank.SPECIES);
assertEquals(2, resp.getResults().get(0).getVernacularNames().size());
resp = search("Sciurus vulgaris Linnaeus", NameUsageSearchParameter.RANK, Rank.SPECIES);
assertEquals(2, resp.getResults().get(0).getVernacularNames().size());
resp = search("Eichhörnchen", null, null);
assertEquals(2, resp.getResults().size());
resp = search("Europäisches Eichhörnchen", null, null);
assertEquals(1, resp.getResults().size());
assertEquals(2, resp.getResults().get(0).getVernacularNames().size());
Set<String> vnames = getVernacularNamesSet(resp.getResults().get(0));
assertTrue(vnames.contains("Europäisches Eichhörnchen"));
}
示例15: testProParte
import org.gbif.api.vocabulary.Rank; //导入依赖的package包/类
@Test
public void testProParte() throws Exception {
IdGenerator gen = new IdGenerator(newTestLookup(), 1000);
// wrong kingdom
assertEquals(1000, gen.issue("Admetidae", null, null, Rank.FAMILY, Kingdom.PLANTAE));
// regular canonical match
assertEquals(20, gen.issue("Admetidae", null, null, Rank.FAMILY, Kingdom.ANIMALIA));
assertEquals(1001, gen.issue("Admetidae", null, null, Rank.FAMILY, Kingdom.ANIMALIA));
assertEquals(17, gen.issue("Admetidae", "Troschel", null, Rank.FAMILY, Kingdom.ANIMALIA));
// pro parte matching
assertEquals(1002, gen.issue("Admetidae", "Troschel", null, Rank.FAMILY, Kingdom.ANIMALIA, 100));
// deleted, but reissued
assertEquals(18, gen.issue("Admetidae", "Troschel", null, Rank.FAMILY, Kingdom.ANIMALIA, 110));
assertEquals(19, gen.issue("Admetidae", "Troschel", null, Rank.FAMILY, Kingdom.ANIMALIA, 111));
assertEquals(1003, gen.issue("Admetidae", "Troschel", null, Rank.FAMILY, Kingdom.ANIMALIA, 200));
assertEquals(8710209, gen.issue("Bombylius scintillans", "Brunetti", "1909", Rank.SPECIES, Kingdom.ANIMALIA, 1673124));
assertEquals(5093664, gen.issue("Bombylius scintillans", "Brunetti", "1909", Rank.SPECIES, Kingdom.ANIMALIA));
}