You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-dev@db.apache.org by ar...@apache.org on 2006/07/11 18:39:15 UTC
svn commit: r420918 -
/db/ojb/branches/OJB_1_0_RELEASE/src/java/org/apache/ojb/odmg/TransactionImpl.java
Author: arminw
Date: Tue Jul 11 09:39:15 2006
New Revision: 420918
URL: http://svn.apache.org/viewvc?rev=420918&view=rev
Log:
add toString method, override finalze() to check for unclosed tx, javadoc cleanup
Modified:
db/ojb/branches/OJB_1_0_RELEASE/src/java/org/apache/ojb/odmg/TransactionImpl.java
Modified: db/ojb/branches/OJB_1_0_RELEASE/src/java/org/apache/ojb/odmg/TransactionImpl.java
URL: http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/java/org/apache/ojb/odmg/TransactionImpl.java?rev=420918&r1=420917&r2=420918&view=diff
==============================================================================
--- db/ojb/branches/OJB_1_0_RELEASE/src/java/org/apache/ojb/odmg/TransactionImpl.java (original)
+++ db/ojb/branches/OJB_1_0_RELEASE/src/java/org/apache/ojb/odmg/TransactionImpl.java Tue Jul 11 09:39:15 2006
@@ -24,6 +24,8 @@
import java.util.List;
import org.apache.commons.lang.SystemUtils;
+import org.apache.commons.lang.builder.ToStringBuilder;
+import org.apache.commons.lang.builder.ToStringStyle;
import org.apache.ojb.broker.Identity;
import org.apache.ojb.broker.OJBRuntimeException;
import org.apache.ojb.broker.PBFactoryException;
@@ -60,12 +62,7 @@
/**
* Implementation of Transaction for {@link org.odmg.Transaction}.
*
- * @author Thomas Mahler & David Dixon-Peugh
- * @author <a href="mailto:mattbaird@yahoo.com">Matthew Baird</a>
- * @author <a href="mailto:armin@codeAuLait.de">Armin Waibel</a>
- * @author <a href="mailto:brianm@apache.org">Brian McCallister</a>
* @version $Id$
- *
*/
public class TransactionImpl
implements Transaction, MaterializationListener, Configurable, CollectionProxyListener, TransactionExt
@@ -1553,6 +1550,31 @@
this.ordering = ordering;
}
+ protected void finalize() throws Throwable
+ {
+ super.finalize();
+ if(isOpen())
+ {
+ log.error("Finalize object: This transaction is still marked as active, please check code" +
+ " for tx leaks: " + this.toString());
+ try
+ {
+ this.abort();
+ }
+ catch(Exception ignore)
+ {
+ // ignore
+ }
+ }
+ }
+
+ public String toString()
+ {
+ return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE)
+ .append("tx-status", TxUtil.getStatusString(getStatus()))
+ .append("unclosed_broker", this.broker != null && !broker.isClosed())
+ .toString();
+ }
//============================================================
// inner class
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org