org.apache.geronimo.connector.outbound.transactionlog
Class JDBCLog

java.lang.Object
  extended byorg.apache.geronimo.connector.outbound.transactionlog.JDBCLog
All Implemented Interfaces:
org.apache.geronimo.gbean.GBeanLifecycle, org.apache.geronimo.transaction.manager.TransactionLog

public class JDBCLog
extends Object
implements org.apache.geronimo.transaction.manager.TransactionLog, org.apache.geronimo.gbean.GBeanLifecycle

"Last Resource optimization" for single servers wishing to have valid xa transactions with a single 1-pc datasource. The database is used for the log, and the database work is committed when the log writes its prepare record.

Version:
$Rev: 387983 $ $Date: 2006-03-23 01:44:59 +0100 (Thu, 23 Mar 2006) $

Constructor Summary
JDBCLog(String systemId, ConnectionFactorySource managedConnectionFactoryWrapper)
           
JDBCLog(String systemId, DataSource dataSource)
           
 
Method Summary
 void begin(Xid xid)
           
 void commit(Xid xid, Object logMark)
           
 void doFail()
           
 void doStart()
           
 void doStop()
           
 int getAverageBytesPerForce()
           
 int getAverageForceTime()
           
 String getXMLStats()
           
 Object prepare(Xid xid, List branches)
           
 Collection recover(org.apache.geronimo.transaction.manager.XidFactory xidFactory)
           
 void rollback(Xid xid, Object logMark)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JDBCLog

public JDBCLog(String systemId,
               ConnectionFactorySource managedConnectionFactoryWrapper)

JDBCLog

public JDBCLog(String systemId,
               DataSource dataSource)
Method Detail

doStart

public void doStart()
             throws Exception
Specified by:
doStart in interface org.apache.geronimo.gbean.GBeanLifecycle
Throws:
Exception

doStop

public void doStop()
            throws Exception
Specified by:
doStop in interface org.apache.geronimo.gbean.GBeanLifecycle
Throws:
Exception

doFail

public void doFail()
Specified by:
doFail in interface org.apache.geronimo.gbean.GBeanLifecycle

begin

public void begin(Xid xid)
           throws org.apache.geronimo.transaction.manager.LogException
Specified by:
begin in interface org.apache.geronimo.transaction.manager.TransactionLog
Throws:
org.apache.geronimo.transaction.manager.LogException

prepare

public Object prepare(Xid xid,
                      List branches)
               throws org.apache.geronimo.transaction.manager.LogException
Specified by:
prepare in interface org.apache.geronimo.transaction.manager.TransactionLog
Throws:
org.apache.geronimo.transaction.manager.LogException

commit

public void commit(Xid xid,
                   Object logMark)
            throws org.apache.geronimo.transaction.manager.LogException
Specified by:
commit in interface org.apache.geronimo.transaction.manager.TransactionLog
Throws:
org.apache.geronimo.transaction.manager.LogException

rollback

public void rollback(Xid xid,
                     Object logMark)
              throws org.apache.geronimo.transaction.manager.LogException
Specified by:
rollback in interface org.apache.geronimo.transaction.manager.TransactionLog
Throws:
org.apache.geronimo.transaction.manager.LogException

recover

public Collection recover(org.apache.geronimo.transaction.manager.XidFactory xidFactory)
                   throws org.apache.geronimo.transaction.manager.LogException
Specified by:
recover in interface org.apache.geronimo.transaction.manager.TransactionLog
Throws:
org.apache.geronimo.transaction.manager.LogException

getXMLStats

public String getXMLStats()
Specified by:
getXMLStats in interface org.apache.geronimo.transaction.manager.TransactionLog

getAverageForceTime

public int getAverageForceTime()
Specified by:
getAverageForceTime in interface org.apache.geronimo.transaction.manager.TransactionLog

getAverageBytesPerForce

public int getAverageBytesPerForce()
Specified by:
getAverageBytesPerForce in interface org.apache.geronimo.transaction.manager.TransactionLog


Copyright © 2003-2007 Apache Software Foundation. All Rights Reserved.