public void putResource(final Object key, final Object value) throws IllegalStateException { final AbstractTransaction transaction = ContextTransactionManager.getInstance().getStateRef().get().transaction; if (transaction == null) { throw Log.log.noTransaction(); } transaction.putResource(key, value); } }
@Override public void registerInterposedSynchronization(Synchronization sync) throws IllegalStateException { try { AbstractTransaction tx = ContextTransactionManager.getInstance().getTransaction(); JCAOrderedLastSynchronizationList jcaOrderedLastSynchronization = (JCAOrderedLastSynchronizationList) tx.getResource(key); if (jcaOrderedLastSynchronization == null) { final ContextTransactionSynchronizationRegistry tsr = ContextTransactionSynchronizationRegistry.getInstance(); synchronized (key) { jcaOrderedLastSynchronization = (JCAOrderedLastSynchronizationList) tx.getResource(key); if (jcaOrderedLastSynchronization == null) { jcaOrderedLastSynchronization = new JCAOrderedLastSynchronizationList(); tx.putResource(key, jcaOrderedLastSynchronization); tsr.registerInterposedSynchronization(jcaOrderedLastSynchronization); } } } jcaOrderedLastSynchronization.registerInterposedSynchronization(sync); } catch (SystemException e) { throw new IllegalStateException(e); } }
public void putResource(final Object key, final Object value) throws IllegalStateException { final AbstractTransaction transaction = ContextTransactionManager.getInstance().getStateRef().get().transaction; if (transaction == null) { throw Log.log.noTransaction(); } transaction.putResource(key, value); } }
public void putResource(final Object key, final Object value) throws IllegalStateException { final AbstractTransaction transaction = ContextTransactionManager.getInstance().getStateRef().get().transaction; if (transaction == null) { throw Log.log.noTransaction(); } transaction.putResource(key, value); } }
@Override public void registerInterposedSynchronization(Synchronization sync) throws IllegalStateException { try { AbstractTransaction tx = ContextTransactionManager.getInstance().getTransaction(); JCAOrderedLastSynchronizationList jcaOrderedLastSynchronization = (JCAOrderedLastSynchronizationList) tx.getResource(key); if (jcaOrderedLastSynchronization == null) { final ContextTransactionSynchronizationRegistry tsr = ContextTransactionSynchronizationRegistry.getInstance(); synchronized (key) { jcaOrderedLastSynchronization = (JCAOrderedLastSynchronizationList) tx.getResource(key); if (jcaOrderedLastSynchronization == null) { jcaOrderedLastSynchronization = new JCAOrderedLastSynchronizationList(); tx.putResource(key, jcaOrderedLastSynchronization); tsr.registerInterposedSynchronization(jcaOrderedLastSynchronization); } } } jcaOrderedLastSynchronization.registerInterposedSynchronization(sync); } catch (SystemException e) { throw new IllegalStateException(e); } }
@Override public void registerInterposedSynchronization(Synchronization sync) throws IllegalStateException { try { AbstractTransaction tx = ContextTransactionManager.getInstance().getTransaction(); JCAOrderedLastSynchronizationList jcaOrderedLastSynchronization = (JCAOrderedLastSynchronizationList) tx.getResource(key); if (jcaOrderedLastSynchronization == null) { final ContextTransactionSynchronizationRegistry tsr = ContextTransactionSynchronizationRegistry.getInstance(); synchronized (key) { jcaOrderedLastSynchronization = (JCAOrderedLastSynchronizationList) tx.getResource(key); if (jcaOrderedLastSynchronization == null) { jcaOrderedLastSynchronization = new JCAOrderedLastSynchronizationList(); tx.putResource(key, jcaOrderedLastSynchronization); tsr.registerInterposedSynchronization(jcaOrderedLastSynchronization); } } } jcaOrderedLastSynchronization.registerInterposedSynchronization(sync); } catch (SystemException e) { throw new IllegalStateException(e); } }