@GuardedBy("Segment.this") ReferenceEntry<K, V> copyEntry(ReferenceEntry<K, V> original, ReferenceEntry<K, V> newNext) { ValueReference<K, V> valueReference = original.getValueReference(); ReferenceEntry<K, V> newEntry = map.entryFactory.copyEntry(this, original, newNext); newEntry.setValueReference(valueReference.copyFor(this.valueReferenceQueue, newEntry)); return newEntry; }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
boolean containsKey(Object key, int hash) { try { if (count != 0) { // read-volatile ReferenceEntry<K, V> e = getLiveEntry(key, hash); if (e == null) { return false; } return e.getValueReference().get() != null; } return false; } finally { postReadCleanup(); } }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
void enqueueNotification(ReferenceEntry<K, V> entry, RemovalCause cause) { enqueueNotification(entry.getKey(), entry.getHash(), entry.getValueReference().get(), cause); }
/** * Returns {@code true} if the entry has been partially collected, meaning that either the key * is null, or the value is null and it is not computing. */ boolean isCollected(ReferenceEntry<K, V> entry) { if (entry.getKey() == null) { return true; } return isCollected(entry.getValueReference()); }