Class CacheIntermediatePublisher<R>

  • Type Parameters:
    R -
    All Implemented Interfaces:
    Function<org.reactivestreams.Publisher<Object>,​org.reactivestreams.Publisher<R>>, org.infinispan.commands.functional.functions.InjectableComponent, ModifiedValueFunction<org.reactivestreams.Publisher<Object>,​org.reactivestreams.Publisher<R>>

    public final class CacheIntermediatePublisher<R>
    extends Object
    implements ModifiedValueFunction<org.reactivestreams.Publisher<Object>,​org.reactivestreams.Publisher<R>>, org.infinispan.commands.functional.functions.InjectableComponent
    Function that is used to encapsulate multiple intermediate operations and perform them lazily when the function is applied.
    • Constructor Detail

      • CacheIntermediatePublisher

        public CacheIntermediatePublisher​(Iterable<org.infinispan.stream.impl.intops.IntermediateOperation<?,​?,​?,​?>> intOps)
    • Method Detail

      • apply

        public org.reactivestreams.Publisher<R> apply​(org.reactivestreams.Publisher<Object> objectPublisher)
        Specified by:
        apply in interface Function<org.reactivestreams.Publisher<Object>,​org.reactivestreams.Publisher<R>>
      • isModified

        public boolean isModified()
        Description copied from interface: ModifiedValueFunction
        This method should return true when this function changes the actual values of the Publisher. This can be useful for some optimizations that may need to track produced values from the original.
        Specified by:
        isModified in interface ModifiedValueFunction<org.reactivestreams.Publisher<Object>,​org.reactivestreams.Publisher<R>>
        Returns:
        if the values in the publisher are changed
      • inject

        public void inject​(ComponentRegistry registry)
        Specified by:
        inject in interface org.infinispan.commands.functional.functions.InjectableComponent