net.sf.ezmorph.bean
Class BeanMorpher

java.lang.Object
  extended by 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

Constructor Summary
BeanMorpher(Class beanClass, MorpherRegistry morpherRegistry)
           
BeanMorpher(Class beanClass, MorpherRegistry morpherRegistry, boolean lenient)
           
 
Method Summary
 Object morph(Object sourceBean)
          Morphs the input object into an output object of the supported type.
 Class morphsTo()
          Returns the target Class for conversion.
 boolean supports(Class clazz)
          Returns true if the Morpher supports conversion from this Class.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

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 Detail

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.


Copyright © 2006-2008. All Rights Reserved.