|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.sf.mmm.util.value.impl.ComposedValueConverterImpl.ComposedTargetTypeConverter<TARGET>
TARGET - is the generic target-type.protected class ComposedValueConverterImpl.ComposedTargetTypeConverter<TARGET>
This inner class is a composed converter for all ValueConverters
with the same target-type.
| Field Summary | |
|---|---|
private Map<Class<?>,ValueConverter<?,TARGET>> |
sourceClass2converterMap
|
private Class<TARGET> |
targetType
|
| Constructor Summary | |
|---|---|
ComposedValueConverterImpl.ComposedTargetTypeConverter(Class<TARGET> targetType)
The constructor. |
|
| Method Summary | |
|---|---|
ValueConverter<?,TARGET> |
addConverter(ValueConverter<?,TARGET> converter)
This method registers the given converter to this composed
converter. |
TARGET |
convert(Object value,
Object valueSource,
Class<? extends TARGET> targetClass)
This method converts the given pojo to the
<TARGET>-type. |
TARGET |
convert(Object value,
Object valueSource,
GenericType<? extends TARGET> genericTargetType)
This method converts the given pojo to the
<TARGET>-type. |
protected TARGET |
convertRecursive(Object value,
Object valueSource,
GenericType<? extends TARGET> genericTargetType,
Class<?> sourceClass)
This method performs the conversion recursive. |
Class<Object> |
getSourceType()
This the type of the value accepted by this converter. |
Class<TARGET> |
getTargetType()
Is the guaranteed return-type of the conversion. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private final Class<TARGET> targetType
getTargetType()private final Map<Class<?>,ValueConverter<?,TARGET>> sourceClass2converterMap
addConverter(ValueConverter)| Constructor Detail |
|---|
public ComposedValueConverterImpl.ComposedTargetTypeConverter(Class<TARGET> targetType)
targetType - is the target-type of this
converter.| Method Detail |
|---|
public Class<Object> getSourceType()
Object
if you want to accept any value. A very common source-type is String.
getSourceType in interface ValueConverter<Object,TARGET>public Class<TARGET> getTargetType()
conversion. This information
is used externally to choose the most specific ValueConverter that
is appropriate for the conversion.Object as
target-type while a specific converter may have
Collection as target-type. Now
if an object (compliant with the source-type)
needs to be converted to a Collection or
List, the specific converter is used while for other
objects the generic converter is chosen.target-type is often more
general than the actual returned result. So a ValueConverter that converts a
comma-separated String to an ArrayList will
typically declare List as target-type.
getTargetType in interface ValueConverter<Object,TARGET>public ValueConverter<?,TARGET> addConverter(ValueConverter<?,TARGET> converter)
converter to this composed
converter.
converter - is the converter to add.
source-type that has been
replaced by converter or null if no
converter has been replaced.
public TARGET convert(Object value,
Object valueSource,
Class<? extends TARGET> targetClass)
throws ValueException
pojo to the
<TARGET>-type.
convert in interface SimpleValueConverter<Object,TARGET>convert in interface ValueConverter<Object,TARGET>value - is the value to convert.valueSource - describes the source of the value. This may be the
filename where the value was read from, an XPath where the value was
located in an XML document, etc. It is used in exceptions thrown if
something goes wrong. This will help to find the problem easier.targetClass - is the type to convert the value to.
value or null if the
conversion is NOT possible. The returned value has to be an
instance of the given
targetType.
ValueException - if the conversion failed (e.g. the given
value is illegal for the given
targetClass).ValueConverter.convert(Object, Object, GenericType)
public TARGET convert(Object value,
Object valueSource,
GenericType<? extends TARGET> genericTargetType)
pojo to the
<TARGET>-type.
convert in interface ValueConverter<Object,TARGET>value - is the value to convert.valueSource - describes the source of the value. This may be the
filename where the value was read from, an XPath where the value was
located in an XML document, etc. It is used in exceptions thrown if
something goes wrong. This will help to find the problem easier.genericTargetType - is the GenericType to convert the
value to. It is potentially generic and therefore
contains more detailed information than a Class. E.g. the
targetType could be
java.util.List<Long>. This could help e.g. if the
value is a string like "2, 47, 4252525".
value or null if the
conversion is NOT possible. The returned value has to be an
instance of the given
targetType.
protected TARGET convertRecursive(Object value,
Object valueSource,
GenericType<? extends TARGET> genericTargetType,
Class<?> sourceClass)
conversion recursive.
value - is the value to convert.valueSource - describes the source of the value. This may be the
filename where the value was read from, an XPath where the value
was located in an XML document, etc. It is used in exceptions
thrown if something goes wrong. This will help to find the problem
easier.genericTargetType - is the GenericType to convert the
value to.sourceClass - is the current source-type to try.
value or null if the
conversion is NOT possible. The returned value has to be an
instance of the given
targetType.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||