com.fasterxml.jackson.databind.deser.impl

## Class ReadableObjectId

- java.lang.Object
- - com.fasterxml.jackson.databind.deser.impl.ReadableObjectId

-     public class ReadableObjectId
      extends Object

  Simple value container for containing information about single Object Id during deserialization

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `ReadableObjectId.Referring`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Object` | `_item`
    `protected ObjectIdGenerator.IdKey` | `_key`
    `protected LinkedList<ReadableObjectId.Referring>` | `_referringProperties`
    `protected ObjectIdResolver` | `_resolver`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ReadableObjectId(ObjectIdGenerator.IdKey key)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `appendReferring(ReadableObjectId.Referring currentReferring)`
    `void` | `bindItem(Object ob)` Method called to assign actual POJO to which ObjectId refers to: will also handle referring properties, if any, by assigning POJO.
    `ObjectIdGenerator.IdKey` | `getKey()`
    `ObjectIdResolver` | `getResolver()` Allow access to the resolver in case anybody wants to use it directly, for examples from `DefaultDeserializationContext.tryToResolveUnresolvedObjectId(com.fasterxml.jackson.databind.deser.impl.ReadableObjectId)`.
    `boolean` | `hasReferringProperties()`
    `Iterator<ReadableObjectId.Referring>` | `referringProperties()`
    `Object` | `resolve()`
    `void` | `setResolver(ObjectIdResolver resolver)`
    `String` | `toString()`
    `boolean` | `tryToResolveUnresolved(DeserializationContext ctxt)` Method called by `DeserializationContext` at the end of deserialization if this Object Id was not resolved during normal processing.

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

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

- - ### Field Detail

    - #### _item

          protected Object _item

      Since:
        2.8 (with this name, formerly `public Object item`)

    - #### _key

          protected final ObjectIdGenerator.IdKey _key

    - #### _referringProperties

          protected LinkedList<ReadableObjectId.Referring> _referringProperties

    - #### _resolver

          protected ObjectIdResolver _resolver

  - ### Constructor Detail

    - #### ReadableObjectId

          public ReadableObjectId(ObjectIdGenerator.IdKey key)

  - ### Method Detail

    - #### setResolver

          public void setResolver(ObjectIdResolver resolver)

    - #### getKey

          public ObjectIdGenerator.IdKey getKey()

    - #### appendReferring

          public void appendReferring(ReadableObjectId.Referring currentReferring)

    - #### bindItem

          public void bindItem(Object ob)
                        throws IOException

      Method called to assign actual POJO to which ObjectId refers to: will also handle referring properties, if any, by assigning POJO.
      Throws:
        `IOException`

    - #### resolve

          public Object resolve()

    - #### hasReferringProperties

          public boolean hasReferringProperties()

    - #### referringProperties

          public Iterator<ReadableObjectId.Referring> referringProperties()

    - #### tryToResolveUnresolved

          public boolean tryToResolveUnresolved(DeserializationContext ctxt)

      Method called by `DeserializationContext` at the end of deserialization if this Object Id was not resolved during normal processing. Call is made to allow custom implementations to use alternative resolution strategies; currently the only way to make use of this functionality is by sub-classing `ReadableObjectId` and overriding this method.

      Default implementation simply returns `false` to indicate that resolution attempt did not succeed.

      Returns:
        True, if resolution succeeded (and no error needs to be reported); false to indicate resolution did not succeed.
      Since:
        2.6

    - #### getResolver

          public ObjectIdResolver getResolver()

      Allow access to the resolver in case anybody wants to use it directly, for examples from `DefaultDeserializationContext.tryToResolveUnresolvedObjectId(com.fasterxml.jackson.databind.deser.impl.ReadableObjectId)`.
      Returns:
        The registered resolver
      Since:
        2.7

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2008–2018 FasterXML. All rights reserved.