Package jodd.typeconverter
Class TypeConverterManager
- java.lang.Object
-
- jodd.typeconverter.TypeConverterManager
-
public class TypeConverterManager extends java.lang.ObjectProvides dynamic object conversion to a type. Contains a map of registered converters. User may add new converters.
-
-
Constructor Summary
Constructors Constructor Description TypeConverterManager()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <C extends java.util.Collection<T>,T>
CconvertToCollection(java.lang.Object value, java.lang.Class<? extends java.util.Collection> destinationType, java.lang.Class<T> componentType)Special case ofconvertType(Object, Class)when target is collection and when component type is known.<T> TconvertType(java.lang.Object value, java.lang.Class<T> destinationType)Converts an object to destination type.static TypeConverterManagerget()Returns default implementation.<T> TypeConverter<T>lookup(java.lang.Class<T> type)Retrieves converter for provided type.<T> voidregister(java.lang.Class<T> type, TypeConverter<T> typeConverter)Registers a converter for specified type.voidregisterDefaults()Registers default set of converters.voidunregister(java.lang.Class type)Un-registers converter for given type.
-
-
-
Method Detail
-
get
public static TypeConverterManager get()
Returns default implementation.
-
registerDefaults
public void registerDefaults()
Registers default set of converters.
-
register
public <T> void register(java.lang.Class<T> type, TypeConverter<T> typeConverter)Registers a converter for specified type. User must register converter for all super-classes as well.- Parameters:
type- class that converter is fortypeConverter- converter for provided class
-
unregister
public void unregister(java.lang.Class type)
Un-registers converter for given type.
-
lookup
public <T> TypeConverter<T> lookup(java.lang.Class<T> type)
Retrieves converter for provided type. Only registered types are matched, therefore subclasses must be also registered.- Returns:
- founded converter or
null
-
convertType
public <T> T convertType(java.lang.Object value, java.lang.Class<T> destinationType)Converts an object to destination type. If type is registered, it'sTypeConverterwill be used. If not, it scans of destination is an array or enum, as those two cases are handled in a special way.If destination type is one of common types, consider using
Converterinstead for somewhat faster approach (no lookup).
-
convertToCollection
public <C extends java.util.Collection<T>,T> C convertToCollection(java.lang.Object value, java.lang.Class<? extends java.util.Collection> destinationType, java.lang.Class<T> componentType)Special case ofconvertType(Object, Class)when target is collection and when component type is known.
-
-