Package com.tangosol.util
Interface InvocableMap.EntryProcessor<K,V,R>
-
- Type Parameters:
K
- the type of the Map entry keyV
- the type of the Map entry valueR
- the type of value returned by the EntryProcessor
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
AbstractAsynchronousProcessor
,AbstractEvolvableProcessor
,AbstractProcessor
,AsynchronousProcessor
,CompositeProcessor
,ConditionalProcessor
,ConditionalPut
,ConditionalPutAll
,ConditionalRemove
,ContinuousQueryCache.ConverterAsynchronousProcessor
,ExtractorProcessor
,MethodInvocationProcessor
,NullImplementation.NullEntryProcessor
,NumberIncrementor
,NumberMultiplier
,PreloadRequest
,PriorityProcessor
,PropertyProcessor
,ScriptProcessor
,SingleEntryAsynchronousProcessor
,StreamingAsynchronousProcessor
,TouchProcessor
,UpdaterProcessor
,VersionedPut
,VersionedPutAll
- Enclosing interface:
- InvocableMap<K,V>
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public static interface InvocableMap.EntryProcessor<K,V,R> extends Serializable
An invocable agent that operates against the Entry objects within a Map.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description R
process(InvocableMap.Entry<K,V> entry)
Process a Map.Entry object.default Map<K,R>
processAll(Set<? extends InvocableMap.Entry<K,V>> setEntries)
Process a Set of InvocableMap.Entry objects.
-
-
-
Method Detail
-
process
R process(InvocableMap.Entry<K,V> entry)
Process a Map.Entry object.Note: if this method throws an exception, all modifications to the supplied entry or any other entries retrieved via the
BackingMapContext.getBackingMapEntry(java.lang.Object)
API will be rolled back leaving all underlying values unchanged.- Parameters:
entry
- the Entry to process- Returns:
- the result of the processing, if any
-
processAll
default Map<K,R> processAll(Set<? extends InvocableMap.Entry<K,V>> setEntries)
Process a Set of InvocableMap.Entry objects. This method is semantically equivalent to:Map mapResults = new ListMap(); for (Iterator iter = setEntries.iterator(); iter.hasNext(); ) { Entry entry = (Entry) iter.next(); mapResults.put(entry.getKey(), process(entry)); } return mapResults;
Note: if processAll() call throws an exception, only the entries that were removed from the setEntries would be considered successfully processed and the corresponding changes made to the underlying Map; changes made to the remaining entries or any other entries obtained from
BackingMapContext.getBackingMapEntry(java.lang.Object)
will not be processed.- Parameters:
setEntries
- a Set of InvocableMap.Entry objects to process- Returns:
- a Map containing the results of the processing, up to one entry for each InvocableMap.Entry that was processed, keyed by the keys of the Map that were processed, with a corresponding value being the result of the processing for each key
-
-