Interface MappedBatchPublisherWithContext<K,V extends @Nullable Object>


@PublicSpi @NullMarked public interface MappedBatchPublisherWithContext<K,V extends @Nullable Object>
This form of MappedBatchPublisher is given a BatchLoaderEnvironment object that encapsulates the calling context. A typical use case is passing in security credentials or database details for example.

See MappedBatchPublisher for more details on the design invariants that you must implement in order to use this interface.

  • Method Summary

    Modifier and Type
    Method
    Description
    void
    load(List<K> keys, org.reactivestreams.Subscriber<Map.Entry<K,V>> subscriber, BatchLoaderEnvironment environment)
    Called to batch the provided keys into a stream of map entries of keys and values.
  • Method Details

    • load

      void load(List<K> keys, org.reactivestreams.Subscriber<Map.Entry<K,V>> subscriber, BatchLoaderEnvironment environment)
      Called to batch the provided keys into a stream of map entries of keys and values.

      The idiomatic approach would be to create a reactive Publisher that provides the values given the keys and then subscribe to it with the provided Subscriber.

      This is given an environment object to that maybe be useful during the call. A typical use case is passing in security credentials or database details for example.

      Parameters:
      keys - the collection of keys to load
      subscriber - as values arrive you must call the subscriber for each value
      environment - an environment object that can help with the call