boolean wasActive = TransactionSynchronizationManager.isActualTransactionActive(); TransactionSynchronizationManager.setActualTransactionActive(false); return new SuspendedResourcesHolder( suspendedResources, suspendedSynchronizations, name, readOnly, isolationLevel, wasActive); return new SuspendedResourcesHolder(suspendedResources);
boolean wasActive = TransactionSynchronizationManager.isActualTransactionActive(); TransactionSynchronizationManager.setActualTransactionActive(false); return new SuspendedResourcesHolder( suspendedResources, suspendedSynchronizations, name, readOnly, isolationLevel, wasActive); return new SuspendedResourcesHolder(suspendedResources);
/** * Suspend the given transaction. Suspends transaction synchronization first, * then delegates to the <code>doSuspend</code> template method. * @param transaction the current transaction object * @return an object that holds suspended resources * @see #doSuspend * @see #resume */ private SuspendedResourcesHolder suspend(Object transaction) throws TransactionException { Object holder = doSuspend(transaction); if (TransactionSynchronizationManager.isSynchronizationActive()) { List suspendedSynchronizations = TransactionSynchronizationManager.getSynchronizations(); for (Iterator it = suspendedSynchronizations.iterator(); it.hasNext();) { ((TransactionSynchronization) it.next()).suspend(); } TransactionSynchronizationManager.clearSynchronization(); String name = TransactionSynchronizationManager.getCurrentTransactionName(); TransactionSynchronizationManager.setCurrentTransactionName(null); boolean readOnly = TransactionSynchronizationManager.isCurrentTransactionReadOnly(); TransactionSynchronizationManager.setCurrentTransactionReadOnly(false); TransactionSynchronizationManager.setActualTransactionActive(false); return new SuspendedResourcesHolder(holder, suspendedSynchronizations, name, readOnly); } return new SuspendedResourcesHolder(holder, null, null, false); }
boolean wasActive = TransactionSynchronizationManager.isActualTransactionActive(); TransactionSynchronizationManager.setActualTransactionActive(false); return new SuspendedResourcesHolder( suspendedResources, suspendedSynchronizations, name, readOnly, isolationLevel, wasActive); return new SuspendedResourcesHolder(suspendedResources);
boolean wasActive = TransactionSynchronizationManager.isActualTransactionActive(); TransactionSynchronizationManager.setActualTransactionActive(false); return new SuspendedResourcesHolder( suspendedResources, suspendedSynchronizations, name, readOnly, isolationLevel, wasActive); return new SuspendedResourcesHolder(suspendedResources);