@SuppressWarnings("unchecked") private static ConcurrentMap<Application, URI> getOrCreateApplicationMap(AbstractTransaction transaction) { Object resource = transaction.getResource(RESOURCE_KEY); ConcurrentMap<Application, URI> map = null; if (resource == null) { map = new ConcurrentHashMap<>(); resource = transaction.putResourceIfAbsent(RESOURCE_KEY, map); } return resource == null ? map : ConcurrentMap.class.cast(resource); }
@SuppressWarnings("unchecked") public void setRollbackOnly() throws IllegalStateException, SystemException { List<Throwable> list = (List<Throwable>) getResource(RB_EX_KEY); if (list == null) { List<Throwable> appearing = (List<Throwable>) putResourceIfAbsent(RB_EX_KEY, list = new ArrayList<>()); if (appearing != null) { list = appearing; } } synchronized (list) { list.add(Log.log.markedRollbackOnly()); } }
@SuppressWarnings("unchecked") private static ConcurrentMap<Application, URI> getOrCreateApplicationMap(AbstractTransaction transaction) { Object resource = transaction.getResource(RESOURCE_KEY); ConcurrentMap<Application, URI> map = null; if (resource == null) { map = new ConcurrentHashMap<>(); resource = transaction.putResourceIfAbsent(RESOURCE_KEY, map); } return resource == null ? map : ConcurrentMap.class.cast(resource); }
@SuppressWarnings("unchecked") private static ConcurrentMap<Application, URI> getOrCreateApplicationMap(AbstractTransaction transaction) { Object resource = transaction.getResource(RESOURCE_KEY); ConcurrentMap<Application, URI> map = null; if (resource == null) { map = new ConcurrentHashMap<>(); resource = transaction.putResourceIfAbsent(RESOURCE_KEY, map); } return resource == null ? map : ConcurrentMap.class.cast(resource); }
@SuppressWarnings("unchecked") public void setRollbackOnly() throws IllegalStateException, SystemException { List<Throwable> list = (List<Throwable>) getResource(RB_EX_KEY); if (list == null) { List<Throwable> appearing = (List<Throwable>) putResourceIfAbsent(RB_EX_KEY, list = new ArrayList<>()); if (appearing != null) { list = appearing; } } synchronized (list) { list.add(Log.log.markedRollbackOnly()); } }
@SuppressWarnings("unchecked") public void setRollbackOnly() throws IllegalStateException, SystemException { List<Throwable> list = (List<Throwable>) getResource(RB_EX_KEY); if (list == null) { List<Throwable> appearing = (List<Throwable>) putResourceIfAbsent(RB_EX_KEY, list = new ArrayList<>()); if (appearing != null) { list = appearing; } } synchronized (list) { list.add(Log.log.markedRollbackOnly()); } }