@Override public void returnTopicMap(TopicMapIF topicmap) { TopicMapStoreIF store = topicmap.getStore(); log.debug("Returning store: " + store); store.close(); }
public static boolean prefetch(TopicMapIF tm, Object[] objects, int type, int[] fields, boolean[] traverse) { if (!doPrefetch(tm)) return false; // no prefetching if no hits if (objects == null || objects.length == 0) return false; // prefetch fields in rdbms implementation return ((net.ontopia.topicmaps.impl.rdbms.RDBMSTopicMapStore)tm.getStore()) .prefetch(type, fields, traverse, Arrays.asList(objects)); }
public static boolean prefetch(TopicMapIF tm, Collection objects, int type, int field, boolean traverse) { if (!doPrefetch(tm)) return false; // no prefetching if no hits if (objects.isEmpty()) return false; // prefetch fields in rdbms implementation return ((net.ontopia.topicmaps.impl.rdbms.RDBMSTopicMapStore)tm.getStore()) .prefetch(type, field, traverse, objects); }
public static boolean prefetch(TopicMapIF tm, Collection objects, int type, int[] fields, boolean[] traverse) { if (!doPrefetch(tm)) return false; // no prefetching if no hits if (objects.isEmpty()) return false; // prefetch fields in rdbms implementation return ((net.ontopia.topicmaps.impl.rdbms.RDBMSTopicMapStore)tm.getStore()) .prefetch(type, fields, traverse, objects); }
private void importFragment(String fragment, TopicMapIF topicmap) { log.debug("Importing fragment " + fragment); LocatorIF base = topicmap.getStore().getBaseAddress(); LTMTopicMapReader reader = new LTMTopicMapReader(new StringReader(fragment), base); try { reader.importInto(topicmap); } catch (java.io.IOException e) { log.error("Syntax error in LTM fragment", e); throw new ActionRuntimeException(e); } }
/** * INTERNAL: Expands a symbolic id into a LocatorIF based on the * base locator of the given topic map.. */ public static LocatorIF getSymbolicIdLocator(TopicMapIF topicmap, String symbolicId) { LocatorIF base = topicmap.getStore().getBaseAddress(); if (base != null) return base.resolveAbsolute('#' + symbolicId); else return null; }
public static ContentStoreIF getInstance(TopicMapIF topicmap) { net.ontopia.topicmaps.impl.rdbms.RDBMSTopicMapStore store = (net.ontopia.topicmaps.impl.rdbms.RDBMSTopicMapStore)topicmap.getStore(); return new JDBCContentStore(store.getConnection(), store.getConnectionFactory(false)); }
@Override public boolean isVisible() { return (topicMapModel.getTopicMap().getTopicMapIF().getStore().getImplementation() == TopicMapStoreIF.IN_MEMORY_IMPLEMENTATION); } };
@Override public boolean matches(TMObjectIF object) { if (object == null) return false; if (!(object instanceof TopicIF)) return false; TopicIF topic = (TopicIF) object; LocatorIF resolved = topic.getTopicMap().getStore().getBaseAddress().resolveAbsolute(relativeUri); return topic.getItemIdentifiers().contains(resolved); }
public static boolean prefetchRolesByType(TopicMapIF tm, QueryMatches matches, int qmidx, TopicIF rtype, TopicIF atype, int[] fields, boolean[] traverse) { if (!doPrefetch(tm)) return false; // no prefetching if no hits if (matches.last < 0) return false; Collection players = new QueryMatchesCollection(matches, qmidx); ((net.ontopia.topicmaps.impl.rdbms.RDBMSTopicMapStore)tm.getStore()) .prefetchRolesByType(players, rtype, atype); return true; }
@Override public String getTopicMapRefId(TopicMapIF topicmap) { TopicMapStoreIF store = topicmap.getStore(); TopicMapReferenceIF ref = store.getReference(); return (ref == null ? null : getTopicMapRepository().getReferenceKey(ref)); }
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; }
public void save() { TopicMapReferenceIF ref = getTopicMapIF().getStore().getReference(); if (ref instanceof XTMTopicMapReference) { try { ((XTMTopicMapReference) ref).save(); } catch (IOException e) { throw new OntopiaRuntimeException(e); } } }
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; } }
/** Attempts to load topic from remote topic map.*/ private synchronized void load() { RemoteTopicMapStore store = (RemoteTopicMapStore) getTopicMap().getStore(); RemoteTopicIndex tindex = store.getTopicIndex(); if (getSubjectIdentifiers().isEmpty() && getItemIdentifiers().isEmpty() && getSubjectLocators().isEmpty()) throw new OntopiaRuntimeException("Can't load topic without identity"); // isLoaded gets set from elsewhere, strangely tindex.getTopics(getSubjectIdentifiers(), getItemIdentifiers(), getSubjectLocators()); }
public TMObjectIFHandle(TMObjectIF o) { this.objectId = o.getObjectId(); TopicMapIF tm = o.getTopicMap(); this.topicmapId = tm.getObjectId(); TopicMapReferenceIF ref = tm.getStore().getReference(); if (ref != null) this.referenceId = ref.getId(); }
public void setScopingTopic(TopicIF scope) { if (scope == null) clearTopic(scopingTopic); else { setTopicReference(scopingTopic, scope, scope.getTopicMap().getStore() .getBaseAddress().getAddress()); } }
public TopicIF getTopicById(TopicMapIF topicmap, String id) { LocatorIF base = topicmap.getStore().getBaseAddress(); return (TopicIF) topicmap.getObjectByItemIdentifier(base.resolveAbsolute("#"+id)); }
public void testTopicToLocator() throws InvalidQueryException, IOException { load("jill.xtm"); LocatorIF base = topicmap.getStore().getBaseAddress(); List matches = new ArrayList(); addMatch(matches, "LOCATOR", base.resolveAbsolute("#ontopia").getAddress()); verifyQuery(matches, "source-locator(ontopia, $LOCATOR)?"); }