Class DomXmlDataFormatMapper

java.lang.Object
org.camunda.spin.impl.xml.dom.format.DomXmlDataFormatMapper
All Implemented Interfaces:
DataFormatMapper

public class DomXmlDataFormatMapper extends Object implements DataFormatMapper
DataFormatMapper using JAXB for mapping Java Objects to XML and vice-versa.
Author:
Stefan Hentschel., Daniel Meyer
  • Field Details

  • Constructor Details

    • DomXmlDataFormatMapper

      public DomXmlDataFormatMapper(DomXmlDataFormat format)
  • Method Details

    • canMap

      public boolean canMap(Object parameter)
      Description copied from interface: DataFormatMapper
      Returns true if this mapper can map the provided Java Object.
      Specified by:
      canMap in interface DataFormatMapper
      Parameters:
      parameter - the java object to check
      Returns:
      true if this object can be mapped.
    • getCanonicalTypeName

      public String getCanonicalTypeName(Object object)
      Specified by:
      getCanonicalTypeName in interface DataFormatMapper
    • mapJavaToInternal

      public Object mapJavaToInternal(Object parameter)
      Description copied from interface: DataFormatMapper
      Maps a java object to a data format's internal data representation.
      Specified by:
      mapJavaToInternal in interface DataFormatMapper
      Parameters:
      parameter - object that is mapped
      Returns:
      the data format's internal representation of that object
    • marshalRootElement

      protected void marshalRootElement(Object parameter, javax.xml.bind.Marshaller marshaller, DOMResult domResult) throws javax.xml.bind.JAXBException
      Throws:
      javax.xml.bind.JAXBException
    • marshalNonRootElement

      protected void marshalNonRootElement(Object parameter, javax.xml.bind.Marshaller marshaller, DOMResult domResult) throws javax.xml.bind.JAXBException
      Throws:
      javax.xml.bind.JAXBException
    • mapInternalToJava

      public <T> T mapInternalToJava(Object parameter, Class<T> javaClass)
      Description copied from interface: DataFormatMapper
      Maps the internal representation of a data format to a java object of the desired class. The desired class is not validated prior to the mapping.
      Specified by:
      mapInternalToJava in interface DataFormatMapper
      Parameters:
      parameter - the object to be mapped
      javaClass - the class to map the object to
      Returns:
      a java object of the specified class that was populated with the input parameter
    • mapInternalToJava

      public <T> T mapInternalToJava(Object parameter, Class<T> javaClass, DeserializationTypeValidator validator)
      Description copied from interface: DataFormatMapper
      Maps the internal representation of a data format to a java object of the desired class. The desired class is validated by the validator prior to the mapping.
      Specified by:
      mapInternalToJava in interface DataFormatMapper
      Parameters:
      parameter - the object to be mapped
      javaClass - the class to map the object to
      validator - the validator for the target class
      Returns:
      a java object of the specified class that was populated with the input parameter
    • validateType

      protected void validateType(Class<?> type, DeserializationTypeValidator validator)
    • mapInternalToJava

      public <T> T mapInternalToJava(Object parameter, String classIdentifier)
      Description copied from interface: DataFormatMapper
      Maps the internal representation of a data format to a java object of the desired class. The type identifier is given in a data format specific format. Its interpretation is data-format-specific. For example, it can be used to express generic type information that cannot be expressed by a Class object. The desired class is not validated prior to the mapping.
      Specified by:
      mapInternalToJava in interface DataFormatMapper
      Parameters:
      parameter - the object to be mapped
      classIdentifier - a data-format-specific type identifier that describes the class to map to
      Returns:
      a java object of the specified type that was populated with the input parameter
    • mapInternalToJava

      public <T> T mapInternalToJava(Object parameter, String classIdentifier, DeserializationTypeValidator validator)
      Description copied from interface: DataFormatMapper
      Maps the internal representation of a data format to a java object of the desired class. The type identifier is given in a data format specific format. Its interpretation is data-format-specific. For example, it can be used to express generic type information that cannot be expressed by a Class object. The desired class is validated by the validator prior to the mapping.
      Specified by:
      mapInternalToJava in interface DataFormatMapper
      Parameters:
      parameter - the object to be mapped
      classIdentifier - a data-format-specific type identifier that describes the class to map to
      validator - the validator for the target class
      Returns:
      a java object of the specified type that was populated with the input parameter
    • getMarshaller

      protected javax.xml.bind.Marshaller getMarshaller(Class<?> parameter) throws javax.xml.bind.JAXBException
      Throws:
      javax.xml.bind.JAXBException
    • getUnmarshaller

      protected javax.xml.bind.Unmarshaller getUnmarshaller(Class<?> parameter) throws javax.xml.bind.JAXBException
      Throws:
      javax.xml.bind.JAXBException