protected class SegmentedConcurrentMap.ConditionalRemoveAction extends SegmentedHashMap.RemoveAction
The context object for a ConditionalRemoveAction is the assumed associated value.
The result of invoking a ConditionalRemoveAction is the previous value associated with the specified key if it is successfully removed, or NO_VALUE if the key is not mapped to the assumed value. Note that a synthetic Entry does not represent a key-value mapping, so NO_VALUE is returned if a matching synthetic Entry is found.
Modifier | Constructor and Description |
---|---|
protected |
ConditionalRemoveAction() |
Modifier and Type | Method and Description |
---|---|
Object |
invokeFound(Object oKey, Object oContext, SegmentedHashMap.Entry[] aeBucket, int nBucket, SegmentedHashMap.Entry entryPrev, SegmentedHashMap.Entry entryCur)
Invoke some action, holding the segment lock, when a matching Entry is found.
|
invokeNotFound, isComplete
public Object invokeFound(Object oKey, Object oContext, SegmentedHashMap.Entry[] aeBucket, int nBucket, SegmentedHashMap.Entry entryPrev, SegmentedHashMap.Entry entryCur)
invokeFound
in interface SegmentedHashMap.EntryAction
invokeFound
in class SegmentedHashMap.RemoveAction
oKey
- the key to which the action is appliedoContext
- opaque context specific to the actionaeBucket
- the bucket arraynBucket
- the index into the bucket arrayentryPrev
- the Entry object immediately preceding the Entry that was found, or nullentryCur
- the Entry object that was found