Class NonBlockingByteArrayParser

java.lang.Object
com.fasterxml.jackson.core.JsonParser
com.fasterxml.jackson.core.base.ParserMinimalBase
All Implemented Interfaces:
com.fasterxml.jackson.core.async.ByteArrayFeeder, com.fasterxml.jackson.core.async.NonBlockingInputFeeder, com.fasterxml.jackson.core.Versioned, Closeable, AutoCloseable

public class NonBlockingByteArrayParser extends NonBlockingParserBase implements com.fasterxml.jackson.core.async.ByteArrayFeeder
  • Field Details

    • _inputBuffer

      protected byte[] _inputBuffer
      This buffer is actually provided via NonBlockingInputFeeder
    • _origBufferLen

      protected int _origBufferLen
      In addition to current buffer pointer, and end pointer, we will also need to know number of bytes originally contained. This is needed to correctly update location information when the block has been completed.
  • Constructor Details

    • NonBlockingByteArrayParser

      public NonBlockingByteArrayParser(com.fasterxml.jackson.core.io.IOContext ctxt, int parserFeatures, int smileFeatures, com.fasterxml.jackson.core.sym.ByteQuadsCanonicalizer sym)
  • Method Details

    • getNonBlockingInputFeeder

      public com.fasterxml.jackson.core.async.ByteArrayFeeder getNonBlockingInputFeeder()
      Overrides:
      getNonBlockingInputFeeder in class com.fasterxml.jackson.core.JsonParser
    • needMoreInput

      public final boolean needMoreInput()
      Specified by:
      needMoreInput in interface com.fasterxml.jackson.core.async.NonBlockingInputFeeder
    • feedInput

      public void feedInput(byte[] buf, int start, int end) throws IOException
      Specified by:
      feedInput in interface com.fasterxml.jackson.core.async.ByteArrayFeeder
      Throws:
      IOException
    • endOfInput

      public void endOfInput()
      Specified by:
      endOfInput in interface com.fasterxml.jackson.core.async.NonBlockingInputFeeder
    • releaseBuffered

      public int releaseBuffered(OutputStream out) throws IOException
      Specified by:
      releaseBuffered in class NonBlockingParserBase
      Throws:
      IOException
    • nextToken

      public com.fasterxml.jackson.core.JsonToken nextToken() throws IOException
      Specified by:
      nextToken in class com.fasterxml.jackson.core.base.ParserMinimalBase
      Throws:
      IOException
    • _finishToken

      protected final com.fasterxml.jackson.core.JsonToken _finishToken() throws IOException
      Method called when a (scalar) value type has been detected, but not all of contents have been decoded due to incomplete input available.
      Throws:
      IOException
    • _finishHeader

      protected com.fasterxml.jackson.core.JsonToken _finishHeader(int state) throws IOException
      Helper method that will decode information from a header block that has been detected.
      Throws:
      IOException
    • _startFieldName

      protected final com.fasterxml.jackson.core.JsonToken _startFieldName(int ch) throws IOException
      Method that handles initial token type recognition for token that has to be either FIELD_NAME or END_OBJECT.
      Throws:
      IOException
    • _startLongUnicode

      protected final com.fasterxml.jackson.core.JsonToken _startLongUnicode() throws IOException
      Throws:
      IOException
    • _startFloat

      protected final com.fasterxml.jackson.core.JsonToken _startFloat() throws IOException
      Throws:
      IOException
    • _finishFloat

      protected final com.fasterxml.jackson.core.JsonToken _finishFloat(int value, int bytesRead) throws IOException
      Throws:
      IOException
    • _startDouble

      protected final com.fasterxml.jackson.core.JsonToken _startDouble() throws IOException
      Throws:
      IOException
    • _finishDouble

      protected final com.fasterxml.jackson.core.JsonToken _finishDouble(long value, int bytesRead) throws IOException
      Throws:
      IOException
    • _startRawBinary

      protected final com.fasterxml.jackson.core.JsonToken _startRawBinary() throws IOException
      Throws:
      IOException
    • _decode7BitEncodedTail

      protected final boolean _decode7BitEncodedTail(int bytesToDecode, int buffered) throws IOException
      Throws:
      IOException