Class JsonObjectParser

  • All Implemented Interfaces:
    ObjectParser

    public class JsonObjectParser
    extends Object
    implements ObjectParser
    Parses JSON data into an data class of key/value pairs.

    Implementation is thread-safe.

    Sample usage:

    
      static void setParser(HttpRequest request) {
        request.setParser(new JsonObjectParser(new JacksonFactory()));
      }
     
     
    Since:
    1.10
    Author:
    Matthias Linder (mlinder)
    • Constructor Detail

      • JsonObjectParser

        public JsonObjectParser​(JsonFactory jsonFactory)
        Parameters:
        jsonFactory - JSON factory
      • JsonObjectParser

        protected JsonObjectParser​(JsonObjectParser.Builder builder)
        Parameters:
        builder - builder
        Since:
        1.14
    • Method Detail

      • parseAndClose

        public <T> T parseAndClose​(InputStream in,
                                   Charset charset,
                                   Class<T> dataClass)
                            throws IOException
        Description copied from interface: ObjectParser
        Parses the given input stream into a new instance of the the given data class of key/value pairs and closes the input stream.
        Specified by:
        parseAndClose in interface ObjectParser
        Parameters:
        in - input stream which contains the data to parse
        charset - charset which should be used to decode the input stream or null if unknown
        dataClass - class into which the data is parsed
        Throws:
        IOException
      • parseAndClose

        public Object parseAndClose​(InputStream in,
                                    Charset charset,
                                    Type dataType)
                             throws IOException
        Description copied from interface: ObjectParser
        Parses the given input stream into a new instance of the the given data type of key/value pairs and closes the input stream.
        Specified by:
        parseAndClose in interface ObjectParser
        Parameters:
        in - input stream which contains the data to parse
        charset - charset which should be used to decode the input stream or null if unknown
        dataType - type into which the data is parsed
        Throws:
        IOException
      • parseAndClose

        public <T> T parseAndClose​(Reader reader,
                                   Class<T> dataClass)
                            throws IOException
        Description copied from interface: ObjectParser
        Parses the given reader into a new instance of the the given data class of key/value pairs and closes the reader.
        Specified by:
        parseAndClose in interface ObjectParser
        Parameters:
        reader - reader which contains the text data to parse
        dataClass - class into which the data is parsed
        Throws:
        IOException
      • parseAndClose

        public Object parseAndClose​(Reader reader,
                                    Type dataType)
                             throws IOException
        Description copied from interface: ObjectParser
        Parses the given reader into a new instance of the the given data type of key/value pairs and closes the reader.
        Specified by:
        parseAndClose in interface ObjectParser
        Parameters:
        reader - reader which contains the text data to parse
        dataType - type into which the data is parsed
        Throws:
        IOException
      • getJsonFactory

        public final JsonFactory getJsonFactory()
        Returns the JSON factory.
      • getWrapperKeys

        public Set<String> getWrapperKeys()
        Returns the unmodifiable set of wrapper keys for the JSON content.
        Since:
        1.14