Package org.infinispan.stream.impl
Interface KeyTrackingTerminalOperation<Original,K,R>
-
- Type Parameters:
Original
- original stream typeK
- key type for the entry returnedR
- return type when not utilizing rehash aware
- All Superinterfaces:
SegmentAwareOperation
- All Known Implementing Classes:
AbstractForEachDoubleOperation
,AbstractForEachIntOperation
,AbstractForEachLongOperation
,AbstractForEachOperation
,ForEachBiOperation
,ForEachDoubleOperation
,ForEachFlatMapDoubleOperation
,ForEachFlatMapIntOperation
,ForEachFlatMapLongOperation
,ForEachFlatMapObjDoubleOperation
,ForEachFlatMapObjIntOperation
,ForEachFlatMapObjLongOperation
,ForEachIntOperation
,ForEachLongOperation
,ForEachObjDoubleOperation
,ForEachObjIntOperation
,ForEachObjLongOperation
,ForEachOperation
public interface KeyTrackingTerminalOperation<Original,K,R> extends SegmentAwareOperation
A terminal operation for aCacheStream
that allows tracking keys during a rehash event.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
KeyTrackingTerminalOperation.IntermediateCollector<C>
Collector used to collect items from intermediate responses of operations
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
handleInjection(ComponentRegistry registry)
Handles injection of components for various intermediate and this operation.Collection<K>
performForEachOperation(KeyTrackingTerminalOperation.IntermediateCollector<Collection<K>> response)
Invoked when a key and rehash aware operation is desired.Collection<R>
performOperation(KeyTrackingTerminalOperation.IntermediateCollector<Collection<R>> response)
Invoked when a key aware operation is desired without rehash being enabled.void
setSupplier(Supplier<Stream<Original>> supplier)
This method is to be invoked only locally after a key tracking operation has been serialized to a new node-
Methods inherited from interface org.infinispan.stream.impl.SegmentAwareOperation
lostSegment
-
-
-
-
Method Detail
-
performOperation
Collection<R> performOperation(KeyTrackingTerminalOperation.IntermediateCollector<Collection<R>> response)
Invoked when a key aware operation is desired without rehash being enabled.- Parameters:
response
- the collector that will be called back for any intermediate results- Returns:
- the final response from the remote node
-
performForEachOperation
Collection<K> performForEachOperation(KeyTrackingTerminalOperation.IntermediateCollector<Collection<K>> response)
Invoked when a key and rehash aware operation is desired.- Parameters:
response
- the collector that will be called back for any intermediate results- Returns:
- the final response from the remote node
-
setSupplier
void setSupplier(Supplier<Stream<Original>> supplier)
This method is to be invoked only locally after a key tracking operation has been serialized to a new node- Parameters:
supplier
- the supplier to use
-
handleInjection
void handleInjection(ComponentRegistry registry)
Handles injection of components for various intermediate and this operation.- Parameters:
registry
- component registry to use
-
-