com.fasterxml.jackson.dataformat.javaprop.io

## Class JPropReadContext

- java.lang.Object
- - com.fasterxml.jackson.core.JsonStreamContext
  - - com.fasterxml.jackson.dataformat.javaprop.io.JPropReadContext

- Direct Known Subclasses:
    JPropReadContext.ArrayContext, JPropReadContext.ObjectContext

      public abstract class JPropReadContext
      extends com.fasterxml.jackson.core.JsonStreamContext

  Helper class used to keep track of traversal over contents of content tree expressed as `JPropNode`s.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `JPropReadContext.ArrayContext` Cursor used for traversing non-empty JSON Array nodes
    `protected static class` | `JPropReadContext.ObjectContext` Cursor used for traversing non-empty JSON Object nodes

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected String` | `_branchText` Optional "this" value for cases where path branches have direct values; these are exposed before child values with bogus 'name' of empty String.
    `protected String` | `_currentName` Current field name
    `protected String` | `_currentText`
    `protected Object` | `_currentValue` Java-level Object that corresponds to this level of input hierarchy, if any; used by databinding functionality, opaque for parser.
    `protected JPropNode` | `_nextNode` We need to keep track of value nodes to construct further contexts.
    `protected JPropReadContext` | `_parent` Parent cursor of this cursor, if any; null for root cursors.
    `protected int` | `_state`

    - ### Fields inherited from class com.fasterxml.jackson.core.JsonStreamContext

      `_index, _type, TYPE_ARRAY, TYPE_OBJECT, TYPE_ROOT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JPropReadContext(int contextType, JPropReadContext p, JPropNode node)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static JPropReadContext` | `create(JPropNode root)`
    `String` | `getCurrentName()`
    `String` | `getCurrentText()`
    `Object` | `getCurrentValue()`
    `JPropReadContext` | `getParent()`
    `JPropReadContext` | `nextContext()` Method called to figure out child or parent context when change is needed, as indicated by this context returning `null`.
    `abstract com.fasterxml.jackson.core.JsonToken` | `nextToken()`
    `void` | `overrideCurrentName(String name)`
    `void` | `setCurrentValue(Object v)`

    - ### Methods inherited from class com.fasterxml.jackson.core.JsonStreamContext

      `getCurrentIndex, getEntryCount, getStartLocation, getTypeDesc, hasCurrentIndex, hasCurrentName, hasPathSegment, inArray, inObject, inRoot, pathAsPointer, pathAsPointer, toString, typeDesc`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### _parent

          protected final JPropReadContext _parent

      Parent cursor of this cursor, if any; null for root cursors.

    - #### _currentName

          protected String _currentName

      Current field name

    - #### _currentText

          protected String _currentText

    - #### _currentValue

          protected Object _currentValue

      Java-level Object that corresponds to this level of input hierarchy, if any; used by databinding functionality, opaque for parser.

    - #### _nextNode

          protected JPropNode _nextNode

      We need to keep track of value nodes to construct further contexts.

    - #### _branchText

          protected String _branchText

      Optional "this" value for cases where path branches have direct values; these are exposed before child values with bogus 'name' of empty String.

    - #### _state

          protected int _state

  - ### Constructor Detail

    - #### JPropReadContext

          public JPropReadContext(int contextType,
                          JPropReadContext p,
                          JPropNode node)

  - ### Method Detail

    - #### create

          public static JPropReadContext create(JPropNode root)

    - #### getParent

          public final JPropReadContext getParent()

      Specified by:
        `getParent` in class `com.fasterxml.jackson.core.JsonStreamContext`

    - #### getCurrentName

          public final String getCurrentName()

      Specified by:
        `getCurrentName` in class `com.fasterxml.jackson.core.JsonStreamContext`

    - #### overrideCurrentName

          public void overrideCurrentName(String name)

    - #### getCurrentValue

          public Object getCurrentValue()

      Overrides:
        `getCurrentValue` in class `com.fasterxml.jackson.core.JsonStreamContext`

    - #### setCurrentValue

          public void setCurrentValue(Object v)

      Overrides:
        `setCurrentValue` in class `com.fasterxml.jackson.core.JsonStreamContext`

    - #### nextToken

          public abstract com.fasterxml.jackson.core.JsonToken nextToken()

    - #### nextContext

          public JPropReadContext nextContext()

      Method called to figure out child or parent context when change is needed, as indicated by this context returning `null`.

    - #### getCurrentText

          public String getCurrentText()

Copyright © 2017 FasterXML. All rights reserved.