Package io.micronaut.http.netty.stream
Class JsonSubscriber
java.lang.Object
io.micronaut.http.netty.stream.JsonSubscriber
- All Implemented Interfaces:
Subscriber<io.netty.handler.codec.http.HttpContent>,reactor.core.CoreSubscriber<io.netty.handler.codec.http.HttpContent>
@Internal
public final class JsonSubscriber
extends Object
implements reactor.core.CoreSubscriber<io.netty.handler.codec.http.HttpContent>
A Reactor subscriber used to handle JSON content. It delegates to an upstream subscriber, wrapping them with opening/closing brackets
where necessary.
-
Constructor Summary
ConstructorsConstructorDescriptionJsonSubscriber(reactor.core.CoreSubscriber<? super io.netty.handler.codec.http.HttpContent> upstream) -
Method Summary
Modifier and TypeMethodDescriptionreactor.util.context.Contextstatic reactor.core.publisher.Flux<io.netty.handler.codec.http.HttpContent>voidOn complete the opening bracket should be emitted if no items were ever produced, then the closing bracket.voidvoidonNext(io.netty.handler.codec.http.HttpContent o) The goal is to prevent the emission of the opening bracket if the underlying stream never emits an item and only produces an error.void
-
Constructor Details
-
JsonSubscriber
public JsonSubscriber(reactor.core.CoreSubscriber<? super io.netty.handler.codec.http.HttpContent> upstream)
-
-
Method Details
-
currentContext
public reactor.util.context.Context currentContext()- Specified by:
currentContextin interfacereactor.core.CoreSubscriber<io.netty.handler.codec.http.HttpContent>
-
onSubscribe
- Specified by:
onSubscribein interfacereactor.core.CoreSubscriber<io.netty.handler.codec.http.HttpContent>- Specified by:
onSubscribein interfaceSubscriber<io.netty.handler.codec.http.HttpContent>
-
onNext
public void onNext(io.netty.handler.codec.http.HttpContent o) The goal is to prevent the emission of the opening bracket if the underlying stream never emits an item and only produces an error.- Specified by:
onNextin interfaceSubscriber<io.netty.handler.codec.http.HttpContent>- Parameters:
o- The content
-
onError
- Specified by:
onErrorin interfaceSubscriber<io.netty.handler.codec.http.HttpContent>
-
onComplete
public void onComplete()On complete the opening bracket should be emitted if no items were ever produced, then the closing bracket.- Specified by:
onCompletein interfaceSubscriber<io.netty.handler.codec.http.HttpContent>
-
lift
public static reactor.core.publisher.Flux<io.netty.handler.codec.http.HttpContent> lift(Publisher<io.netty.handler.codec.http.HttpContent> publisher)
-