From: Xuan B. <med...@us...> - 2008-01-21 08:42:31
|
Update of /cvsroot/tm4j/tm4j/src/org/tm4j/topicmap/utils In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv23906/src/org/tm4j/topicmap/utils Modified Files: XTMWriter.java Log Message: Transactions support for XTMWriter. Index: XTMWriter.java =================================================================== RCS file: /cvsroot/tm4j/tm4j/src/org/tm4j/topicmap/utils/XTMWriter.java,v retrieving revision 1.48 retrieving revision 1.49 diff -C2 -d -r1.48 -r1.49 *** XTMWriter.java 21 May 2007 17:59:01 -0000 1.48 --- XTMWriter.java 21 Jan 2008 08:42:34 -0000 1.49 *************** *** 29,32 **** --- 29,33 ---- import org.tm4j.topicmap.TopicMapObject; import org.tm4j.topicmap.TopicMapProcessingException; + import org.tm4j.topicmap.TopicMapProvider; import org.tm4j.topicmap.Variant; import org.tm4j.topicmap.VariantName; *************** *** 570,575 **** --- 571,593 ---- } + protected void openTransaction(TopicMapProvider m_provider) { + if ((m_provider != null) && m_provider.isTransactional()) { + if (!m_provider.isTransactionOpen()) { + m_provider.openTransaction(); + } + } + } + + protected void closeTransaction(TopicMapProvider m_provider) { + if ((m_provider != null) && m_provider.isTransactional()) { + if (m_provider.isTransactionOpen()) { + m_provider.getOpenTransaction().commit(); + } + } + } + public boolean startTopicMap(TopicMap tm) throws TopicMapProcessingException { + openTransaction(tm.getProvider()); org.tm4j.net.Locator base = tm.getBaseLocator(); startTopicMap(getID(tm), (base != null) ? base.getAddress() : null); *************** *** 580,583 **** --- 598,602 ---- public void endTopicMap(TopicMap tm) throws TopicMapProcessingException { endTopicMap(); + closeTransaction(tm.getProvider()); } *************** *** 970,973 **** --- 989,995 ---- /* * $Log$ + * Revision 1.49 2008/01/21 08:42:34 mediumnet + * Transactions support for XTMWriter. + * * Revision 1.48 2007/05/21 17:59:01 mediumnet * Little comment. |