Package com.tangosol.util
Class SegmentedConcurrentMap.LockAction
java.lang.Object
com.tangosol.util.SegmentedConcurrentMap.LockAction
- All Implemented Interfaces:
SegmentedHashMap.EntryAction
- Enclosing class:
SegmentedConcurrentMap
protected class SegmentedConcurrentMap.LockAction
extends Object
implements SegmentedHashMap.EntryAction
Action support for lock(). This action attempts to lock the specified
key in this map, and is expected to run while holding the segment-lock
for the specified key.
The context object for a LockAction is the prospective lock-holder.
The result of invoking a LockAction is NO_VALUE if the key is successfully locked, or the Entry object corresponding to the specified key if the key could not be successfully locked.
-
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
-
LockAction
protected LockAction()
-
-
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
-