Class CacheIntermediatePublisher<R>

java.lang.Object
org.infinispan.stream.impl.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 Details

    • CacheIntermediatePublisher

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

    • 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