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

java.lang.Object
  extended by org.apache.geronimo.connector.outbound.transactionlog.JDBCLog
All Implemented Interfaces:
GBeanLifecycle, TransactionLog

public class JDBCLog
extends Object
implements TransactionLog, 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.


Constructor Summary
JDBCLog(String systemId, DataSource dataSource)
           
JDBCLog(String systemId, ResourceSource<ResourceException> managedConnectionFactoryWrapper)
           
 
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(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,
               ResourceSource<ResourceException> managedConnectionFactoryWrapper)

JDBCLog

public JDBCLog(String systemId,
               DataSource dataSource)
Method Detail

doStart

public void doStart()
             throws Exception
Specified by:
doStart in interface GBeanLifecycle
Throws:
Exception

doStop

public void doStop()
            throws Exception
Specified by:
doStop in interface GBeanLifecycle
Throws:
Exception

doFail

public void doFail()
Specified by:
doFail in interface GBeanLifecycle

begin

public void begin(Xid xid)
           throws LogException
Specified by:
begin in interface TransactionLog
Throws:
LogException

prepare

public Object prepare(Xid xid,
                      List branches)
               throws LogException
Specified by:
prepare in interface TransactionLog
Throws:
LogException

commit

public void commit(Xid xid,
                   Object logMark)
            throws LogException
Specified by:
commit in interface TransactionLog
Throws:
LogException

rollback

public void rollback(Xid xid,
                     Object logMark)
              throws LogException
Specified by:
rollback in interface TransactionLog
Throws:
LogException

recover

public Collection recover(XidFactory xidFactory)
                   throws LogException
Specified by:
recover in interface TransactionLog
Throws:
LogException

getXMLStats

public String getXMLStats()
Specified by:
getXMLStats in interface TransactionLog

getAverageForceTime

public int getAverageForceTime()
Specified by:
getAverageForceTime in interface TransactionLog

getAverageBytesPerForce

public int getAverageBytesPerForce()
Specified by:
getAverageBytesPerForce in interface TransactionLog


Copyright © 2003-2010 The Apache Geronimo development community. All Rights Reserved.