public TopLevelTransaction getTopLevelTransactionBoundToThisThread(boolean strict) {
   TopLevelTransaction transaction = threadToTransactionMap.get();
   if (strict) {
     assertInUnterminatedTransaction(transaction);
   }
   return transaction;
 }
 public void assertInUnterminatedTransaction() {
   checkIfShutdown();
   assertInUnterminatedTransaction(threadToTransactionMap.get());
 }