AbstractClientHandle extends LocalAbortable implements Identifiable<TransactionIdentifier> { @Override final void localAbort(final Throwable cause) { LOG.debug("Local abort of transaction {}", getIdentifier(), cause); commonAbort(); } AbstractClientHandle(final AbstractClientHistory parent, final TransactionIdentifier transactionId); @Override TransactionIdentifier getIdentifier(); boolean abort(); @Override final String toString();  }
@Test public void testLocalAbort() throws Exception { doHandleOperation(handle); handle.localAbort(new RuntimeException("fail")); final Envelope<?> envelope = backendProbe.expectMsgClass(Envelope.class); final AbortLocalTransactionRequest request = (AbortLocalTransactionRequest) envelope.getMessage(); Assert.assertEquals(TRANSACTION_ID, request.getTarget()); checkClosed(); }