Class ConcurrentReferenceHashMap.ReferenceManager
- java.lang.Object
-
- org.hotswap.agent.util.spring.collections.ConcurrentReferenceHashMap.ReferenceManager
-
- Enclosing class:
- ConcurrentReferenceHashMap<K,V>
protected class ConcurrentReferenceHashMap.ReferenceManager extends Object
Strategy class used to manageConcurrentReferenceHashMap.References. This class can be overridden if alternative reference types need to be supported.
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedReferenceManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ConcurrentReferenceHashMap.Reference<K,V>createReference(ConcurrentReferenceHashMap.Entry<K,V> entry, int hash, ConcurrentReferenceHashMap.Reference<K,V> next)Factory method used to create a newConcurrentReferenceHashMap.Reference.ConcurrentReferenceHashMap.Reference<K,V>pollForPurge()Return any reference that has been garbage collected and can be purged from the underlying structure ornullif no references need purging.
-
-
-
Method Detail
-
createReference
public ConcurrentReferenceHashMap.Reference<K,V> createReference(ConcurrentReferenceHashMap.Entry<K,V> entry, int hash, ConcurrentReferenceHashMap.Reference<K,V> next)
Factory method used to create a newConcurrentReferenceHashMap.Reference.- Parameters:
entry- the entry contained in the referencehash- the hashnext- the next reference in the chain ornull- Returns:
- a new
ConcurrentReferenceHashMap.Reference
-
pollForPurge
public ConcurrentReferenceHashMap.Reference<K,V> pollForPurge()
Return any reference that has been garbage collected and can be purged from the underlying structure ornullif no references need purging. This method must be thread safe and ideally should not block when returningnull. References should be returned once and only once.- Returns:
- a reference to purge or
null
-
-