Class GenericXADataSourceWrapper

java.lang.Object
dev.snowdrop.boot.narayana.core.jdbc.GenericXADataSourceWrapper
All Implemented Interfaces:
org.springframework.boot.jdbc.XADataSourceWrapper

public class GenericXADataSourceWrapper extends Object implements org.springframework.boot.jdbc.XADataSourceWrapper
An XADataSourceWrapper implementation which handles XAResourceRecoveryHelper creation and registration. It delegates the actual XADataSource wrapping to its subclass NarayanaDataSource.
Author:
Gytis Trikleris
  • Constructor Details

    • GenericXADataSourceWrapper

      public GenericXADataSourceWrapper(com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule xaRecoveryModule)
      Create a new GenericXADataSourceWrapper instance.
      Parameters:
      xaRecoveryModule - recovery module to register data source with.
    • GenericXADataSourceWrapper

      public GenericXADataSourceWrapper(com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule xaRecoveryModule, RecoveryCredentialsProperties recoveryCredentials)
      Create a new GenericXADataSourceWrapper instance.
      Parameters:
      xaRecoveryModule - recovery module to register data source with.
      recoveryCredentials - credentials for recovery helper
    • GenericXADataSourceWrapper

      public GenericXADataSourceWrapper(com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule xaRecoveryModule, TransactionalDriverProperties transactionalDriverProperties)
      Create a new GenericXADataSourceWrapper instance.
      Parameters:
      xaRecoveryModule - recovery module to register data source with.
      transactionalDriverProperties - Transactional driver properties
    • GenericXADataSourceWrapper

      public GenericXADataSourceWrapper(com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule xaRecoveryModule, TransactionalDriverProperties transactionalDriverProperties, RecoveryCredentialsProperties recoveryCredentials)
      Create a new GenericXADataSourceWrapper instance.
      Parameters:
      xaRecoveryModule - recovery module to register data source with.
      transactionalDriverProperties - Transactional driver properties
      recoveryCredentials - credentials for recovery helper
  • Method Details

    • wrapDataSource

      public DataSource wrapDataSource(XADataSource dataSource) throws Exception
      Register newly created recovery helper with the XARecoveryModule and delegate data source wrapping.
      Specified by:
      wrapDataSource in interface org.springframework.boot.jdbc.XADataSourceWrapper
      Parameters:
      dataSource - XADataSource that needs to be wrapped.
      Returns:
      wrapped data source
      Throws:
      Exception - in case data source wrapping has failed