NIHVIVO-2089 improvements to handling of individuals not found in SDB
This commit is contained in:
parent
fad60f5e04
commit
f09ac267a2
1 changed files with 24 additions and 6 deletions
|
@ -136,7 +136,10 @@ public class IndividualDaoSDB extends IndividualDaoJena {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (uri != null && !uri.equals(currRes.getURI())) {
|
if (uri != null && !uri.equals(currRes.getURI())) {
|
||||||
ents.add(makeIndividual(uri, label, moniker));
|
Individual ent = makeIndividual(uri, label, moniker);
|
||||||
|
if (ent != null) {
|
||||||
|
ents.add(ent);
|
||||||
|
}
|
||||||
uri = currRes.getURI();
|
uri = currRes.getURI();
|
||||||
label = null;
|
label = null;
|
||||||
moniker = null;
|
moniker = null;
|
||||||
|
@ -152,7 +155,10 @@ public class IndividualDaoSDB extends IndividualDaoJena {
|
||||||
moniker = monikerLit.getLexicalForm();
|
moniker = monikerLit.getLexicalForm();
|
||||||
}
|
}
|
||||||
if (!rs.hasNext()) {
|
if (!rs.hasNext()) {
|
||||||
ents.add(makeIndividual(uri, label, moniker));
|
Individual ent = makeIndividual(uri, label, moniker);
|
||||||
|
if (ent != null) {
|
||||||
|
ents.add(ent);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} finally {
|
} finally {
|
||||||
|
@ -368,7 +374,13 @@ public class IndividualDaoSDB extends IndividualDaoJena {
|
||||||
return innerIt.hasNext();
|
return innerIt.hasNext();
|
||||||
}
|
}
|
||||||
public Object next() {
|
public Object next() {
|
||||||
return makeIndividual(innerIt.next());
|
String indURI = innerIt.next();
|
||||||
|
Individual ind = makeIndividual(indURI);
|
||||||
|
if (ind != null) {
|
||||||
|
return ind;
|
||||||
|
} else {
|
||||||
|
return new IndividualImpl(indURI);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public void remove() {
|
public void remove() {
|
||||||
//not used
|
//not used
|
||||||
|
@ -388,7 +400,10 @@ public class IndividualDaoSDB extends IndividualDaoJena {
|
||||||
Iterator indIt = cls.listInstances();
|
Iterator indIt = cls.listInstances();
|
||||||
while (indIt.hasNext()) {
|
while (indIt.hasNext()) {
|
||||||
com.hp.hpl.jena.ontology.Individual ind = (com.hp.hpl.jena.ontology.Individual) indIt.next();
|
com.hp.hpl.jena.ontology.Individual ind = (com.hp.hpl.jena.ontology.Individual) indIt.next();
|
||||||
ents.add(makeIndividual(ind.getURI()));
|
Individual ent = makeIndividual(ind.getURI());
|
||||||
|
if (ent != null) {
|
||||||
|
ents.add(ent);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return ents.iterator();
|
return ents.iterator();
|
||||||
} finally {
|
} finally {
|
||||||
|
@ -437,7 +452,10 @@ public class IndividualDaoSDB extends IndividualDaoJena {
|
||||||
typeIt.close();
|
typeIt.close();
|
||||||
}
|
}
|
||||||
if (userVisible) {
|
if (userVisible) {
|
||||||
ents.add(makeIndividual(ent.getURI()));
|
Individual ind = makeIndividual(ent.getURI());
|
||||||
|
if (ind != null) {
|
||||||
|
ents.add(ind);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue