Package com.tangosol.util
Class SegmentedHashMap.InsertAction
java.lang.Object
com.tangosol.util.SegmentedHashMap.InsertAction
- All Implemented Interfaces:
SegmentedHashMap.EntryAction
- Enclosing class:
SegmentedHashMap
protected class SegmentedHashMap.InsertAction
extends Object
implements SegmentedHashMap.EntryAction
Action support for insert. The action performs locked insert, and is
expected to run while holding the segment-lock for the specified key.
The context object for an InsertAction is the value object to insert in the map, or NO_VALUE to insert a synthetic Entry.
The result of invoking an InsertAction is the (possibly synthetic) Entry object that was inserted for the specified key, or NO_VALUE indicating that a mapping for the key already exists in the map.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioninvokeFound
(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
(Object oKey, Object oContext, SegmentedHashMap.Entry[] aeBucket, int nBucket) Invoke some action, holding the segment lock, when no matching Entry is found.
-
Constructor Details
-
InsertAction
protected InsertAction()
-
-
Method Details
-
invokeFound
public 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.- Specified by:
invokeFound
in interfaceSegmentedHashMap.EntryAction
- Parameters:
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- Returns:
- an opaque result value
-
invokeNotFound
public Object invokeNotFound(Object oKey, Object oContext, SegmentedHashMap.Entry[] aeBucket, int nBucket) Invoke some action, holding the segment lock, when no matching Entry is found.- Specified by:
invokeNotFound
in interfaceSegmentedHashMap.EntryAction
- Parameters:
oKey
- the key to which the action is appliedoContext
- opaque context specific to the actionaeBucket
- the bucket arraynBucket
- the index into the bucket array- Returns:
- an opaque result value
-