|
|
|
|
@ -33,7 +33,6 @@ import org.springframework.transaction.TransactionDefinition;
@@ -33,7 +33,6 @@ import org.springframework.transaction.TransactionDefinition;
|
|
|
|
|
import org.springframework.transaction.TransactionStatus; |
|
|
|
|
import org.springframework.transaction.UnexpectedRollbackException; |
|
|
|
|
import org.springframework.transaction.support.DefaultTransactionDefinition; |
|
|
|
|
import org.springframework.transaction.support.TransactionCallbackWithoutResult; |
|
|
|
|
import org.springframework.transaction.support.TransactionSynchronizationManager; |
|
|
|
|
import org.springframework.transaction.support.TransactionTemplate; |
|
|
|
|
|
|
|
|
|
@ -120,15 +119,11 @@ class JmsTransactionManagerTests {
@@ -120,15 +119,11 @@ class JmsTransactionManagerTests {
|
|
|
|
|
return null; |
|
|
|
|
}); |
|
|
|
|
TransactionTemplate tt = new TransactionTemplate(tm); |
|
|
|
|
tt.execute(new TransactionCallbackWithoutResult() { |
|
|
|
|
@Override |
|
|
|
|
protected void doInTransactionWithoutResult(TransactionStatus status) { |
|
|
|
|
tt.execute(status -> |
|
|
|
|
jt.execute((SessionCallback<Void>) sess -> { |
|
|
|
|
assertThat(session).isSameAs(sess); |
|
|
|
|
return null; |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
})); |
|
|
|
|
tm.commit(ts); |
|
|
|
|
|
|
|
|
|
verify(session).commit(); |
|
|
|
|
@ -153,15 +148,12 @@ class JmsTransactionManagerTests {
@@ -153,15 +148,12 @@ class JmsTransactionManagerTests {
|
|
|
|
|
return null; |
|
|
|
|
}); |
|
|
|
|
TransactionTemplate tt = new TransactionTemplate(tm); |
|
|
|
|
tt.execute(new TransactionCallbackWithoutResult() { |
|
|
|
|
@Override |
|
|
|
|
protected void doInTransactionWithoutResult(TransactionStatus status) { |
|
|
|
|
tt.executeWithoutResult(status -> { |
|
|
|
|
jt.execute((SessionCallback<Void>) sess -> { |
|
|
|
|
assertThat(session).isSameAs(sess); |
|
|
|
|
return null; |
|
|
|
|
}); |
|
|
|
|
status.setRollbackOnly(); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
assertThatExceptionOfType(UnexpectedRollbackException.class).isThrownBy(() -> |
|
|
|
|
tm.commit(ts)); |
|
|
|
|
@ -191,15 +183,11 @@ class JmsTransactionManagerTests {
@@ -191,15 +183,11 @@ class JmsTransactionManagerTests {
|
|
|
|
|
}); |
|
|
|
|
TransactionTemplate tt = new TransactionTemplate(tm); |
|
|
|
|
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_NOT_SUPPORTED); |
|
|
|
|
tt.execute(new TransactionCallbackWithoutResult() { |
|
|
|
|
@Override |
|
|
|
|
protected void doInTransactionWithoutResult(TransactionStatus status) { |
|
|
|
|
tt.execute(status -> |
|
|
|
|
jt.execute((SessionCallback<Void>) sess -> { |
|
|
|
|
assertThat(session).isNotSameAs(sess); |
|
|
|
|
return null; |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
})); |
|
|
|
|
jt.execute((SessionCallback<Void>) sess -> { |
|
|
|
|
assertThat(session).isSameAs(sess); |
|
|
|
|
return null; |
|
|
|
|
@ -231,15 +219,11 @@ class JmsTransactionManagerTests {
@@ -231,15 +219,11 @@ class JmsTransactionManagerTests {
|
|
|
|
|
}); |
|
|
|
|
TransactionTemplate tt = new TransactionTemplate(tm); |
|
|
|
|
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); |
|
|
|
|
tt.execute(new TransactionCallbackWithoutResult() { |
|
|
|
|
@Override |
|
|
|
|
protected void doInTransactionWithoutResult(TransactionStatus status) { |
|
|
|
|
tt.execute(status -> |
|
|
|
|
jt.execute((SessionCallback<Void>) sess -> { |
|
|
|
|
assertThat(session).isNotSameAs(sess); |
|
|
|
|
return null; |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
})); |
|
|
|
|
jt.execute((SessionCallback<Void>) sess -> { |
|
|
|
|
assertThat(session).isSameAs(sess); |
|
|
|
|
return null; |
|
|
|
|
|