TopicMapPreferences extends AbstractPreferences { protected TopicMapStoreIF createStore(TopicMapReferenceIF topicMapReference, boolean readonly) throws BackingStoreException { try { return topicMapReference.createStore(readonly); } catch (IOException e) { throw new BackingStoreException(e); } } private  TopicMapPreferences(boolean isUserNode, TopicMapReferenceIF topicMapReference, TopicMapPreferencesFactory factory); private  TopicMapPreferences(TopicMapPreferences parent, String name); static TopicMapPreferences createSystemRoot(TopicMapReferenceIF topicMapReference, TopicMapPreferencesFactory factory); static TopicMapPreferences createUserRoot(TopicMapReferenceIF topicMapReference, TopicMapPreferencesFactory factory); @Override boolean isUserNode(); @Override String getSpi(String key); @Override void putSpi(String key, String value); @Override void removeSpi(String key); @Override TopicMapPreferences childSpi(String name); @Override void removeNodeSpi(); @Override String[] keysSpi(); @Override String[] childrenNamesSpi(); @Override synchronized void syncSpi(); @Override synchronized void flushSpi();  }
@Test public void testFile() throws IOException, BackingStoreException { TestFileUtils.verifyDirectory(base, "out"); TestFileUtils.verifyDirectory(base, "ltm"); String in = TestFileUtils.getTestInputFile(testdataDirectory, "in", filename); String baseline = TestFileUtils.getTestInputFile(testdataDirectory, "baseline", filename + ".cxtm"); File out = new File(base + File.separator + "out" + File.separator + filename + ".cxtm"); File ltm = new File(base + File.separator + "ltm" + File.separator + filename + ".ltm"); TestTMPrefsFactory.setFixedReference(in); runPreferencesMethods(); TopicMapReferenceIF reference = TestTMPrefsFactory.getSystemTopicMapReference(); TopicMapStoreIF store = reference.createStore(true); TopicMapIF topicmap = store.getTopicMap(); new LTMTopicMapWriter(ltm).write(topicmap); new CanonicalXTMWriter(out).write(topicmap); TestTMPrefsFactory.setFixedReference(null); store.close(); }