Class JacksonJsonDataFormat

  • All Implemented Interfaces:
    DataFormat

    public class JacksonJsonDataFormat
    extends java.lang.Object
    implements DataFormat
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.lang.String name  
      protected com.fasterxml.jackson.databind.ObjectMapper objectMapper  
      protected java.util.List<TypeDetector> typeDetectors  
    • Constructor Summary

      Constructors 
      Constructor Description
      JacksonJsonDataFormat​(java.lang.String name)  
      JacksonJsonDataFormat​(java.lang.String name, com.fasterxml.jackson.databind.ObjectMapper objectMapper)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean canMap​(java.lang.Object parameter)
      Returns true if this data format can map the provided Java Object.
      com.fasterxml.jackson.databind.JavaType constructJavaTypeFromCanonicalString​(java.lang.String canonicalString)  
      java.lang.String getCanonicalTypeName​(java.lang.Object value)
      Returns a data-format-specific canonical type name.
      java.lang.String getName()
      Returns the data format name.
      com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()  
      protected <C> C readValue​(java.lang.String value, com.fasterxml.jackson.databind.JavaType type)  
      <T> T readValue​(java.lang.String value, java.lang.Class<T> cls)
      Reads the internal representation of a data format to a java object of the desired class.
      <T> T readValue​(java.lang.String value, java.lang.String typeIdentifier)
      Reads the internal representation of a data format to a java object of the desired class.
      void setObjectMapper​(com.fasterxml.jackson.databind.ObjectMapper objectMapper)  
      java.lang.String writeValue​(java.lang.Object value)
      Writes a java object to a data format's internal data representation.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • name

        protected java.lang.String name
      • objectMapper

        protected com.fasterxml.jackson.databind.ObjectMapper objectMapper
      • typeDetectors

        protected java.util.List<TypeDetector> typeDetectors
    • Constructor Detail

      • JacksonJsonDataFormat

        public JacksonJsonDataFormat​(java.lang.String name)
      • JacksonJsonDataFormat

        public JacksonJsonDataFormat​(java.lang.String name,
                                     com.fasterxml.jackson.databind.ObjectMapper objectMapper)
    • Method Detail

      • getName

        public java.lang.String getName()
        Description copied from interface: DataFormat
        Returns the data format name.
        Specified by:
        getName in interface DataFormat
      • getObjectMapper

        public com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()
      • setObjectMapper

        public void setObjectMapper​(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
      • canMap

        public boolean canMap​(java.lang.Object parameter)
        Description copied from interface: DataFormat
        Returns true if this data format can map the provided Java Object.
        Specified by:
        canMap in interface DataFormat
        Returns:
        true if this object can be mapped.
      • writeValue

        public java.lang.String writeValue​(java.lang.Object value)
        Description copied from interface: DataFormat
        Writes a java object to a data format's internal data representation.
        Specified by:
        writeValue in interface DataFormat
        Parameters:
        value - object that is written into internal data representation
        Returns:
        the data format's internal representation of that object
      • readValue

        public <T> T readValue​(java.lang.String value,
                               java.lang.String typeIdentifier)
        Description copied from interface: DataFormat
        Reads the internal representation of a data format to a java object of the desired class.
        Specified by:
        readValue in interface DataFormat
        Parameters:
        value - the object to be read
        typeIdentifier - the class to map the object to
        Returns:
        a java object of the specified class that was populated with the input parameter
      • readValue

        public <T> T readValue​(java.lang.String value,
                               java.lang.Class<T> cls)
        Description copied from interface: DataFormat
        Reads the internal representation of a data format to a java object of the desired class.
        Specified by:
        readValue in interface DataFormat
        Parameters:
        value - the object to be read
        cls - a data-format-specific type identifier that describes the class to map to
        Returns:
        a java object of the specified class that was populated with the input parameter
      • readValue

        protected <C> C readValue​(java.lang.String value,
                                  com.fasterxml.jackson.databind.JavaType type)
      • constructJavaTypeFromCanonicalString

        public com.fasterxml.jackson.databind.JavaType constructJavaTypeFromCanonicalString​(java.lang.String canonicalString)
      • getCanonicalTypeName

        public java.lang.String getCanonicalTypeName​(java.lang.Object value)
        Description copied from interface: DataFormat
        Returns a data-format-specific canonical type name.
        Specified by:
        getCanonicalTypeName in interface DataFormat