@Nullable private HeldLocksToken refreshToken(HeldLocksToken token) { Preconditions.checkNotNull(token); @Nullable HeldLocks<HeldLocksToken> heldLocks = heldLocksTokenMap.get(token); if ((heldLocks == null) || isFrozen(heldLocks.locks.getKeys())) { return null; } long now = currentTimeMillis(); long expirationDateMs = now + heldLocks.realToken.getLockTimeout().toMillis(); heldLocksTokenMap.replace(token, heldLocks, new HeldLocks<HeldLocksToken>( heldLocks.realToken.refresh(expirationDateMs), heldLocks.locks)); heldLocks = heldLocksTokenMap.get(token); if (heldLocks == null) { return null; } HeldLocksToken finalToken = heldLocks.realToken; logIfAbnormallyOld(finalToken, now); return finalToken; }
heldLocks.locks, heldLocks.realToken.getLockTimeout(), heldLocks.realToken.getVersionId()); if (log.isTraceEnabled()) {