Class ValueReaderLocator

java.lang.Object
com.fasterxml.jackson.jr.ob.impl.ValueLocatorBase
com.fasterxml.jackson.jr.ob.impl.ValueReaderLocator

public class ValueReaderLocator extends ValueLocatorBase
Helper object used for efficient detection of type information relevant to our conversion needs when writing out Java Objects as JSON.

Note that usage pattern is such that a single "root" instance is kept by each JSON instance; and an actual per-operation instance must be constructed by calling perOperationInstance(com.fasterxml.jackson.jr.ob.impl.JSONReader, int): reason for this is that instances use simple caching to handle the common case of repeating types within JSON Arrays.

  • Field Details

    • MAX_CACHED_READERS

      protected static final int MAX_CACHED_READERS
      While we should be able to cache all types in the active working set, we should also avoid potential unbounded retention, since there is often just one big instance per JVM (or at least ClassLoader).
      See Also:
    • _typeResolver

      protected final TypeResolver _typeResolver
      For generic containers (Collections, Maps, arrays), we may need this guy.
    • _readerProvider

      protected final ReaderWriterProvider _readerProvider
      Provider for custom readers, if any; may be null.
      Since:
      2.10
    • _readerModifier

      protected final ReaderWriterModifier _readerModifier
      Provider for reader customizer, if any; may be null.
      Since:
      2.11
    • _knownReaders

      protected final ConcurrentHashMap<ClassKey,ValueReader> _knownReaders
      Set of ValueReaders that we have resolved
    • _incompleteReaders

      protected Map<ClassKey,ValueReader> _incompleteReaders
      During resolution, some readers may be in-progress, but need to be linked: for example, with cyclic type references.
    • _readerLock

      protected final Object _readerLock
      Object used for mutex during construction of a Bean deserializer: necessary to avoid race conditions during handling of cyclic dependencies.
    • _features

      protected final int _features
      Feature flags that are enabled
    • _readContext

      protected final JSONReader _readContext
  • Constructor Details

  • Method Details