in tx-control-services/tx-control-service-common/src/main/java/org/apache/aries/tx/control/service/common/impl/AbstractTransactionControlImpl.java [131:154]
public <T> T notSupported(Callable<T> work)
throws TransactionException {
checkValid();
boolean endTransaction = false;
AbstractTransactionContextImpl existingTran = existingTx.get();
AbstractTransactionContextImpl currentTran;
try {
if (existingTran == null || existingTran.getTransactionStatus() != NO_TRANSACTION) {
// We must create a new coordination to scope our new
// transaction
currentTran = new NoTransactionContextImpl();
endTransaction = true;
existingTx.set(currentTran);
} else {
currentTran = existingTran;
}
return doWork(work, currentTran, endTransaction);
} finally {
existingTx.set(existingTran);
}
}