if (transactionManager == null) { transactionManager = new TransactionManagerImpl(getDefaultTransactionTimeoutSeconds(), getTransactionLog(), getResourceManagers()); }
if (transactionManager == null) { Map map = applicationContext.getBeansOfType(ExtendedTransactionManager.class); if (map.size() > 1) { throw new IllegalStateException("only one ExtendedTransactionManager can be registered"); } else if (map.size() == 1) { transactionManager = (ExtendedTransactionManager) map.values().iterator().next(); } else { transactionManager = new TransactionManagerImpl(getDefaultTransactionTimeoutSeconds(), getTransactionLog(), getResourceManagers()); } }
    public ExtendedTransactionManager getTransactionManager() throws XAException {        if (transactionManager == null) {            transactionManager = new TransactionManagerImpl(getDefaultTransactionTimeoutSeconds(), getTransactionLog(), getResourceManagers());        }        return transactionManager;    }