private LocalReadLock getLocalLockByName(String name) { LocalReadLock localReadLock = localLocks.get(name); if (localReadLock == null) { LocalReadLock newReadLock = new LocalReadLock(name); localLocks.put(name, newReadLock); return newReadLock; } return localReadLock; }
/** * {@inheritDoc} */ @Override public boolean acquireReadLock(String name) { LocalReadLock localReadLock = getLocalLockByName(name); boolean acquired = localReadLock.acquire(); if (acquired) { return true; } else { // cleanup localLocks.remove(name); return false; } }
/** * {@inheritDoc} */ @Override public synchronized boolean acquireReadLock(String name) { LocalReadLock localReadLock = getLocalLockByName(name); boolean acquired = localReadLock.acquire(); if (acquired) { return true; } else { // cleanup localLocks.remove(name); return false; } }
/** * {@inheritDoc} */ @Override public synchronized boolean acquireReadLock(String name) { LocalReadLock localReadLock = getLocalLockByName(name); boolean acquired = localReadLock.acquire(); if (acquired) { return true; } else { // cleanup localLocks.remove(name); return false; } }
/** * {@inheritDoc} */ @Override public synchronized void deleteOrReleaseReadLock(String name) { getLocalLockByName(name).release(); }
private LocalReadLock getLocalLockByName(String name) { LocalReadLock localReadLock = localLocks.get(name); if (localReadLock == null) { LocalReadLock newReadLock = new LocalReadLock(name); LocalReadLock prevReadLock = localLocks.putIfAbsent(name, newReadLock); localReadLock = prevReadLock == null ? newReadLock : prevReadLock; } return localReadLock; }
private LocalReadLock getLocalLockByName(String name) { LocalReadLock localReadLock = localLocks.get(name); if (localReadLock == null) { LocalReadLock newReadLock = new LocalReadLock(name); localLocks.put(name, newReadLock); return newReadLock; } return localReadLock; }
/** * {@inheritDoc} */ @Override public synchronized void deleteOrReleaseReadLock(String name) { getLocalLockByName(name).release(); }
/** * {@inheritDoc} */ @Override public void deleteOrReleaseReadLock(String name) { getLocalLockByName(name).release(); }