public TMObjectIF getObjectByIdentifier(String id) { if (base == null) return null; LocatorIF loc = base.resolveAbsolute("#" + id); return topicmap.getObjectByItemIdentifier(loc); }
/** * INTERNAL: Looks up a topic map object by its symbolic id. */ public static TMObjectIF getObjectBySymbolicId(TopicMapIF topicmap, String symbolicId) { LocatorIF loc = getSymbolicIdLocator(topicmap, symbolicId); if (loc != null) return topicmap.getObjectByItemIdentifier(loc); else return null; }
private TMObjectIF resolveAsLocator(TopicMapIF topicmap, LocatorIF locator) { TMObjectIF o = topicmap.getTopicBySubjectIdentifier(locator); if (o == null) { o = topicmap.getTopicBySubjectLocator(locator); } if (o == null) { o = topicmap.getObjectByItemIdentifier(locator); } return o; } }
private TopicIF getTopicById(TopicMapIF topicmap, String id) { LocatorIF base = topicmap.getStore().getBaseAddress(); LocatorIF srcloc = base.resolveAbsolute('#' + id); return (TopicIF) topicmap.getObjectByItemIdentifier(srcloc); }
private void addItemIdentifier(TopicIF topic, LocatorIF ii) { seenIdentity = true; TMObjectIF obj = topicmap.getObjectByItemIdentifier(ii); if (obj == null) topic.addItemIdentifier(ii); else if (obj instanceof TopicIF) merge(topic, (TopicIF) obj); else // itemid collision throw new InvalidTopicMapException("Another object " + obj + " already " + "has item identifier " + ii); }
private String makeRandomId(TopicMapIF topicmap) { String id; TMObjectIF tmobj; LocatorIF base = topicmap.getStore().getBaseAddress(); do { id = StringUtils.makeRandomId(10); tmobj = topicmap.getObjectByItemIdentifier(base.resolveAbsolute("#" + id)); } while (tmobj != null); return id; }
private String makeRandomId(TopicMapIF topicmap) { String id; TMObjectIF tmobj; LocatorIF base = topicmap.getStore().getBaseAddress(); do { id = net.ontopia.utils.StringUtils.makeRandomId(10); tmobj = topicmap.getObjectByItemIdentifier(base.resolveAbsolute("#" + id)); } while (tmobj != null); return id; } }
@Override public TMObjectIF getObjectByItemId(String uri) throws AntlrWrapException { TMObjectIF object = topicmap.getObjectByItemIdentifier(absolutify(uri)); if (object == null) throw new AntlrWrapException(new BadObjectReferenceException("No object with item identifier '" + uri + "' found")); return object; }
public void testAssociation() { LocatorIF loc = base.resolveAbsolute("#topic-1"); TopicIF topic = (TopicIF)tm.getObjectByItemIdentifier(loc); AssociationRoleIF assocrl = (AssociationRoleIF)topic.getRoles().iterator().next(); AssociationIF association = assocrl.getAssociation(); tmobjectTest(association, true, true); }
public TopicIF getTopicById(TopicMapIF topicmap, String id) { LocatorIF base = topicmap.getStore().getBaseAddress(); return (TopicIF) topicmap.getObjectByItemIdentifier(base.resolveAbsolute("#"+id)); }
public void testName() { LocatorIF loc = base.resolveAbsolute("#topic-2"); TopicIF topic = (TopicIF)tm.getObjectByItemIdentifier(loc); TopicNameIF topic_name = (TopicNameIF)topic.getTopicNames().iterator().next(); tmobjectTest(topic_name, true, true); assertTrue("getTopicName", topic_name.getTopic() == topic); }
@Override public void run(MasterTest mt) { VariantNameIF vn = (VariantNameIF)topicmap.getObjectById(mt.objectId); assertTrue("Variant name source locator is not set", vn.getItemIdentifiers().contains(URILocator.create("x:source-locator"))); assertTrue("Variant name not found by source locator", topicmap.getObjectByItemIdentifier(URILocator.create("x:source-locator")).equals(vn)); } });
@Override public void run(MasterTest mt) { AssociationRoleIF r = (AssociationRoleIF)topicmap.getObjectById(mt.objectId); assertTrue("Role source locator is not set", r.getItemIdentifiers().contains(URILocator.create("x:source-locator"))); assertTrue("Role not found by source locator", topicmap.getObjectByItemIdentifier(URILocator.create("x:source-locator")).equals(r)); } });
@Override public void run(MasterTest mt) { TopicNameIF bn = (TopicNameIF)topicmap.getObjectById(mt.objectId); assertTrue("Base name source locator is not set", bn.getItemIdentifiers().contains(URILocator.create("x:source-locator"))); assertTrue("Base name not found by source locator", topicmap.getObjectByItemIdentifier(URILocator.create("x:source-locator")).equals(bn)); } });
@Override public void run(MasterTest mt) { OccurrenceIF o = (OccurrenceIF)topicmap.getObjectById(mt.objectId); assertTrue("Occurrence source locator is not set", o.getItemIdentifiers().contains(URILocator.create("x:source-locator"))); assertTrue("Occurrence not found by source locator", topicmap.getObjectByItemIdentifier(URILocator.create("x:source-locator")).equals(o)); } });
@Override public void run(MasterTest mt) { AssociationIF a = (AssociationIF)topicmap.getObjectById(mt.objectId); assertTrue("Association source locator is set", !a.getItemIdentifiers().contains(URILocator.create("x:source-locator"))); assertTrue("Association found by source locator", topicmap.getObjectByItemIdentifier(URILocator.create("x:source-locator")) == null); } });
@Override public void run(MasterTest mt) { OccurrenceIF o = (OccurrenceIF)topicmap.getObjectById(mt.objectId); assertTrue("Occurrence source locator is set", !o.getItemIdentifiers().contains(URILocator.create("x:source-locator"))); assertTrue("Occurrence found by source locator", topicmap.getObjectByItemIdentifier(URILocator.create("x:source-locator")) == null); } });
@Override public void run(MasterTest mt) { TopicMapIF m = (TopicMapIF)topicmap.getObjectById(mt.objectId); assertTrue("Topic map source locator is set", !m.getItemIdentifiers().contains(URILocator.create("x:source-locator"))); assertTrue("Topic map found by source locator", topicmap.getObjectByItemIdentifier(URILocator.create("x:source-locator")) == null); } });
@Override public void run(MasterTest mt) { AssociationRoleIF r = (AssociationRoleIF)topicmap.getObjectById(mt.objectId); assertTrue("Role source locator is set", !r.getItemIdentifiers().contains(URILocator.create("x:source-locator"))); assertTrue("Role found by source locator", topicmap.getObjectByItemIdentifier(URILocator.create("x:source-locator")) == null); } });
public void testEmptyInsert6() throws InvalidQueryException { makeEmpty(); update("insert ^ http://example.com/test . "); LocatorIF iid = URILocator.create("http://example.com/test"); TopicIF topic = (TopicIF) topicmap.getObjectByItemIdentifier(iid); assertTrue("couldn't find inserted topic", topic != null); assertTrue("wrong size of topic map after insert", topicmap.getTopics().size() == 1); }