Interface LocalStreamManager<Original,​K>

  • Type Parameters:
    Original - original stream type
    K - the key type for the operations
    All Known Implementing Classes:
    LocalStreamManagerImpl

    public interface LocalStreamManager<Original,​K>
    Stream manager that is invoked on a local node. This is normally called due to a ClusterStreamManager from another node requiring some operation to be performed
    • Method Detail

      • streamOperation

        <R> void streamOperation​(Object requestId,
                                 Address origin,
                                 boolean parallelStream,
                                 org.infinispan.commons.util.IntSet segments,
                                 Set<K> keysToInclude,
                                 Set<K> keysToExclude,
                                 boolean includeLoader,
                                 boolean entryStream,
                                 TerminalOperation<Original,​R> operation)
        Stream operation for a non key aware operation without rehash enabled.
        Type Parameters:
        R - the type of value from the operation
        Parameters:
        requestId - the originating request id
        origin - the node this request came from
        parallelStream - whether this stream is parallel or not
        segments - the segments to include in this operation
        keysToInclude - which keys to include
        keysToExclude - which keys to exclude
        includeLoader - whether or not a cache loader should be utilized
        operation - the operation to perform
      • streamOperationRehashAware

        <R> void streamOperationRehashAware​(Object requestId,
                                            Address origin,
                                            boolean parallelStream,
                                            org.infinispan.commons.util.IntSet segments,
                                            Set<K> keysToInclude,
                                            Set<K> keysToExclude,
                                            boolean includeLoader,
                                            boolean entryStream,
                                            TerminalOperation<Original,​R> operation)
        Stream operation for a non key aware operation with rehash enabled.
        Type Parameters:
        R - the type of value from the operation
        Parameters:
        requestId - the originating request id
        origin - the node this request came from
        parallelStream - whether this stream is parallel or not
        segments - the segments to include in this operation
        keysToInclude - which keys to include
        keysToExclude - which keys to exclude
        includeLoader - whether or not a cache loader should be utilized
        operation - the operation to perform
      • streamOperation

        <R> void streamOperation​(Object requestId,
                                 Address origin,
                                 boolean parallelStream,
                                 org.infinispan.commons.util.IntSet segments,
                                 Set<K> keysToInclude,
                                 Set<K> keysToExclude,
                                 boolean includeLoader,
                                 boolean entryStream,
                                 KeyTrackingTerminalOperation<Original,​K,​R> operation)
        Stream operation for a key aware operation without rehash enabled
        Type Parameters:
        R - the type of value from the operation
        Parameters:
        requestId - the originating request id
        origin - the node this request came from
        parallelStream - whether this stream is parallel or not
        segments - the segments to include in this operation
        keysToInclude - which keys to include
        keysToExclude - which keys to exclude
        includeLoader - whether or not a cache loader should be utilized
        operation - the operation to perform
      • streamOperationRehashAware

        void streamOperationRehashAware​(Object requestId,
                                        Address origin,
                                        boolean parallelStream,
                                        org.infinispan.commons.util.IntSet segments,
                                        Set<K> keysToInclude,
                                        Set<K> keysToExclude,
                                        boolean includeLoader,
                                        boolean entryStream,
                                        KeyTrackingTerminalOperation<Original,​K,​?> operation)
        Stream operation for a key aware operation with rehash enabled
        Parameters:
        requestId - the originating request id
        origin - the node this request came from
        parallelStream - whether this stream is parallel or not
        segments - the segments to include in this operation
        keysToInclude - which keys to include
        keysToExclude - which keys to exclude
        includeLoader - whether or not a cache loader should be utilized
        operation - the operation to perform
      • startIterator

        IteratorResponse startIterator​(Object requestId,
                                       Address origin,
                                       org.infinispan.commons.util.IntSet segments,
                                       Set<K> keysToInclude,
                                       Set<K> keysToExclude,
                                       boolean includeLoader,
                                       boolean entryStream,
                                       Iterable<org.infinispan.stream.impl.intops.IntermediateOperation> intermediateOperations,
                                       long batchSize)
        Signals that a new iterator is created using the given arguments. Returns a response which only returns the given batchSize worth of elements.
        Parameters:
        requestId - the originating request id
        origin - the node this request came from
        segments - the segments to include in this operation
        keysToInclude - which keys to include
        keysToExclude - which keys to exclude
        includeLoader - whether or not a cache loader should be utilized
        intermediateOperations - the operations to apply to the underlying data
        batchSize - how many elements to return
        Returns:
        the response containing iterator
      • continueIterator

        IteratorResponse continueIterator​(Object requestId,
                                          long batchSize)
        Continues an existing iterator by retrieving the next batchSize of elements
        Parameters:
        requestId - the originating request id
        batchSize - how many elements to return
        Returns:
        the response containing iterator