Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...


Code Block
languagejava
titleJava API
linenumberstrue
collapsetrue
public interface StreamerTarget<T>

...

 {
   /**

...

    * Streams data into the table.

    *

    * @param publisher Producer.

    * @return Future that will be completed when the stream is finished.

    */

...

   /**

    * Streams data into the cluster with a receiver.

    *

    * @param publisher Producer.

    * @param keyAccessor Key accessor. Required to determine target node from the entry key.

    * @param receiver Stream receiver. Will be invoked on the target node.

    * @param resultSubscriber Optional stream result subscriber. Will be invoked on the current client

    * for every non-null result returned by the receiver.

    * @return Future that will be completed when the stream is finished.

    * @param <S> Source item type.

    * @param <R> Result item type.

    */

...


    * Streams data into the table.
    *
    * @param publisher Producer.
    * @return Future that will be completed when the stream is finished.
    */
   CompletableFuture<Void> streamData(
           Flow.Publisher<T> publisher,
           @Nullable DataStreamerOptions options);


   /**
    * Streams data into the cluster with a receiver.
    *
    * @param publisher Producer.
    * @param keyAccessor Key accessor. Required to determine target node from the entry key.
    * @param receiver Stream receiver. Will be invoked on the target node.
    * @param resultSubscriber Optional stream result subscriber. Will be invoked on the current client
    * for every non-null result returned by the receiver.
    * @return Future that will be completed when the stream is finished.
    * @param <S> Source item type.
    * @param <R> Result item type.
    */
   <S, R> CompletableFuture<Void> streamData(
           Flow.Publisher<S> publisher,
           Function<S, T> keyAccessor,
           StreamReceiver<S, R> receiver,
           @Nullable Flow.Subscriber<R> resultSubscriber,
           @Nullable DataStreamerOptions options);
}


Non-Java Clients

Similar to Compute, server-side code (receiver) requires a pre-deployed Java class, which is addressed by a fully qualified name.

...