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

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


  public void rollback (Xid xid) throws XAException
  {
    try
    {
      SubordinateTransaction tx = SubordinationManager.getTransactionImporter().getImportedTransaction(xid);

      if (tx == null)
        throw new XAException(XAException.XAER_INVAL);

      if (tx.baseXid() != null)
      {
        tx.doRollback();

        SubordinationManager.getTransactionImporter().removeImportedTransaction(xid);
      }
      else
        throw new XAException(XAException.XA_RETRY);
View Full Code Here


   
  public void testCleanupCommit () throws Exception
  {
    for (int i = 0; i < 1000; i++)
    {
      final SubordinateTransaction tm = createTransaction();

      tm.doPrepare();
      tm.doCommit();
    }

    assertEquals(ActionManager.manager().getNumberOfInflightTransactions(), 0);
  }
View Full Code Here

  public void testCleanupRollback () throws Exception
  {
    for (int i = 0; i < 1000; i++)
    {
      final SubordinateTransaction tm = createTransaction();

      tm.doRollback();
    }

    assertEquals(ActionManager.manager().getNumberOfInflightTransactions(), 0);
  }
View Full Code Here

  public void testCleanupSecondPhaseRollback () throws Exception
  {
    for (int i = 0; i < 1000; i++)
    {
      final SubordinateTransaction tm = createTransaction();

      tm.doPrepare();
      tm.doRollback();
    }

    assertEquals(ActionManager.manager().getNumberOfInflightTransactions(), 0);
  }
View Full Code Here

  public void testCleanupOnePhaseCommit () throws Exception
  {
    for (int i = 0; i < 1000; i++)
    {
      final SubordinateTransaction tm = createTransaction();

      tm.doOnePhaseCommit();
    }

    assertEquals(ActionManager.manager().getNumberOfInflightTransactions(), 0);
  }
View Full Code Here

    /////////////

    public void testOnePhaseCommitSync() throws Exception
    {
        final SubordinateTransaction tm = createTransaction();
        final TestSynchronization sync = new TestSynchronization();
        tm.registerSynchronization(sync);
        tm.doOnePhaseCommit();
        assertTrue(sync.isBeforeCompletionDone());
        assertTrue(sync.isAfterCompletionDone());
        assertEquals(javax.transaction.Status.STATUS_COMMITTED, tm.getStatus());
    }
View Full Code Here

        assertEquals(javax.transaction.Status.STATUS_COMMITTED, t.getStatus());
    }

    public void testOnePhaseCommitSyncWithRollbackOnly() throws Exception
    {
        final SubordinateTransaction tm = createTransaction();
        final TestSynchronization sync = new TestSynchronization();
        tm.registerSynchronization(sync);
        tm.setRollbackOnly();
        try {
            tm.doOnePhaseCommit();
            fail("did not get expected rollback exception");
        } catch(RollbackException e) {
            // expected - we tried to commit a rollbackonly tx.
        }
        assertFalse(sync.isBeforeCompletionDone());
        assertTrue(sync.isAfterCompletionDone());
        assertEquals(javax.transaction.Status.STATUS_ROLLEDBACK, tm.getStatus());
    }
View Full Code Here

        assertEquals(javax.transaction.Status.STATUS_ROLLEDBACK, t.getStatus());
    }

    public void testRollbackSync() throws Exception
    {
        final SubordinateTransaction tm = createTransaction();
        final TestSynchronization sync = new TestSynchronization();
        tm.registerSynchronization(sync);
        tm.doRollback();
        assertFalse(sync.isBeforeCompletionDone());
        assertTrue(sync.isAfterCompletionDone());
        assertEquals(javax.transaction.Status.STATUS_ROLLEDBACK, tm.getStatus());
    }
View Full Code Here

        assertEquals(javax.transaction.Status.STATUS_ROLLEDBACK, t.getStatus());
    }

    public void testTwoPhaseCommitSync() throws Exception
    {
        final SubordinateTransaction tm = createTransaction();
        final TestSynchronization sync = new TestSynchronization();
        tm.registerSynchronization(sync);
        assertEquals(TwoPhaseOutcome.PREPARE_READONLY, tm.doPrepare());
        tm.doCommit();
        assertTrue(sync.isBeforeCompletionDone());
        assertTrue(sync.isAfterCompletionDone());
        assertEquals(javax.transaction.Status.STATUS_COMMITTED, tm.getStatus());
    }
View Full Code Here

        assertEquals(javax.transaction.Status.STATUS_COMMITTED, t.getStatus());
    }

    public void testTwoPhaseCommitSyncWithXAOK() throws Exception
    {
        final SubordinateTransaction tm = createTransaction();
        final TestSynchronization sync = new TestSynchronization();
        tm.registerSynchronization(sync);
        final TestXAResource xaResource = new TestXAResource();
        xaResource.setPrepareReturnValue(XAResource.XA_OK);
        tm.enlistResource(xaResource);
        assertEquals(TwoPhaseOutcome.PREPARE_OK, tm.doPrepare());
        tm.doCommit();
        assertTrue(sync.isBeforeCompletionDone());
        assertTrue(sync.isAfterCompletionDone());
        assertEquals(javax.transaction.Status.STATUS_COMMITTED, tm.getStatus());
    }
View Full Code Here

TOP

Related Classes of com.arjuna.ats.internal.jta.transaction.arjunacore.jca.SubordinateTransaction

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.