Class DefaultDomConverter

java.lang.Object
com.bc.ceres.binding.dom.DefaultDomConverter
All Implemented Interfaces:
DomConverter

public class DefaultDomConverter extends Object implements DomConverter
  • Constructor Details

  • Method Details

    • getValueType

      public Class<?> getValueType()
      Gets the value type, which may be abstract.
      Specified by:
      getValueType in interface DomConverter
      Returns:
      The value type.
    • getPropertyDescriptorFactory

      public PropertyDescriptorFactory getPropertyDescriptorFactory()
    • getPropertySetDescriptor

      public PropertySetDescriptor getPropertySetDescriptor()
    • convertValueToDom

      public void convertValueToDom(Object value, DomElement parentElement) throws ConversionException
      Converts a (complex) value of the type returned by DomConverter.getValueType() to its DOM representation which may be further converted to XML. The given value can be safely cast to the type returned by DomConverter.getValueType().
      Specified by:
      convertValueToDom in interface DomConverter
      Parameters:
      value - The value to be converted to the DOM. Never null.
      parentElement - The parent DOM element, which receives the DOM representation of the value.
      Throws:
      ConversionException - If the conversion fails (e.g. not implemented).
    • convertDomToValue

      public Object convertDomToValue(DomElement parentElement, Object value) throws ConversionException, ValidationException
      Converts a DOM to a (complex) value of the type returned by DomConverter.getValueType().
      Specified by:
      convertDomToValue in interface DomConverter
      Parameters:
      parentElement - The parent DOM element.
      value - The value which receives the DOM representation of the value or null. If value is null, the method is responsible for the creation of a new instance and its configuration using the DOM.
      Returns:
      The converted value, never null.
      Throws:
      ConversionException - If the conversion fails.
      ValidationException - If the converted value is invalid.
    • createValueInstance

      protected Object createValueInstance(Class<?> type)
    • getPropertySet

      protected PropertySet getPropertySet(Object value)
    • createChildDomConverter

      protected DomConverter createChildDomConverter(Class<?> valueType, PropertyDescriptorFactory propertyDescriptorFactory, PropertySetDescriptor propertySetDescriptor)
      Called to create a new DOM converter for a (child) property. May be overridden by subclasses. The default implementation returns an instance of this class.
      Parameters:
      valueType - The value type
      propertyDescriptorFactory - The property descriptor factory.
      propertySetDescriptor - The property set descriptor.
      Returns:
      a "local" DOM converter or null.
    • findChildDomConverter

      protected DomConverter findChildDomConverter(PropertyDescriptor descriptor)
      Called to find a "local" DOM converter for a (child) property. May be overridden by subclasses. The default implementation returns null.
      Parameters:
      descriptor - The property descriptor
      Returns:
      a "local" DOM converter or null.