Java 类org.springframework.transaction.jta.UserTransactionAdapter 实例源码

项目:spring4-understanding    文件:JndiJtaTransactionManagerTests.java   
private void doTestJtaTransactionManagerWithDefaultJndiLookups(String tmName, boolean tmFound, boolean defaultUt)
        throws Exception {

    UserTransaction ut = mock(UserTransaction.class);
    TransactionManager tm = mock(TransactionManager.class);
    if (defaultUt) {
        given(ut.getStatus()).willReturn(Status.STATUS_NO_TRANSACTION, Status.STATUS_ACTIVE, Status.STATUS_ACTIVE);
    }
    else {
        given(tm.getStatus()).willReturn(Status.STATUS_NO_TRANSACTION, Status.STATUS_ACTIVE, Status.STATUS_ACTIVE);
    }

    JtaTransactionManager ptm = new JtaTransactionManager();
    ExpectedLookupTemplate jndiTemplate = new ExpectedLookupTemplate();
    if (defaultUt) {
        jndiTemplate.addObject("java:comp/UserTransaction", ut);
    }
    jndiTemplate.addObject(tmName, tm);
    ptm.setJndiTemplate(jndiTemplate);
    ptm.afterPropertiesSet();

    if (tmFound) {
        assertEquals(tm, ptm.getTransactionManager());
    }
    else {
        assertNull(ptm.getTransactionManager());
    }

    if (defaultUt) {
        assertEquals(ut, ptm.getUserTransaction());
    }
    else {
        assertTrue(ptm.getUserTransaction() instanceof UserTransactionAdapter);
        UserTransactionAdapter uta = (UserTransactionAdapter) ptm.getUserTransaction();
        assertEquals(tm, uta.getTransactionManager());
    }

    TransactionTemplate tt = new TransactionTemplate(ptm);
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());
    assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
    tt.execute(new TransactionCallbackWithoutResult() {
        @Override
        protected void doInTransactionWithoutResult(TransactionStatus status) {
            // something transactional
            assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
            assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
        }
    });
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());
    assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());


    if (defaultUt) {
        verify(ut).begin();
        verify(ut).commit();
    }
    else {
        verify(tm).begin();
        verify(tm).commit();
    }

}
项目:class-guard    文件:JndiJtaTransactionManagerTests.java   
private void doTestJtaTransactionManagerWithDefaultJndiLookups(String tmName, boolean tmFound, boolean defaultUt)
        throws Exception {

    UserTransaction ut = mock(UserTransaction.class);
    TransactionManager tm = mock(TransactionManager.class);
    if (defaultUt) {
        given(ut.getStatus()).willReturn(Status.STATUS_NO_TRANSACTION, Status.STATUS_ACTIVE, Status.STATUS_ACTIVE);
    }
    else {
        given(tm.getStatus()).willReturn(Status.STATUS_NO_TRANSACTION, Status.STATUS_ACTIVE, Status.STATUS_ACTIVE);
    }

    JtaTransactionManager ptm = new JtaTransactionManager();
    ExpectedLookupTemplate jndiTemplate = new ExpectedLookupTemplate();
    if (defaultUt) {
        jndiTemplate.addObject("java:comp/UserTransaction", ut);
    }
    jndiTemplate.addObject(tmName, tm);
    ptm.setJndiTemplate(jndiTemplate);
    ptm.afterPropertiesSet();

    if (tmFound) {
        assertEquals(tm, ptm.getTransactionManager());
    }
    else {
        assertNull(ptm.getTransactionManager());
    }

    if (defaultUt) {
        assertEquals(ut, ptm.getUserTransaction());
    }
    else {
        assertTrue(ptm.getUserTransaction() instanceof UserTransactionAdapter);
        UserTransactionAdapter uta = (UserTransactionAdapter) ptm.getUserTransaction();
        assertEquals(tm, uta.getTransactionManager());
    }

    TransactionTemplate tt = new TransactionTemplate(ptm);
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());
    assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
    tt.execute(new TransactionCallbackWithoutResult() {
        @Override
        protected void doInTransactionWithoutResult(TransactionStatus status) {
            // something transactional
            assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
            assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
        }
    });
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());
    assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());


    if (defaultUt) {
        verify(ut).begin();
        verify(ut).commit();
    }
    else {
        verify(tm).begin();
        verify(tm).commit();
    }

}
项目:lams    文件:ConfigurableJtaPlatform.java   
/**
 * Create a new ConfigurableJtaPlatform instance with the given
 * JTA TransactionManager and optionally a given UserTransaction.
 * @param tm the JTA TransactionManager reference (required)
 * @param ut the JTA UserTransaction reference (optional)
 * @param tsr the JTA 1.1 TransactionSynchronizationRegistry (optional)
 */
public ConfigurableJtaPlatform(TransactionManager tm, UserTransaction ut, TransactionSynchronizationRegistry tsr) {
    Assert.notNull(tm, "TransactionManager reference must not be null");
    this.transactionManager = tm;
    this.userTransaction = (ut != null ? ut : new UserTransactionAdapter(tm));
    this.transactionSynchronizationRegistry = tsr;
}
项目:spring4-understanding    文件:ConfigurableJtaPlatform.java   
/**
 * Create a new ConfigurableJtaPlatform instance with the given
 * JTA TransactionManager and optionally a given UserTransaction.
 * @param tm the JTA TransactionManager reference (required)
 * @param ut the JTA UserTransaction reference (optional)
 * @param tsr the JTA 1.1 TransactionSynchronizationRegistry (optional)
 */
public ConfigurableJtaPlatform(TransactionManager tm, UserTransaction ut, TransactionSynchronizationRegistry tsr) {
    Assert.notNull(tm, "TransactionManager reference must not be null");
    this.transactionManager = tm;
    this.userTransaction = (ut != null ? ut : new UserTransactionAdapter(tm));
    this.transactionSynchronizationRegistry = tsr;
}
项目:spring4-understanding    文件:ConfigurableJtaPlatform.java   
/**
 * Create a new ConfigurableJtaPlatform instance with the given
 * JTA TransactionManager and optionally a given UserTransaction.
 * @param tm the JTA TransactionManager reference (required)
 * @param ut the JTA UserTransaction reference (optional)
 * @param tsr the JTA 1.1 TransactionSynchronizationRegistry (optional)
 */
public ConfigurableJtaPlatform(TransactionManager tm, UserTransaction ut, TransactionSynchronizationRegistry tsr) {
    Assert.notNull(tm, "TransactionManager reference must not be null");
    this.transactionManager = tm;
    this.userTransaction = (ut != null ? ut : new UserTransactionAdapter(tm));
    this.transactionSynchronizationRegistry = tsr;
}
项目:hibernate-plus    文件:HibernateConfigurableJtaPlatform.java   
/**
 * Create a new ConfigurableJtaPlatform instance with the given
 * JTA TransactionManager and optionally a given UserTransaction.
 *
 * @param tm  the JTA TransactionManager reference (required)
 * @param ut  the JTA UserTransaction reference (optional)
 * @param tsr the JTA 1.1 TransactionSynchronizationRegistry (optional)
 */
public HibernateConfigurableJtaPlatform(TransactionManager tm, UserTransaction ut, TransactionSynchronizationRegistry tsr) {
    Assert.notNull(tm, "TransactionManager reference must not be null");
    this.transactionManager = tm;
    this.userTransaction = (ut != null ? ut : new UserTransactionAdapter(tm));
    this.transactionSynchronizationRegistry = tsr;
}
项目:class-guard    文件:ConfigurableJtaPlatform.java   
/**
 * Create a new ConfigurableJtaPlatform instance with the given
 * JTA TransactionManager and optionally a given UserTransaction.
 * @param tm the JTA TransactionManager reference (required)
 * @param ut the JTA UserTransaction reference (optional)
 */
public ConfigurableJtaPlatform(TransactionManager tm, UserTransaction ut) {
    Assert.notNull(tm, "TransactionManager reference must not be null");
    this.transactionManager = tm;
    this.userTransaction = (ut != null ? ut : new UserTransactionAdapter(tm));
}