Class JsonReadContext


  • public final class JsonReadContext
    extends JsonStreamContext
    Extension of JsonStreamContext, which implements core methods needed, and also exposes more complete API to parser implementation classes.
    • Constructor Detail

    • Method Detail

      • reset

        public void reset​(int type,
                          int lineNr,
                          int colNr)
        Internal method to allow instance reuse: DO NOT USE unless you absolutely know what you are doing. Clears up state (including "current value"), changes type to one specified; resets current duplicate-detection state (if any). Parent link left as-is since it is final.

        NOTE: Public since 2.12.

        Parameters:
        type - Type to assign to this context node
        lineNr - Line of the starting position of this context
        colNr - Column of the starting position of this context
      • getCurrentValue

        public java.lang.Object getCurrentValue()
        Description copied from class: JsonStreamContext
        Method for accessing currently active value being used by data-binding (as the source of streaming data to write, or destination of data being read), at this level in hierarchy.

        Note that "current value" is NOT populated (or used) by Streaming parser or generator; it is only used by higher-level data-binding functionality. The reason it is included here is that it can be stored and accessed hierarchically, and gets passed through data-binding.

        Overrides:
        getCurrentValue in class JsonStreamContext
        Returns:
        Currently active value, if one has been assigned.
      • createChildArrayContext

        public JsonReadContext createChildArrayContext​(int lineNr,
                                                       int colNr)
      • createChildObjectContext

        public JsonReadContext createChildObjectContext​(int lineNr,
                                                        int colNr)
      • getCurrentName

        public java.lang.String getCurrentName()
        Description copied from class: JsonStreamContext
        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.
        Specified by:
        getCurrentName in class JsonStreamContext
        Returns:
        Current field name within context, if any; null if none
      • getParent

        public JsonReadContext getParent()
        Description copied from class: JsonStreamContext
        Accessor for finding parent context of this context; will return null for root context.
        Specified by:
        getParent in class JsonStreamContext
        Returns:
        Parent context of this context, if any; null for Root contexts
      • startLocation

        public JsonLocation startLocation​(ContentReference srcRef)
        Description copied from class: JsonStreamContext
        Optional method that may be used to access starting location of this context: for example, in case of JSON `Object` context, offset at which `[` token was read or written. Often used for error reporting purposes. Implementations that do not keep track of such location are expected to return JsonLocation.NA; this is what the default implementation does.
        Overrides:
        startLocation in class JsonStreamContext
        Parameters:
        srcRef - Source reference needed to construct location instance
        Returns:
        Location pointing to the point where the context start marker was found (or written); never null.
      • getStartLocation

        @Deprecated
        public JsonLocation getStartLocation​(java.lang.Object rawSrc)
        Deprecated.
        Overrides:
        getStartLocation in class JsonStreamContext
        Parameters:
        rawSrc - Source reference needed to construct location instance
        Returns:
        Location pointing to the point where the context start marker was found (or written); never null.
      • clearAndGetParent

        public JsonReadContext clearAndGetParent()
        Method that can be used to both clear the accumulated references (specifically value set with setCurrentValue(Object)) that should not be retained, and returns parent (as would getParent() do). Typically called when closing the active context when encountering JsonToken.END_ARRAY or JsonToken.END_OBJECT.
        Returns:
        Parent context of this context node, if any; null for root context
        Since:
        2.7
      • expectComma

        public boolean expectComma()