Interface Mapper<T>


public interface Mapper<T>
Runtime contract a build-time-generated mapper implements for one @Mapped class. Application code rarely references Mapper directly -- it goes through the typed entry points on Mappers. The interface exists so generated code has a single ServiceLoader-friendly shape and so extensions (custom converters, plug-in serializers) can sit on the same type.
  • Method Summary

    Modifier and Type
    Method
    Description
    Inverse of #toMap.
    Inverse of #writeXml.
    toMap(T instance)
    Serializes instance to the JSON map representation that com.codename1.io.JSONParser produces in reverse.
    The class this mapper handles.
    void
    writeXml(T instance, Element root)
    Serializes instance into the given Element.
    XML root element name (@XmlRoot.value, falling back to the class simple name with a lowercase first character).
  • Method Details

    • type

      Class<T> type()
      The class this mapper handles. The instance registry on Mappers is keyed on this value; generated mappers never call Class.forName.
    • toMap

      Map<String,Object> toMap(T instance)
      Serializes instance to the JSON map representation that com.codename1.io.JSONParser produces in reverse. Sub-objects that have their own registered Mapper are emitted as nested maps; scalars (String, boxed primitives, null) go in as-is.
    • fromMap

      T fromMap(Map<String,Object> map)
      Inverse of #toMap. Receives a Map<String, Object> as produced by JSONParser and populates a fresh T.
    • xmlRootName

      String xmlRootName()
      XML root element name (@XmlRoot.value, falling back to the class simple name with a lowercase first character).
    • writeXml

      void writeXml(T instance, Element root)
      Serializes instance into the given Element. Implementations append child elements / attributes; the root element is supplied by the caller so the same mapper can also be invoked from inside a parent element.
    • readXml

      T readXml(Element root)
      Inverse of #writeXml. Receives an Element (the root that Mappers.toXml produced or that a parser delivered) and populates a fresh T.