Class AbstractProcessor<K,V,R>

java.lang.Object
com.tangosol.util.Base
com.tangosol.util.processor.AbstractProcessor<K,V,R>
Type Parameters:
K - the type of the Map entry key
V - the type of the Map entry value
R - the type of the EntryProcessor return value
All Implemented Interfaces:
InvocableMap.EntryProcessor<K,V,R>, Serializable
Direct Known Subclasses:
CompositeProcessor, ConditionalProcessor, ConditionalPut, ConditionalPutAll, ConditionalRemove, ExtractorProcessor, NullImplementation.NullEntryProcessor, PreloadRequest, PropertyProcessor, UpdaterProcessor, VersionedPut, VersionedPutAll

public abstract class AbstractProcessor<K,V,R> extends Base implements InvocableMap.EntryProcessor<K,V,R>
An AbstractProcessor is a partial EntryProcessor implementation that provides the default implementation of the processAll(java.util.Set<? extends com.tangosol.util.InvocableMap.Entry<K, V>>) method.
Since:
Coherence 3.1
Author:
cp/jh 2005.07.19
See Also:
  • Constructor Details

    • AbstractProcessor

      public AbstractProcessor()
  • Method Details

    • processAll

      public 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. Note: As of Coherence 12.2.1, this method simply delegates to the default processAll implementation in InvocableMap.EntryProcessor.

      Specified by:
      processAll in interface InvocableMap.EntryProcessor<K,V,R>
      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