12 Replies Latest reply on Sep 2, 2014 10:44 AM by jesper.pedersen

    Improvements to the transaction SPI

    mmusgrov

      In an effort to clean up the transactions spi we have noticed two issues:

       

      1) There are a number of classes which are not used by wildfly or ironjacamar trunk which I would like to remove:

       

      org.jboss.tm.TransactionDemarcationSupport.java

      org.jboss.tm.TransactionLocalDelegateImpl.java

      org.jboss.tm.TransactionLocalDelegate.java

      org.jboss.tm.TransactionManagerFactory.java

      org.jboss.tm.TransactionManagerLocator.java

      org.jboss.tm.TransactionPropagationContextFactory.java

      org.jboss.tm.TransactionPropagationContextImporter.java

      org.jboss.tm.TransactionPropagationContextUtil.java

      org.jboss.tm.XAExceptionFormatter.java

       

      If this will cause any other projects problems please let us know.

       

      2) A number of projects are using internal arjuna APIs. I would like to provide the same functionality provided by those internal APIs in the transactions spi in order to avoid the need to depend on our private stuff. The relevant classes are:

       

      com.arjuna.ats.arjuna.common.Uid

      com.arjuna.ats.internal.jta.transaction.arjunacore.jca.SubordinateTransaction

      com.arjuna.ats.internal.jta.transaction.arjunacore.jca.SubordinationManager

      com.arjuna.ats.internal.jta.transaction.arjunacore.jca.TransactionImporter

      com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple

      com.arjuna.ats.jbossatx.jta.TransactionManagerService

      com.arjuna.ats.jta.recovery.XAResourceRecovery 

       

      The new SPI will be made available under a new package name and we will be targeting the first Beta release of wildfly. If you need to know which projects are depending on which APIs then the attached tattletale report Jesper gave me will be useful.