Class MorpherRegistry
java.lang.Object
net.sf.ezmorph.MorpherRegistry
- All Implemented Interfaces:
Serializable
Convenient class that manages Morphers.
A MorpherRehistry manages a group of Morphers. A Morpher will always be associated with a target class, it is possible to have several Morphers registered for a target class, if this is the case, the first Morpher will be used when performing a conversion and no specific Morpher is selected in advance.
A MorpherRehistry manages a group of Morphers. A Morpher will always be associated with a target class, it is possible to have several Morphers registered for a target class, if this is the case, the first Morpher will be used when performing a conversion and no specific Morpher is selected in advance.
MorphUtils may be used to register standard Morphers for primitive
types and primitive wrappers, as well as arrays of those types.- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()Deregisters all morphers.voidDeregister all Morphers of a type.voidderegisterMorpher(Morpher morpher) Deregister the specified Morpher.
The registry will remove the targetClassfrom the morphers Map if it has no other registered morphers.getMorpherFor(Class clazz) Returns a morpher forclazz.
If several morphers are found for that class, it returns the first.Morpher[]getMorphersFor(Class clazz) Returns all morphers forclazz.
If no Morphers are found it will return an array containing the IdentityObjectMorpher.Morphs and object to the specified target class.
This method uses reflection to invoke primitive Morphers and Morphers that do not implement ObjectMorpher.voidregisterMorpher(Morpher morpher) Register a Morpher for a targetClass.
The target class is the class this Morpher morphs to.voidregisterMorpher(Morpher morpher, boolean override) Register a Morpher for a targetClass.
The target class is the class this Morpher morphs to.
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
morphers
-
-
Constructor Details
-
MorpherRegistry
public MorpherRegistry()
-
-
Method Details
-
clear
public void clear()Deregisters all morphers. -
clear
Deregister all Morphers of a type.- Parameters:
class- the target type the Morphers morph to
-
deregisterMorpher
Deregister the specified Morpher.
The registry will remove the targetClassfrom the morphers Map if it has no other registered morphers.- Parameters:
morpher- the target Morpher to remove
-
getMorpherFor
-
getMorphersFor
-
morph
Morphs and object to the specified target class.
This method uses reflection to invoke primitive Morphers and Morphers that do not implement ObjectMorpher.- Parameters:
target- the target class to morph tovalue- the value to morph- Returns:
- an instance of the target class if a suitable Morpher was found
- Throws:
MorphException- if an error occurs during the conversion
-
registerMorpher
Register a Morpher for a targetClass.
The target class is the class this Morpher morphs to. If there are another morphers registered to that class, it will be appended to a List.- Parameters:
morpher- a Morpher to register. The methodmorphsTo()is used to associate the Morpher to a target Class
-
registerMorpher
Register a Morpher for a targetClass.
The target class is the class this Morpher morphs to. If there are another morphers registered to that class, it will be appended to a List.- Parameters:
morpher- a Morpher to register. The methodmorphsTo()is used to associate the Morpher to a target Classoverride- if registering teh Morpher should override all previously registered morphers for the target type
-