ResponseT
- Type of POJO response.EventT
- Type of event being published.SubBuilderT
- Subtype of builder class for method chaining.public abstract class DefaultEventStreamResponseHandlerBuilder<ResponseT,EventT,SubBuilderT> extends Object implements EventStreamResponseHandler.Builder<ResponseT,EventT,SubBuilderT>
Modifier | Constructor and Description |
---|---|
protected |
DefaultEventStreamResponseHandlerBuilder() |
Modifier and Type | Method and Description |
---|---|
SubBuilderT |
onComplete(Runnable onComplete)
Action to invoke when the event stream completes.
|
SubBuilderT |
onError(Consumer<Throwable> consumer)
Callback to invoke in the event on an error.
|
SubBuilderT |
onEventStream(Consumer<SdkPublisher<EventT>> onSubscribe)
Callback to invoke when the
SdkPublisher is available. |
SubBuilderT |
onResponse(Consumer<ResponseT> responseConsumer)
Callback to invoke when the initial response is received.
|
SubBuilderT |
publisherTransformer(Function<SdkPublisher<EventT>,SdkPublisher<EventT>> publisherTransformer)
Allows for optional transformation of the publisher of events before subscribing.
|
SubBuilderT |
subscriber(Consumer<EventT> eventConsumer)
Sets the subscriber to the
SdkPublisher of events. |
SubBuilderT |
subscriber(Supplier<org.reactivestreams.Subscriber<EventT>> eventSubscriber)
Subscriber that will subscribe to the
SdkPublisher of events. |
protected DefaultEventStreamResponseHandlerBuilder()
public SubBuilderT onResponse(Consumer<ResponseT> responseConsumer)
EventStreamResponseHandler.Builder
onResponse
in interface EventStreamResponseHandler.Builder<ResponseT,EventT,SubBuilderT>
responseConsumer
- Callback that will process the initial response.public SubBuilderT onError(Consumer<Throwable> consumer)
EventStreamResponseHandler.Builder
onError
in interface EventStreamResponseHandler.Builder<ResponseT,EventT,SubBuilderT>
consumer
- Callback that will process any error that occurs.public SubBuilderT onComplete(Runnable onComplete)
EventStreamResponseHandler.Builder
onComplete
in interface EventStreamResponseHandler.Builder<ResponseT,EventT,SubBuilderT>
onComplete
- Action to run on the completion of the event stream.public SubBuilderT subscriber(Supplier<org.reactivestreams.Subscriber<EventT>> eventSubscriber)
EventStreamResponseHandler.Builder
SdkPublisher
of events. Subscriber
must be provided.subscriber
in interface EventStreamResponseHandler.Builder<ResponseT,EventT,SubBuilderT>
eventSubscriber
- Supplier for a subscriber that will be subscribed to the publisher of events.public SubBuilderT subscriber(Consumer<EventT> eventConsumer)
EventStreamResponseHandler.Builder
SdkPublisher
of events. The given consumer will be called for each event received
by the publisher. Events are requested sequentially after each event is processed. If you need more control over
the backpressure strategy consider using EventStreamResponseHandler.Builder.subscriber(Supplier)
instead.subscriber
in interface EventStreamResponseHandler.Builder<ResponseT,EventT,SubBuilderT>
eventConsumer
- Consumer that will process incoming events.public SubBuilderT onEventStream(Consumer<SdkPublisher<EventT>> onSubscribe)
EventStreamResponseHandler.Builder
SdkPublisher
is available. This callback must subscribe to the given publisher.
This method should not be used with EventStreamResponseHandler.Builder.subscriber(Supplier)
or any of it's overloads.onEventStream
in interface EventStreamResponseHandler.Builder<ResponseT,EventT,SubBuilderT>
onSubscribe
- Callback that will subscribe to the SdkPublisher
.public SubBuilderT publisherTransformer(Function<SdkPublisher<EventT>,SdkPublisher<EventT>> publisherTransformer)
EventStreamResponseHandler.Builder
SdkPublisher
of the same type so methods like SdkPublisher.map(Function)
and
SdkPublisher.buffer(int)
that change the type cannot be used with this method.publisherTransformer
in interface EventStreamResponseHandler.Builder<ResponseT,EventT,SubBuilderT>
publisherTransformer
- Function that returns a new SdkPublisher
with augmented behavior.Copyright © 2020. All rights reserved.