com.fasterxml.jackson.databind

Class MappingIterator<T>

    • Field Detail

      • STATE_CLOSED

        protected static final int STATE_CLOSED
        State in which iterator is closed
        See Also:
        Constant Field Values
      • STATE_NEED_RESYNC

        protected static final int STATE_NEED_RESYNC
        State in which value read failed
        See Also:
        Constant Field Values
      • STATE_MAY_HAVE_VALUE

        protected static final int STATE_MAY_HAVE_VALUE
        State in which no recovery is needed, but "hasNextValue()" needs to be called first
        See Also:
        Constant Field Values
      • STATE_HAS_VALUE

        protected static final int STATE_HAS_VALUE
        State in which "hasNextValue()" has been succesfully called and deserializer can be called to fetch value
        See Also:
        Constant Field Values
      • _type

        protected final JavaType _type
        Type to bind individual elements to.
      • _context

        protected final DeserializationContext _context
        Context for deserialization, needed to pass through to deserializer
      • _deserializer

        protected final JsonDeserializer<T> _deserializer
        Deserializer for individual element values.
      • _parser

        protected final com.fasterxml.jackson.core.JsonParser _parser
        Underlying parser used for reading content to bind. Initialized as not null but set as null when iterator is closed, to denote closing.
      • _seqContext

        protected final com.fasterxml.jackson.core.JsonStreamContext _seqContext
        Context to resynchronize to, in case an exception is encountered but caller wants to try to read more elements.
      • _updatedValue

        protected final T _updatedValue
        If not null, "value to update" instead of creating a new instance for each call.
      • _closeParser

        protected final boolean _closeParser
        Flag that indicates whether input JsonParser should be closed when we are done or not; generally only called when caller did not pass JsonParser.
      • _state

        protected int _state
        State of the iterator
    • Constructor Detail

      • MappingIterator

        protected MappingIterator(JavaType type,
                                  com.fasterxml.jackson.core.JsonParser p,
                                  DeserializationContext ctxt,
                                  JsonDeserializer<?> deser,
                                  boolean managedParser,
                                  Object valueToUpdate)
        Parameters:
        managedParser - Whether we "own" the JsonParser passed or not: if true, it was created by ObjectReader and code here needs to close it; if false, it was passed by calling code and should not be closed by iterator.
    • Method Detail

      • emptyIterator

        public static <T> MappingIterator<T> emptyIterator()
        Method for getting an "empty" iterator instance: one that never has more values; may be freely shared.
        Since:
        2.10 Existed earlier but public since 2.10
      • hasNext

        public boolean hasNext()
        Specified by:
        hasNext in interface Iterator<T>
      • next

        public T next()
        Specified by:
        next in interface Iterator<T>
      • remove

        public void remove()
        Specified by:
        remove in interface Iterator<T>
      • hasNextValue

        public boolean hasNextValue()
                             throws IOException
        Equivalent of next() but one that may throw checked exceptions from Jackson due to invalid input.
        Throws:
        IOException
      • readAll

        public List<T> readAll()
                        throws IOException
        Convenience method for reading all entries accessible via this iterator; resulting container will be a ArrayList.
        Returns:
        List of entries read
        Throws:
        IOException
        Since:
        2.2
      • readAll

        public <L extends List<? super T>> L readAll(L resultList)
                                              throws IOException
        Convenience method for reading all entries accessible via this iterator
        Returns:
        List of entries read (same as passed-in argument)
        Throws:
        IOException
        Since:
        2.2
      • readAll

        public <C extends Collection<? super T>> C readAll(C results)
                                                    throws IOException
        Convenience method for reading all entries accessible via this iterator
        Throws:
        IOException
        Since:
        2.5
      • getParser

        public com.fasterxml.jackson.core.JsonParser getParser()
        Accessor for getting underlying parser this iterator uses.
        Since:
        2.2
      • getParserSchema

        public com.fasterxml.jackson.core.FormatSchema getParserSchema()
        Accessor for accessing FormatSchema that the underlying parser (as per getParser()) is using, if any; only parser of schema-aware formats use schemas.
        Since:
        2.2
      • getCurrentLocation

        public com.fasterxml.jackson.core.JsonLocation getCurrentLocation()
        Convenience method, functionally equivalent to: iterator.getParser().getCurrentLocation()
        Returns:
        Location of the input stream of the underlying parser
        Since:
        2.2.1
      • _throwNoSuchElement

        protected <R> R _throwNoSuchElement()
      • _handleIOException

        protected <R> R _handleIOException(IOException e)

Copyright © 2008–2023 FasterXML. All rights reserved.