Class BeanMorpher

java.lang.Object
net.sf.ezmorph.bean.BeanMorpher
All Implemented Interfaces:
Morpher, ObjectMorpher

public final class BeanMorpher extends Object implements ObjectMorpher
Converts a JavaBean into another JavaBean or DynaBean.
This Morpher will try to match every property from the target JavaBean's class to the properties of the source JavaBean. If any target property differs in type from the source property, it will try to morph it. If a Morpher is not found for that type, the conversion will be aborted with a MorphException; this may be changed by setting the Morpher to be lenient, in that way it will ignore the property (the resulting value will be null).
Author:
Andres Almiray aalmiray@users.sourceforge.net
  • Constructor Details

    • BeanMorpher

      public BeanMorpher(Class beanClass, MorpherRegistry morpherRegistry)
      Parameters:
      beanClass - the target class to morph to
      morpherRegistry - a registry of morphers
    • BeanMorpher

      public BeanMorpher(Class beanClass, MorpherRegistry morpherRegistry, boolean lenient)
      Parameters:
      beanClass - the target class to morph to
      morpherRegistry - a registry of morphers
      lenient - if an exception should be raised if no morpher is found for a target property
  • Method Details

    • morph

      public Object morph(Object sourceBean)
      Description copied from interface: ObjectMorpher
      Morphs the input object into an output object of the supported type.
      Specified by:
      morph in interface ObjectMorpher
      Parameters:
      sourceBean - The input value to be morphed
    • morphsTo

      public Class morphsTo()
      Description copied from interface: Morpher
      Returns the target Class for conversion.
      Specified by:
      morphsTo in interface Morpher
      Returns:
      the target Class for conversion.
    • supports

      public boolean supports(Class clazz)
      Description copied from interface: Morpher
      Returns true if the Morpher supports conversion from this Class.
      Specified by:
      supports in interface Morpher
      Parameters:
      clazz - the source Class
      Returns:
      true if clazz is supported by this morpher, false otherwise.