Class AbstractReferenceMap.ReferenceEntry<K,V>
java.lang.Object
org.apache.commons.collections4.map.AbstractHashedMap.HashEntry<K,V>
org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceEntry<K,V>
- Enclosing class:
- AbstractReferenceMap<K,
V>
protected static class AbstractReferenceMap.ReferenceEntry<K,V>
extends AbstractHashedMap.HashEntry<K,V>
A MapEntry implementation for the map.
If getKey() or getValue() returns null, it means the mapping is stale and should be removed.
- Since:
- 3.1
-
Field Summary
Fields inherited from class org.apache.commons.collections4.map.AbstractHashedMap.HashEntry
hashCode, key, next, value -
Constructor Summary
ConstructorsConstructorDescriptionReferenceEntry(AbstractReferenceMap<K, V> parent, AbstractHashedMap.HashEntry<K, V> next, int hashCode, K key, V value) Creates a new entry object for the ReferenceMap. -
Method Summary
Modifier and TypeMethodDescriptionbooleanCompares this map entry to another.getKey()Gets the key from the entry.getValue()Gets the value from the entry.inthashCode()Gets the hashcode of the entry using temporary hard references.protected AbstractReferenceMap.ReferenceEntry<K,V> next()Gets the next entry in the bucket.Sets the value of the entry.protected <T> ObjecttoReference(AbstractReferenceMap.ReferenceStrength type, T referent, int hash) Constructs a reference of the given type to the given referent.Methods inherited from class org.apache.commons.collections4.map.AbstractHashedMap.HashEntry
toString
-
Constructor Details
-
ReferenceEntry
public ReferenceEntry(AbstractReferenceMap<K, V> parent, AbstractHashedMap.HashEntry<K, V> next, int hashCode, K key, V value) Creates a new entry object for the ReferenceMap.- Parameters:
parent- the parent mapnext- the next entry in the hash buckethashCode- the hash code of the keykey- the keyvalue- the value
-
-
Method Details
-
getKey
Gets the key from the entry. This method dereferences weak and soft keys and thus may return null. -
getValue
Gets the value from the entry. This method dereferences weak and soft value and thus may return null. -
setValue
Sets the value of the entry. -
equals
Compares this map entry to another.This implementation uses
isEqualKeyandisEqualValueon the main map for comparison. -
hashCode
public int hashCode()Gets the hashcode of the entry using temporary hard references.This implementation uses
hashEntryon the main map. -
toReference
Constructs a reference of the given type to the given referent. The reference is registered with the queue for later purging.- Type Parameters:
T- the type of the referenced object- Parameters:
type- HARD, SOFT or WEAKreferent- the object to refer tohash- the hash code of the key of the mapping; this number might be different from referent.hashCode() if the referent represents a value and not a key- Returns:
- the reference to the object
-
next
Gets the next entry in the bucket.- Returns:
- the next entry in the bucket
-