public abstract class

JsonStreamContext

extends Object
java.lang.Object
   ↳ com.fasterxml.jackson.core.JsonStreamContext
Known Direct Subclasses

Class Overview

Shared base class for streaming processing contexts used during reading and writing of Json content using Streaming API. This context is also exposed to applications: context object can be used by applications to get an idea of relative position of the parser/generator within json content being processed. This allows for some contextual processing: for example, output within Array context can differ from that of Object context.

Summary

Constants
int TYPE_ARRAY
int TYPE_OBJECT
int TYPE_ROOT
Fields
protected int _index Index of the currently processed entry.
protected int _type
Protected Constructors
JsonStreamContext()
Public Methods
final int getCurrentIndex()
abstract String getCurrentName()
Method for accessing name associated with the current location.
final int getEntryCount()
abstract JsonStreamContext getParent()
Accessor for finding parent context of this context; will return null for root context.
final String getTypeDesc()
Method for accessing simple type description of current context; either ROOT (for root-level values), OBJECT (for field names and values of JSON Objects) or ARRAY (for values of JSON Arrays)
final boolean inArray()
Method that returns true if this context is an Array context; that is, content is being read from or written to a Json Array.
final boolean inObject()
Method that returns true if this context is an Object context; that is, content is being read from or written to a Json Object.
final boolean inRoot()
Method that returns true if this context is a Root context; that is, content is being read from or written to without enclosing array or object structure.
[Expand]
Inherited Methods
From class java.lang.Object

Constants

protected static final int TYPE_ARRAY

Constant Value: 1 (0x00000001)

protected static final int TYPE_OBJECT

Constant Value: 2 (0x00000002)

protected static final int TYPE_ROOT

Constant Value: 0 (0x00000000)

Fields

protected int _index

Index of the currently processed entry. Starts with -1 to signal that no entries have been started, and gets advanced each time a new entry is started, either by encountering an expected separator, or with new values if no separators are expected (the case for root context).

protected int _type

Protected Constructors

protected JsonStreamContext ()

Public Methods

public final int getCurrentIndex ()

Returns
  • Index of the currently processed entry, if any

public abstract String getCurrentName ()

Method for accessing name associated with the current location. Non-null for FIELD_NAME and value events that directly follow field names; null for root level and array values.

public final int getEntryCount ()

Returns
  • Number of entries that are complete and started.

public abstract JsonStreamContext getParent ()

Accessor for finding parent context of this context; will return null for root context.

public final String getTypeDesc ()

Method for accessing simple type description of current context; either ROOT (for root-level values), OBJECT (for field names and values of JSON Objects) or ARRAY (for values of JSON Arrays)

public final boolean inArray ()

Method that returns true if this context is an Array context; that is, content is being read from or written to a Json Array.

public final boolean inObject ()

Method that returns true if this context is an Object context; that is, content is being read from or written to a Json Object.

public final boolean inRoot ()

Method that returns true if this context is a Root context; that is, content is being read from or written to without enclosing array or object structure.