Class JacksonCoreProcessor
java.lang.Object
io.micronaut.core.async.subscriber.SingleThreadedBufferingSubscriber<byte[]>
io.micronaut.core.async.processor.SingleThreadedBufferingProcessor<byte[],JsonNode>
io.micronaut.jackson.core.parser.JacksonCoreProcessor
- All Implemented Interfaces:
Completable, Emitter<byte[]>, Processor<byte[],JsonNode>, Publisher<JsonNode>, Subscriber<byte[]>
@Internal
public class JacksonCoreProcessor
extends SingleThreadedBufferingProcessor<byte[],JsonNode>
A Reactive streams publisher that publishes a
JsonNode once the JSON has been fully consumed.
Uses NonBlockingByteArrayJsonParser internally allowing the parsing of
JSON from an incoming stream of bytes in a non-blocking manner- Since:
- 1.0
- Author:
- Graeme Rocher
-
Nested Class Summary
Nested classes/interfaces inherited from class SingleThreadedBufferingSubscriber
SingleThreadedBufferingSubscriber.BackPressureState, SingleThreadedBufferingSubscriber.DownstreamSubscription -
Field Summary
Fields inherited from class SingleThreadedBufferingSubscriber
upstreamBuffer, upstreamDemand, upstreamState, upstreamSubscription -
Constructor Summary
ConstructorsConstructorDescriptionJacksonCoreProcessor(boolean streamArray, tools.jackson.core.TokenStreamFactory jsonFactory, JsonStreamConfig deserializationConfig) Creates a new JacksonProcessor. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidImplementSubscriber.onComplete().booleanprotected voidonUpstreamMessage(byte[] message) Called when a message is received from the upstreamSubscriber.Methods inherited from class SingleThreadedBufferingProcessor
currentDownstreamSubscriber, doOnError, doOnNext, doOnSubscribe, getDownstreamSubscriber, subscribe, subscribeDownstreamMethods inherited from class SingleThreadedBufferingSubscriber
newDownstreamSubscription, onComplete, onError, onNext, onSubscribe, provideDownstreamSubscriptionMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Subscriber
onComplete, onError, onNext, onSubscribe
-
Constructor Details
-
JacksonCoreProcessor
public JacksonCoreProcessor(boolean streamArray, tools.jackson.core.TokenStreamFactory jsonFactory, JsonStreamConfig deserializationConfig) Creates a new JacksonProcessor.- Parameters:
streamArray- Whether arrays should be streamedjsonFactory- Factory to use for creating the parserdeserializationConfig- The deserialization configuration (in particular bignum handling)
-
-
Method Details
-
needMoreInput
public boolean needMoreInput()- Returns:
- Whether more input is needed
-
doOnComplete
protected void doOnComplete()Description copied from class:SingleThreadedBufferingSubscriberImplementSubscriber.onComplete().- Overrides:
doOnCompletein classSingleThreadedBufferingProcessor<byte[],JsonNode>
-
onUpstreamMessage
protected void onUpstreamMessage(byte[] message) Description copied from class:SingleThreadedBufferingProcessorCalled when a message is received from the upstreamSubscriber.- Specified by:
onUpstreamMessagein classSingleThreadedBufferingProcessor<byte[],JsonNode> - Parameters:
message- The message
-